1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
{
lib,
buildPythonPackage,
fetchPypi,
pythonOlder,
# build-system
setuptools,
# dependencies
astroid,
anyascii,
jinja2,
pyyaml,
sphinx,
# tests
beautifulsoup4,
mock,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "sphinx-autoapi";
version = "3.1.2";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
pname = "sphinx_autoapi";
inherit version;
hash = "sha256-+l6xiPZ6454ZsufSUnx10GTg8Lmsf3ejVY7CbMtzHCY=";
};
build-system = [ setuptools ];
dependencies = [
anyascii
astroid
jinja2
pyyaml
sphinx
];
nativeCheckInputs = [
beautifulsoup4
mock
pytestCheckHook
];
disabledTests = [
# failing typing assertions
"test_integration"
"test_annotations"
# sphinx.errors.SphinxWarning: cannot cache unpickable configuration value: 'autoapi_prepare_jinja_env' (because it contains a function, class, or module object)
"test_custom_jinja_filters"
];
pythonImportsCheck = [ "autoapi" ];
meta = with lib; {
homepage = "https://github.com/readthedocs/sphinx-autoapi";
changelog = "https://github.com/readthedocs/sphinx-autoapi/blob/v${version}/CHANGELOG.rst";
description = "Provides 'autodoc' style documentation";
longDescription = ''
Sphinx AutoAPI provides 'autodoc' style documentation for
multiple programming languages without needing to load, run, or
import the project being documented.
'';
license = licenses.mit;
maintainers = with maintainers; [ karolchmist ];
};
}
|