@@ -0,0 +1,49 @@
1+{ lib
2+, buildPythonPackage
3+, fetchFromGitHub
4+, importlib-metadata
5+, markdown-it-py
6+, poetry-core
7+, pytestCheckHook
8+, pythonOlder
9+, typing-extensions
10+}:
11+
12+buildPythonPackage rec {
13+ pname = "mdformat";
14+ version = "0.7.6";
15+ format = "pyproject";
16+ disabled = pythonOlder "3.6";
17+
18+ src = fetchFromGitHub {
19+ owner = "executablebooks";
20+ repo = pname;
21+ rev = version;
22+ sha256 = "0mnbi3vp7zgllpcpf6vrjw9y6jas95shphn99ayr8b8wgxsaqkif";
23+ };
24+
25+ nativeBuildInputs = [
26+ poetry-core
27+ ];
28+
29+ propagatedBuildInputs = [
30+ markdown-it-py
31+ ] ++ lib.optionals (pythonOlder "3.10") [
32+ importlib-metadata
33+ ] ++ lib.optionals (pythonOlder "3.7") [
34+ typing-extensions
35+ ];
36+
37+ checkInputs = [
38+ pytestCheckHook
39+ ];
40+
41+ pythonImportsCheck = [ "mdformat" ];
42+
43+ meta = with lib; {
44+ description = "CommonMark compliant Markdown formatter";
45+ homepage = "https://mdformat.rtfd.io/";
46+ license = with licenses; [ mit ];
47+ maintainers = with maintainers; [ fab ];
48+ };
49+}