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