nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, importlib-metadata
5, markdown-it-py
6, poetry-core
7, pytestCheckHook
8, pythonOlder
9, tomli
10, typing-extensions
11}:
12
13buildPythonPackage rec {
14 pname = "mdformat";
15 version = "0.7.14";
16 format = "pyproject";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "executablebooks";
22 repo = pname;
23 rev = version;
24 sha256 = "sha256-bImBW6r8g/4MQ9yNrBBhk7AGqKRXFyAew6HHEmqelxw=";
25 };
26
27 nativeBuildInputs = [
28 poetry-core
29 ];
30
31 propagatedBuildInputs = [
32 markdown-it-py
33 tomli
34 ] ++ lib.optionals (pythonOlder "3.10") [
35 importlib-metadata
36 ] ++ lib.optionals (pythonOlder "3.7") [
37 typing-extensions
38 ];
39
40 checkInputs = [
41 pytestCheckHook
42 ];
43
44 disabledTests = [
45 # AssertionError
46 "test_no_codeblock_trailing_newline"
47 # Issue with upper/lower case
48 "default_style.md-options0"
49 ];
50
51 pythonImportsCheck = [
52 "mdformat"
53 ];
54
55 meta = with lib; {
56 description = "CommonMark compliant Markdown formatter";
57 homepage = "https://mdformat.rtfd.io/";
58 license = with licenses; [ mit ];
59 maintainers = with maintainers; [ fab ];
60 };
61}