1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, poetry-core
5, pytestCheckHook
6, pythonOlder
7, setuptools
8}:
9
10buildPythonPackage rec {
11 pname = "cerberus";
12 version = "1.3.5";
13 format = "pyproject";
14
15 disabled = pythonOlder "3.9";
16
17 src = fetchFromGitHub {
18 owner = "pyeve";
19 repo = "cerberus";
20 rev = "refs/tags/${version}";
21 hash = "sha256-4sVNM4zHc9nsrntmJVdE9nm47CSF0UOJPPI9z3Z2YDc=";
22 };
23
24 propagatedBuildInputs = [
25 poetry-core
26 setuptools
27 ];
28
29 nativeCheckInputs = [
30 pytestCheckHook
31 ];
32
33 pythonImportsCheck = [
34 "cerberus"
35 ];
36
37 disabledTestPaths = [
38 # We don't care about benchmarks
39 "cerberus/benchmarks/"
40 ];
41
42 meta = with lib; {
43 description = "Schema and data validation tool for Python dictionaries";
44 homepage = "http://python-cerberus.org/";
45 changelog = "https://github.com/pyeve/cerberus/blob/${version}/CHANGES.rst";
46 license = licenses.mit;
47 maintainers = with maintainers; [ fab ];
48 };
49}