1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 alabaster,
7 attrs,
8 babel,
9 certifi,
10 cffi,
11 chardet,
12 colorama,
13 coverage,
14 docutils,
15 filelock,
16 html5lib,
17 idna,
18 imagesize,
19 isort,
20 jinja2,
21 jsonschema,
22 lazy-object-proxy,
23 markupsafe,
24 mccabe,
25 more-itertools,
26 packaging,
27 pkginfo,
28 pluggy,
29 py,
30 py-cpuinfo,
31 pycparser,
32 pyfakefs,
33 pygments,
34 pyparsing,
35 pytest,
36 pytest-benchmark,
37 pytest-cov-stub,
38 pytz,
39 readme-renderer,
40 requests,
41 requests-toolbelt,
42 restview,
43 six,
44 snowballstemmer,
45 sphinx,
46 sphinx-rtd-theme,
47 sphinx-tabs,
48 sphinxcontrib-websupport,
49 toml,
50 pytestCheckHook,
51 tox,
52 tqdm,
53 twine,
54 urllib3,
55 virtualenv,
56 webencodings,
57 wrapt,
58 pythonOlder,
59}:
60
61buildPythonPackage rec {
62 pname = "validator-collection";
63 version = "1.5.0";
64 pyproject = true;
65
66 disabled = pythonOlder "3.9";
67
68 src = fetchFromGitHub {
69 owner = "insightindustry";
70 repo = "validator-collection";
71 tag = "v.${version}";
72 hash = "sha256-CDPfIkZZRpl1rAzNpLKJfaBEGWUl71coic2jOHIgi6o=";
73 };
74
75 build-system = [ setuptools ];
76
77 dependencies = [
78 alabaster
79 attrs
80 babel
81 certifi
82 cffi
83 chardet
84 colorama
85 coverage
86 docutils
87 filelock
88 html5lib
89 idna
90 imagesize
91 isort
92 jinja2
93 jsonschema
94 lazy-object-proxy
95 markupsafe
96 mccabe
97 more-itertools
98 packaging
99 pkginfo
100 pluggy
101 py
102 py-cpuinfo
103 pycparser
104 pyfakefs
105 pygments
106 pyparsing
107 pytest
108 pytest-benchmark
109 pytest-cov-stub
110 pytz
111 readme-renderer
112 requests
113 requests-toolbelt
114 restview
115 six
116 snowballstemmer
117 sphinx
118 sphinx-rtd-theme
119 sphinx-tabs
120 sphinxcontrib-websupport
121 toml
122 tox
123 tqdm
124 twine
125 urllib3
126 virtualenv
127 webencodings
128 wrapt
129 ];
130
131 nativeCheckInputs = [ pytestCheckHook ];
132
133 pythonImportsCheck = [ "validator_collection" ];
134
135 disabledTests = [
136 # Issues with fake filesystem /var/data
137 "test_writeable"
138 "test_executable"
139 "test_readable"
140 "test_is_readable"
141 ];
142
143 meta = with lib; {
144 description = "Python library of 60+ commonly-used validator functions";
145 homepage = "https://github.com/insightindustry/validator-collection/";
146 changelog = "https://github.com/insightindustry/validator-collection/blob/${src.rev}/CHANGES.rst";
147 license = licenses.mit;
148 maintainers = with maintainers; [ fab ];
149 };
150}