1{ lib
2, boto3
3, buildPythonPackage
4, fetchFromGitHub
5, ftfy
6, mailchecker
7, openpyxl
8, orjson
9, phonenumbers
10, pytestCheckHook
11, python-dateutil
12, python-decouple
13, python-fsutil
14, python-slugify
15, pythonOlder
16, pythonRelaxDepsHook
17, pyyaml
18, requests
19, six
20, toml
21, xlrd
22, xmltodict
23}:
24
25buildPythonPackage rec {
26 pname = "python-benedict";
27 version = "0.32.1";
28 format = "setuptools";
29
30 disabled = pythonOlder "3.7";
31
32 src = fetchFromGitHub {
33 owner = "fabiocaccamo";
34 repo = pname;
35 rev = "refs/tags/${version}";
36 hash = "sha256-q9EIOMmUcttL1ohxQD+SkZTxKv8PwdN29+ez2xB7rvM=";
37 };
38
39 nativeBuildInputs = [
40 pythonRelaxDepsHook
41 ];
42
43 pythonRelaxDeps = [
44 "boto3"
45 ];
46
47 propagatedBuildInputs = [
48 boto3
49 ftfy
50 mailchecker
51 openpyxl
52 phonenumbers
53 python-dateutil
54 python-fsutil
55 python-slugify
56 pyyaml
57 requests
58 toml
59 xlrd
60 xmltodict
61 ];
62
63 nativeCheckInputs = [
64 orjson
65 pytestCheckHook
66 python-decouple
67 six
68 ];
69
70 disabledTests = [
71 # Tests require network access
72 "test_from_base64_with_valid_url_valid_content"
73 "test_from_json_with_valid_url_valid_content"
74 "test_from_pickle_with_valid_url_valid_content"
75 "test_from_plist_with_valid_url_valid_content"
76 "test_from_query_string_with_valid_url_valid_content"
77 "test_from_toml_with_valid_url_valid_content"
78 "test_from_xls_with_valid_url_valid_content"
79 "test_from_xml_with_valid_url_valid_content"
80 "test_from_yaml_with_valid_url_valid_content"
81 ];
82
83 pythonImportsCheck = [
84 "benedict"
85 ];
86
87 meta = with lib; {
88 description = "Module with keylist/keypath support";
89 homepage = "https://github.com/fabiocaccamo/python-benedict";
90 changelog = "https://github.com/fabiocaccamo/python-benedict/blob/${version}/CHANGELOG.md";
91 license = licenses.mit;
92 maintainers = with maintainers; [ fab ];
93 };
94}