1{
2 lib,
3 beautifulsoup4,
4 buildPythonPackage,
5 fetchFromGitHub,
6 griffe,
7 inline-snapshot,
8 mkdocs-autorefs,
9 mkdocs-material,
10 mkdocstrings,
11 pdm-backend,
12 pytestCheckHook,
13 pythonOlder,
14}:
15
16buildPythonPackage rec {
17 pname = "mkdocstrings-python";
18 version = "1.13.0";
19 pyproject = true;
20
21 disabled = pythonOlder "3.8";
22
23 src = fetchFromGitHub {
24 owner = "mkdocstrings";
25 repo = "python";
26 tag = version;
27 hash = "sha256-NgVCKV3AWk4pRT7/+6YGXmKSZETL4ZOWDWGeb/qjdng=";
28 };
29
30 build-system = [ pdm-backend ];
31
32 dependencies = [
33 griffe
34 mkdocs-autorefs
35 mkdocstrings
36 ];
37
38 nativeCheckInputs = [
39 beautifulsoup4
40 inline-snapshot
41 mkdocs-material
42 pytestCheckHook
43 ];
44
45 pythonImportsCheck = [ "mkdocstrings_handlers" ];
46
47 disabledTests = [
48 # Tests fails with AssertionError
49 "test_windows_root_conversion"
50 # TypeError
51 "test_format_code"
52 ];
53
54 meta = with lib; {
55 description = "Python handler for mkdocstrings";
56 homepage = "https://github.com/mkdocstrings/python";
57 changelog = "https://github.com/mkdocstrings/python/blob/${version}/CHANGELOG.md";
58 license = licenses.isc;
59 maintainers = with maintainers; [ fab ];
60 };
61}