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}:
14
15buildPythonPackage rec {
16 pname = "mkdocstrings-python";
17 version = "1.16.12";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "mkdocstrings";
22 repo = "python";
23 tag = version;
24 hash = "sha256-NL5gn8HgT0hvIlUDs//sErAaSVXvxLDJGT7nZX65ZVU=";
25 };
26
27 build-system = [ pdm-backend ];
28
29 dependencies = [
30 griffe
31 mkdocs-autorefs
32 mkdocstrings
33 ];
34
35 nativeCheckInputs = [
36 beautifulsoup4
37 inline-snapshot
38 mkdocs-material
39 pytestCheckHook
40 ];
41
42 pythonImportsCheck = [ "mkdocstrings_handlers" ];
43
44 disabledTests = [
45 # Tests fails with AssertionError
46 "test_windows_root_conversion"
47 # TypeError
48 "test_format_code"
49 ];
50
51 meta = {
52 description = "Python handler for mkdocstrings";
53 homepage = "https://github.com/mkdocstrings/python";
54 changelog = "https://github.com/mkdocstrings/python/blob/${src.tag}/CHANGELOG.md";
55 license = lib.licenses.isc;
56 maintainers = with lib.maintainers; [ fab ];
57 };
58}