1{
2 lib,
3 buildPythonPackage,
4 defusedxml,
5 fetchFromGitHub,
6 lxml,
7 poetry-core,
8 pytestCheckHook,
9 pythonOlder,
10 xmldiff,
11}:
12
13buildPythonPackage rec {
14 pname = "py-serializable";
15 version = "1.0.3";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "madpah";
22 repo = "serializable";
23 rev = "refs/tags/v${version}";
24 hash = "sha256-oVjb7/9RWvQd5L6xQBrspfblPzMaRvnZHDuojTuq+zE=";
25 };
26
27 build-system = [ poetry-core ];
28
29 dependencies = [ defusedxml ];
30
31 nativeCheckInputs = [
32 lxml
33 pytestCheckHook
34 xmldiff
35 ];
36
37 pythonImportsCheck = [ "serializable" ];
38
39 disabledTests = [
40 # AssertionError: '<ns0[155 chars]itle>The Phoenix
41 "test_serializable_no_defaultNS"
42 "test_serializable_with_defaultNS"
43 ];
44
45 meta = with lib; {
46 description = "Library to aid with serialisation and deserialisation to/from JSON and XML";
47 homepage = "https://github.com/madpah/serializable";
48 changelog = "https://github.com/madpah/serializable/blob/v${version}/CHANGELOG.md";
49 license = licenses.asl20;
50 maintainers = with maintainers; [ fab ];
51 };
52}