1{
2 lib,
3 aliyun-python-sdk-core,
4 aliyun-python-sdk-kms,
5 aliyun-python-sdk-sts,
6 buildPythonPackage,
7 crcmod,
8 fetchFromGitHub,
9 mock,
10 pycryptodome,
11 pytestCheckHook,
12 pythonOlder,
13 pythonRelaxDepsHook,
14 requests,
15 six,
16}:
17
18buildPythonPackage rec {
19 pname = "oss2";
20 version = "2.18.3";
21 format = "setuptools";
22
23 disabled = pythonOlder "3.7";
24
25 src = fetchFromGitHub {
26 owner = "aliyun";
27 repo = "aliyun-oss-python-sdk";
28 rev = "refs/tags/${version}";
29 hash = "sha256-jDSXPVyy8XvPgsGZXsdfavFPptq28pCwr9C63OZvNrY=";
30 };
31
32 nativeBuildInputs = [ pythonRelaxDepsHook ];
33
34 propagatedBuildInputs = [
35 requests
36 crcmod
37 pycryptodome
38 aliyun-python-sdk-kms
39 aliyun-python-sdk-core
40 six
41 ];
42
43 nativeCheckInputs = [
44 aliyun-python-sdk-sts
45 mock
46 pytestCheckHook
47 ];
48
49 pythonRelaxDeps = true;
50
51 pythonImportsCheck = [ "oss2" ];
52
53 disabledTestPaths = [
54 # Tests require network access
55 "tests/test_api_base.py"
56 "tests/test_async_fetch_task.py"
57 "tests/test_bucket_access_monitor.py"
58 "tests/test_bucket_callback_policy.py"
59 "tests/test_bucket_cname.py"
60 "tests/test_bucket_describe_regions.py"
61 "tests/test_bucket_inventory.py"
62 "tests/test_bucket_meta_query.py"
63 "tests/test_bucket_replication.py"
64 "tests/test_bucket_resource_group.py"
65 "tests/test_bucket_style.py"
66 "tests/test_bucket_transfer_acceleration.py"
67 "tests/test_bucket_versioning.py"
68 "tests/test_bucket_worm.py"
69 "tests/test_bucket.py"
70 "tests/test_chinese.py"
71 "tests/test_crc64_combine.py"
72 "tests/test_credentials_provider.py"
73 "tests/test_crypto_multipart.py"
74 "tests/test_crypto_object.py"
75 "tests/test_crypto.py"
76 "tests/test_download.py"
77 "tests/test_exception_ec.py"
78 "tests/test_headers.py"
79 "tests/test_image.py"
80 "tests/test_init.py"
81 "tests/test_iterator.py"
82 "tests/test_lifecycle_versioning.py"
83 "tests/test_list_objects_v2.py"
84 "tests/test_live_channel.py"
85 "tests/test_multipart.py"
86 "tests/test_object_request_payment_versions.py"
87 "tests/test_object_request_payment.py"
88 "tests/test_object_versioning.py"
89 "tests/test_object.py"
90 "tests/test_proxy.py"
91 "tests/test_put_object_chunked.py"
92 "tests/test_qos_info.py"
93 "tests/test_request_payment.py"
94 "tests/test_select_csv_object.py"
95 "tests/test_select_json_object.py"
96 "tests/test_server_side_encryotion.py"
97 "tests/test_sign.py"
98 "tests/test_traffic_limit.py"
99 "tests/test_upload.py"
100 "tests/test_utils.py"
101 "tests/test_website.py"
102 ];
103
104 disabledTests = [
105 "test_crypto_get_compact_deprecated_kms"
106 # RuntimeError
107 "test_crypto_put"
108 # Tests require network access
109 "test_write_get_object_response"
110 ];
111
112 meta = with lib; {
113 description = "Alibaba Cloud OSS SDK for Python";
114 homepage = "https://github.com/aliyun/aliyun-oss-python-sdk";
115 changelog = "https://github.com/aliyun/aliyun-oss-python-sdk/releases/tag/${version}";
116 license = licenses.mit;
117 maintainers = with maintainers; [ fab ];
118 };
119}