1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 poetry-core,
7 jsonpatch,
8 jsonschema,
9 pytestCheckHook,
10 pytest-cov-stub,
11}:
12
13buildPythonPackage rec {
14 pname = "warlock";
15 version = "2.0.1";
16 format = "pyproject";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "bcwaldon";
22 repo = "warlock";
23 tag = version;
24 hash = "sha256-HOCLzFYmOL/tCXT+NO/tCZuVXVowNEPP3g33ZYg4+6Q=";
25 };
26
27 nativeBuildInputs = [ poetry-core ];
28
29 propagatedBuildInputs = [
30 jsonpatch
31 jsonschema
32 ];
33
34 nativeCheckInputs = [
35 pytestCheckHook
36 pytest-cov-stub
37 ];
38
39 disabledTests = [
40 # https://github.com/bcwaldon/warlock/issues/64
41 "test_recursive_models"
42 ];
43
44 pythonImportsCheck = [ "warlock" ];
45
46 meta = with lib; {
47 description = "Python object model built on JSON schema and JSON patch";
48 homepage = "https://github.com/bcwaldon/warlock";
49 license = licenses.asl20;
50 maintainers = [ ];
51 };
52}