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