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