qubitclient 0.0.0.1__py3-none-any.whl → 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of qubitclient might be problematic. Click here for more details.

Files changed (49) hide show
  1. qubitclient/QubitSeg.py +3 -3
  2. qubitclient/__init__.py +2 -0
  3. qubitclient/curve/curve_type.py +15 -0
  4. qubitclient/scope/scope.py +51 -0
  5. qubitclient/scope/scope_api/__init__.py +8 -0
  6. qubitclient/scope/scope_api/api/__init__.py +1 -0
  7. qubitclient/scope/scope_api/api/defined_tasks/__init__.py +1 -0
  8. qubitclient/scope/scope_api/api/defined_tasks/get_task_result_api_v1_tasks_demo_pk_get.py +155 -0
  9. qubitclient/scope/scope_api/api/defined_tasks/get_task_result_api_v1_tasks_scope_pk_get.py +155 -0
  10. qubitclient/scope/scope_api/api/defined_tasks/optpipulse_api_v1_tasks_scope_optpipulse_post.py +218 -0
  11. qubitclient/scope/scope_api/api/defined_tasks/rabi_api_v1_tasks_scope_rabi_post.py +218 -0
  12. qubitclient/scope/scope_api/api/defined_tasks/rabicos_api_v1_tasks_scope_rabicospeak_post.py +218 -0
  13. qubitclient/scope/scope_api/api/defined_tasks/s21peak_api_v1_tasks_scope_s21peak_post.py +218 -0
  14. qubitclient/scope/scope_api/api/defined_tasks/s21vflux_api_v1_tasks_scope_s21vflux_post.py +218 -0
  15. qubitclient/scope/scope_api/api/defined_tasks/singleshot_api_v1_tasks_scope_singleshot_post.py +218 -0
  16. qubitclient/scope/scope_api/api/defined_tasks/spectrum_api_v1_tasks_scope_spectrum_post.py +218 -0
  17. qubitclient/scope/scope_api/api/defined_tasks/t1fit_api_v1_tasks_scope_t1fit_post.py +218 -0
  18. qubitclient/scope/scope_api/api/defined_tasks/t1fit_api_v1_tasks_scope_t2fit_post.py +218 -0
  19. qubitclient/scope/scope_api/client.py +268 -0
  20. qubitclient/scope/scope_api/errors.py +16 -0
  21. qubitclient/scope/scope_api/models/__init__.py +27 -0
  22. qubitclient/scope/scope_api/models/body_optpipulse_api_v1_tasks_scope_optpipulse_post.py +83 -0
  23. qubitclient/scope/scope_api/models/body_rabi_api_v1_tasks_scope_rabi_post.py +83 -0
  24. qubitclient/scope/scope_api/models/body_rabicos_api_v1_tasks_scope_rabicospeak_post.py +83 -0
  25. qubitclient/scope/scope_api/models/body_s21_peak_api_v1_tasks_scope_s21_peak_post.py +83 -0
  26. qubitclient/scope/scope_api/models/body_s21_vflux_api_v1_tasks_scope_s21_vflux_post.py +83 -0
  27. qubitclient/scope/scope_api/models/body_singleshot_api_v1_tasks_scope_singleshot_post.py +83 -0
  28. qubitclient/scope/scope_api/models/body_spectrum_api_v1_tasks_scope_spectrum_post.py +83 -0
  29. qubitclient/scope/scope_api/models/body_t1_fit_api_v1_tasks_scope_t1_fit_post.py +83 -0
  30. qubitclient/scope/scope_api/models/body_t1_fit_api_v1_tasks_scope_t2_fit_post.py +83 -0
  31. qubitclient/scope/scope_api/models/http_validation_error.py +75 -0
  32. qubitclient/scope/scope_api/models/validation_error.py +88 -0
  33. qubitclient/scope/scope_api/py.typed +1 -0
  34. qubitclient/scope/scope_api/types.py +54 -0
  35. qubitclient/scope/task.py +140 -0
  36. qubitclient/scope/utils/__init__.py +0 -0
  37. qubitclient/scope/utils/data_parser.py +20 -0
  38. qubitclient/utils/data_convert.py +112 -0
  39. qubitclient/utils/data_parser.py +41 -0
  40. qubitclient/utils/request_tool.py +41 -0
  41. qubitclient/utils/result_parser.py +55 -0
  42. qubitclient-0.0.1.dist-info/METADATA +106 -0
  43. qubitclient-0.0.1.dist-info/RECORD +47 -0
  44. qubitclient-0.0.0.1.dist-info/METADATA +0 -35
  45. qubitclient-0.0.0.1.dist-info/RECORD +0 -8
  46. {qubitclient-0.0.0.1.dist-info → qubitclient-0.0.1.dist-info}/WHEEL +0 -0
  47. {qubitclient-0.0.0.1.dist-info → qubitclient-0.0.1.dist-info}/licenses/LICENSE +0 -0
  48. {qubitclient-0.0.0.1.dist-info → qubitclient-0.0.1.dist-info}/top_level.txt +0 -0
  49. {qubitclient-0.0.0.1.dist-info → qubitclient-0.0.1.dist-info}/zip-safe +0 -0
@@ -0,0 +1,41 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright (c) 2025 yaqiang.sun.
3
+ # This source code is licensed under the license found in the LICENSE file
4
+ # in the root directory of this source tree.
5
+ #########################################################################
6
+ # Author: yaqiangsun
7
+ # Created Time: 2025/04/11 17:58:29
8
+ ########################################################################
9
+
10
+ import os
11
+ import numpy as np
12
+ import cv2
13
+
14
+
15
+ def load_npz_file(file_path):
16
+ with np.load(file_path, allow_pickle=True) as data:
17
+ content = dict(data)
18
+ return content
19
+ def convert_data_to_image(npz_content):
20
+ content = npz_content
21
+ iq_avg = content["iq_avg"]
22
+ rows, cols = iq_avg.shape
23
+ if rows < cols:
24
+ iq_avg = iq_avg.T
25
+ iq_avg = np.abs(iq_avg)
26
+ iq_avg_normalized = cv2.normalize(iq_avg, None, 0, 255, cv2.NORM_MINMAX, cv2.CV_8U)
27
+ return iq_avg_normalized
28
+
29
+ def load_npz_to_image(file_path):
30
+ npz_content = load_npz_file(file_path)
31
+ image = convert_data_to_image(npz_content)
32
+ return image
33
+
34
+ def load_npz_to_images(file_path_list):
35
+ images = []
36
+ for file_path in file_path_list:
37
+ print(file_path)
38
+ image = load_npz_to_image(file_path)
39
+ images.append(image)
40
+ # cv2.imwrite("tmp/client/test.jpg",image)
41
+ return images
@@ -0,0 +1,41 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright (c) 2025 yaqiang.sun.
3
+ # This source code is licensed under the license found in the LICENSE file
4
+ # in the root directory of this source tree.
5
+ #########################################################################
6
+ # Author: yaqiangsun
7
+ # Created Time: 2025/04/15 10:31:23
8
+ ########################################################################
9
+ import os
10
+ import requests
11
+ import io
12
+ import numpy as np
13
+ from qubitclient.curve.curve_type import CurveType
14
+
15
+
16
+ def file_request(file_path_list,url,api_key,curve_type:CurveType=None):
17
+ files = []
18
+ for file_path in file_path_list:
19
+ if file_path.endswith('.npz'):
20
+ file_name = os.path.basename(file_path)
21
+ files.append(("request", (file_name, open(file_path, "rb"), "image/jpeg")))
22
+ headers = {'Authorization': f'Bearer {api_key}'} # 添加API密钥到请求头
23
+ data = {
24
+ "curve_type":curve_type.value if curve_type else None
25
+ }
26
+ response = requests.post(url, files=files, headers=headers,data=data)
27
+ return response
28
+
29
+ def file_request_with_dict(dict_list,url,api_key,curve_type:str=None):
30
+ files = []
31
+ for index,dict_obj in enumerate(dict_list):
32
+ with io.BytesIO() as buffer:
33
+ np.savez(buffer, **dict_obj)
34
+ bytes_obj = buffer.getvalue()
35
+ files.append(("request", ("None"+str(index)+".npz", bytes_obj, "application/octet-stream")))
36
+ headers = {'Authorization': f'Bearer {api_key}'} # 添加API密钥到请求头
37
+ data = {
38
+ "curve_type":curve_type.value if curve_type else None
39
+ }
40
+ response = requests.post(url, files=files, headers=headers,data=data)
41
+ return response
@@ -0,0 +1,55 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright (c) 2025 yaqiang.sun.
3
+ # This source code is licensed under the license found in the LICENSE file
4
+ # in the root directory of this source tree.
5
+ #########################################################################
6
+ # Author: yaqiangsun
7
+ # Created Time: 2025/04/15 10:23:27
8
+ ########################################################################
9
+
10
+ import math
11
+ import cv2
12
+
13
+ def parser_result(result, images):
14
+ result_images = []
15
+ for i in range(len(result)):
16
+ image = images[i]
17
+ if len(image.shape) == 2:
18
+ image = cv2.cvtColor(image, cv2.COLOR_GRAY2BGR)
19
+ # input_image_reshape = (512, 512)
20
+ input_image_reshape = (image.shape[1]*10,image.shape[0])
21
+ image = cv2.resize(image, input_image_reshape, interpolation=cv2.INTER_NEAREST)
22
+
23
+
24
+ image_result = result[i]
25
+ linepoints_list = image_result["linepoints_list"]
26
+ for linepoints in linepoints_list:
27
+ for j in range(len(linepoints) - 1):
28
+ cv2.line(image, tuple([int(linepoints[j][0]*10),int(linepoints[j][1])]), tuple([int(linepoints[j + 1][0]*10),int(linepoints[j + 1][1])]), (0, 255, 0), 2)
29
+
30
+ # cv2.imwrite(f"tmp/client/result_{i}.jpg", image)
31
+ result_images.append(image)
32
+ return result_images
33
+
34
+ def convet_axis(points,x_dim,y_dim):
35
+ reflection_points = []
36
+ for point in points:
37
+ x = point[0]
38
+ y = point[1]
39
+
40
+ x_grid_start = x_dim[int(x)]
41
+ x_grid_end = x_dim[min(int(x)+1,len(x_dim)-1)]
42
+ x_refletion = (x_grid_end-x_grid_start)* math.modf(x)[0] + x_grid_start
43
+
44
+
45
+ # y_index = min(max(0,int(y)),len(y_dim)-2)
46
+ y_index = int(y)
47
+ if y_index<0 or y_index>len(y_dim)-2:
48
+ continue
49
+ y_grid_start = y_dim[y_index]
50
+ y_grid_end = y_dim[y_index+1]
51
+ y_refletion = (y_grid_end-y_grid_start)* math.modf(y)[0] + y_grid_start
52
+ reflection_points.append([x_refletion,y_refletion])
53
+ pass
54
+
55
+ return reflection_points
@@ -0,0 +1,106 @@
1
+ Metadata-Version: 2.4
2
+ Name: qubitclient
3
+ Version: 0.0.1
4
+ Summary: qubit analysis client
5
+ Home-page: https://github.com/yaqiangsun/QubitClient
6
+ Author: Yaqiang Sun
7
+ Author-email: Yaqiang Sun <sunyaking@163.com>
8
+ License: GPL-3.0
9
+ Requires-Python: >=3.8
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Dynamic: author
13
+ Dynamic: home-page
14
+ Dynamic: license-file
15
+ Dynamic: requires-python
16
+
17
+ # QubitClient
18
+
19
+ #### 介绍
20
+ **qubit-client**
21
+ QubitClient 是用于使用Qubit服务的示例。
22
+
23
+ # 更新日志
24
+
25
+ 近期更新:
26
+
27
+ - **增加scope功能包**: 增加多种任务功能(20251022).
28
+ - **增加曲线类型**: 增加cosin类型曲线拟合(20250606).
29
+ - **构建基础项目:** 基础功能与结构构建.
30
+
31
+
32
+ # 使用
33
+
34
+ ### scope功能包
35
+ #### 运行示例代码
36
+ ```python
37
+ python demo/scope_demo.py
38
+ ```
39
+
40
+ ### 曲线分割功能
41
+ #### 使用说明
42
+ 1.拷贝config.py.example文件为config.py,并修改配置参数。
43
+ ```
44
+ cp config.py.example config.py
45
+ ```
46
+ 2.运行
47
+ 单次请求多个文件:
48
+ ```bash
49
+ python client_demo.py
50
+ ```
51
+ 批量多次请求
52
+ ```bash
53
+ python script/test.py
54
+ ```
55
+ #### 定义实例
56
+ ```
57
+ client = QubitSegClient(url=url, api_key=api_key,curve_type=CurveType.POLY)
58
+ ```
59
+ curve_type: CurveType.COSINE(cosin拟合) or CurveType.POLY(多项式拟合)
60
+
61
+ #### 请求输入
62
+
63
+ ```python
64
+ response = client.request(file_list=dict_list)
65
+ ```
66
+ dict_list格式为:
67
+ ```json
68
+ [
69
+ {
70
+ "bias":np.ndarray shape(A),
71
+ "frequency":np.ndarray shape(B),
72
+ "iq_avg":np.ndarray shape(B,A),
73
+ },
74
+ ...
75
+ ]
76
+ ```
77
+
78
+
79
+ #### 返回值
80
+ 返回请求为response
81
+ ```python
82
+ res = response.json()
83
+ ```
84
+ res格式为:
85
+ ```json
86
+ {
87
+ "state":'success',
88
+ "result":result
89
+ }
90
+ ```
91
+ 其中result格式:
92
+ ```json
93
+ [
94
+ {
95
+ "params_list":List[List[float]],//每条线段的多项式参数列表
96
+ "linepoints_list":List[List[[row_index,col_index]]],//每条线段的点坐标列表
97
+ "confidence_list":List[float],//每条线段的置信度
98
+ },//每一个npz文件的结果
99
+ {
100
+ ...
101
+ },
102
+ ...
103
+ ]
104
+ ```
105
+
106
+
@@ -0,0 +1,47 @@
1
+ qubitclient/QubitSeg.py,sha256=ITBdSzvn5XApSoM9uvRhZjYWNFTVHqUaI_gKbnCxOiY,2604
2
+ qubitclient/__init__.py,sha256=m5vF1vnS6dr3U8j0qiIruKcuRkiAhl8Aw6n4jOgZbEw,128
3
+ qubitclient/curve/curve_type.py,sha256=Qi1vTjzK6eJWMpaT9QkJtSM9486fEp4Sd27hAHi1LnM,473
4
+ qubitclient/scope/scope.py,sha256=4wJ4t55QiKtPEJ-l-ADNLliGg04SPFW-SBRho0kiHLQ,1635
5
+ qubitclient/scope/task.py,sha256=MVTprSSq4PADBPxIe89Ii5Bp_1DEhaQrpPjB-pTJ0Gg,6339
6
+ qubitclient/scope/scope_api/__init__.py,sha256=qUheje2C4lZ8b26EUHXHRJ3dWuzKiExv_JVOdVCFAek,150
7
+ qubitclient/scope/scope_api/client.py,sha256=o_mdLqyBCQstu5tS1WZFwqIEbGwkvWQ7eQjuCJw_5VY,12419
8
+ qubitclient/scope/scope_api/errors.py,sha256=gO8GBmKqmSNgAg-E5oT-oOyxztvp7V_6XG7OUTT15q0,546
9
+ qubitclient/scope/scope_api/py.typed,sha256=8ZJUsxZiuOy1oJeVhsTWQhTG_6pTVHVXk5hJL79ebTk,25
10
+ qubitclient/scope/scope_api/types.py,sha256=AX4orxQZQJat3vZrgjJ-TYb2sNBL8kNo9yqYDT-n8y8,1391
11
+ qubitclient/scope/scope_api/api/__init__.py,sha256=zTSiG_ujSjAqWPyc435YXaX9XTlpMjiJWBbV-f-YtdA,45
12
+ qubitclient/scope/scope_api/api/defined_tasks/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
13
+ qubitclient/scope/scope_api/api/defined_tasks/get_task_result_api_v1_tasks_demo_pk_get.py,sha256=mWzJoBh2EmCF-iX4jTlN5msvI6L3CzLixel2S-vu_Qc,3908
14
+ qubitclient/scope/scope_api/api/defined_tasks/get_task_result_api_v1_tasks_scope_pk_get.py,sha256=6SqRkNWS631gZ_zSuhRVfzQQSqab8S4vBNdgxQCpE0A,3909
15
+ qubitclient/scope/scope_api/api/defined_tasks/optpipulse_api_v1_tasks_scope_optpipulse_post.py,sha256=Xv5uK16r7P74IBEL6Q867r0K9ae0ZwqveIT-k52oJrQ,5894
16
+ qubitclient/scope/scope_api/api/defined_tasks/rabi_api_v1_tasks_scope_rabi_post.py,sha256=OjJPbwk8wzaBQH5pKdBXu1lu77C9YRTI6u88kyA8Rgk,5686
17
+ qubitclient/scope/scope_api/api/defined_tasks/rabicos_api_v1_tasks_scope_rabicospeak_post.py,sha256=VRZQAQVloC1E066bpFlp3VOndU84WyV4e-TxrPlxgPI,5926
18
+ qubitclient/scope/scope_api/api/defined_tasks/s21peak_api_v1_tasks_scope_s21peak_post.py,sha256=1tajlqSAPJ0Z9JrK9iFvf9hW_-lXmwyrNt8BmyOs4g0,5848
19
+ qubitclient/scope/scope_api/api/defined_tasks/s21vflux_api_v1_tasks_scope_s21vflux_post.py,sha256=hHGS24N_2ZGQlsW4XFnVuN5asje3Z6Hh9rdScKmPdKQ,5940
20
+ qubitclient/scope/scope_api/api/defined_tasks/singleshot_api_v1_tasks_scope_singleshot_post.py,sha256=SZz6OuGsLQMHdT-anFPMcUcEAc99rRhzSB5QX0VAk1k,5942
21
+ qubitclient/scope/scope_api/api/defined_tasks/spectrum_api_v1_tasks_scope_spectrum_post.py,sha256=f2vjj-xjWVachjXRb7vtWBXItII0ECWVs-dHIeqDJlU,5914
22
+ qubitclient/scope/scope_api/api/defined_tasks/t1fit_api_v1_tasks_scope_t1fit_post.py,sha256=yC5nJh4vmNvx4CLOoFAHj2pai4pLlSlJov6gz3mkOhM,5716
23
+ qubitclient/scope/scope_api/api/defined_tasks/t1fit_api_v1_tasks_scope_t2fit_post.py,sha256=SRbaUDoR5b0nA12ix0RTGapiybnoq5c1MJ48wFIydFg,5716
24
+ qubitclient/scope/scope_api/models/__init__.py,sha256=Aq8PxB29kvcxMcEFLDTIqujQUQRqe5HD3pWoAnr5VqA,1520
25
+ qubitclient/scope/scope_api/models/body_optpipulse_api_v1_tasks_scope_optpipulse_post.py,sha256=jA4fcZ7KwhH7L74kvoxFkmqTPcAqBZA2WQglJAYrrtk,2369
26
+ qubitclient/scope/scope_api/models/body_rabi_api_v1_tasks_scope_rabi_post.py,sha256=zWGZyxNpb7KYquXYEylGeSVFJLiiR2jM03bJBbMRMRw,2309
27
+ qubitclient/scope/scope_api/models/body_rabicos_api_v1_tasks_scope_rabicospeak_post.py,sha256=tUaq3bDWVWQafVN7hPsIjjDWpfqtl3V2fnJEpos5TZw,2359
28
+ qubitclient/scope/scope_api/models/body_s21_peak_api_v1_tasks_scope_s21_peak_post.py,sha256=K4_hwbLYw6Fqn7OVF_VFzhl6WWF702PDsb4iMZ_yPqM,2345
29
+ qubitclient/scope/scope_api/models/body_s21_vflux_api_v1_tasks_scope_s21_vflux_post.py,sha256=i3Z7BD2T0-7eoNNH_LVOHBosyYW3ZBQvjtRPm7GaYKE,2355
30
+ qubitclient/scope/scope_api/models/body_singleshot_api_v1_tasks_scope_singleshot_post.py,sha256=iso7Wrq6EERyGzHnEvScZ7sBzgNNb_mLEeB1yqVSgQA,2369
31
+ qubitclient/scope/scope_api/models/body_spectrum_api_v1_tasks_scope_spectrum_post.py,sha256=xCKF1NeRs0FgPstiku6qyT_w0IxBI8Xc5BdLo8E4sfg,2349
32
+ qubitclient/scope/scope_api/models/body_t1_fit_api_v1_tasks_scope_t1_fit_post.py,sha256=_dMiMzrEkUPA1lY1sMqN7tMC2FkFFffRovh72LPPYIE,2325
33
+ qubitclient/scope/scope_api/models/body_t1_fit_api_v1_tasks_scope_t2_fit_post.py,sha256=wURlSeo12Yr8kX1SPN71bnLjZw2SUFAsDVUS38n3Vw0,2325
34
+ qubitclient/scope/scope_api/models/http_validation_error.py,sha256=OvQ-alRPbtXXwrQunI1Cp1-BWf7ZkVHkigk-YVMFXN0,2213
35
+ qubitclient/scope/scope_api/models/validation_error.py,sha256=ZlK9hbhWr4zSC-dxZh9giERvMiYf9s2k8e1O9Rch_NI,2181
36
+ qubitclient/scope/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ qubitclient/scope/utils/data_parser.py,sha256=pVMR_NdvkmdWS6IEtV326YOejrOSigFwu7Kgezi4wzw,639
38
+ qubitclient/utils/data_convert.py,sha256=9NaaA1ZSpTlDYh4R8S9d4guvST1NleDEp_xA7Pesh9I,4149
39
+ qubitclient/utils/data_parser.py,sha256=2CnrVTRhrg67nrei8wthNhakzUjIBwUh5gJJv6vpg_U,1280
40
+ qubitclient/utils/request_tool.py,sha256=f7ziQtsdCCWOLpugKNgFrVEms3cBEtQ8qdWh159VTr4,1674
41
+ qubitclient/utils/result_parser.py,sha256=5ymB5JSlU1-mqQ3U4fZBGDQdF3CH7NEp4IMt6rDj2uM,2039
42
+ qubitclient-0.0.1.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
43
+ qubitclient-0.0.1.dist-info/METADATA,sha256=_8ZXIRc2USpuNBjByItS2U3phEP1goM8Ltu1mwaCBjI,2021
44
+ qubitclient-0.0.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
45
+ qubitclient-0.0.1.dist-info/top_level.txt,sha256=WykSPDNRJemNN2fgAgiuCxzU4ohtegELAvBMnpgMq4g,12
46
+ qubitclient-0.0.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
47
+ qubitclient-0.0.1.dist-info/RECORD,,
@@ -1,35 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: qubitclient
3
- Version: 0.0.0.1
4
- Summary: Qubit client
5
- Home-page: https://github.com/yaqiangsun/QubitClient
6
- Author: Yaqiang Sun
7
- License: GPL v3
8
- Keywords: Qubit client
9
- Classifier: Development Status :: 5 - Production/Stable
10
- Classifier: Intended Audience :: Developers
11
- Classifier: Programming Language :: Python
12
- Classifier: Programming Language :: Python :: 3
13
- Classifier: Programming Language :: Python :: 3.8
14
- Classifier: Programming Language :: Python :: 3.9
15
- Classifier: Programming Language :: Python :: 3.10
16
- Classifier: Programming Language :: Python :: 3.11
17
- Classifier: Programming Language :: Python :: 3 :: Only
18
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
- Classifier: Operating System :: Microsoft :: Windows
20
- Classifier: Operating System :: Unix
21
- Classifier: Operating System :: MacOS :: MacOS X
22
- Requires-Python: >=3.8
23
- Description-Content-Type: text/x-rst
24
- License-File: LICENSE
25
- Requires-Dist: numpy>=1.26.4
26
- Dynamic: author
27
- Dynamic: classifier
28
- Dynamic: description-content-type
29
- Dynamic: home-page
30
- Dynamic: keywords
31
- Dynamic: license
32
- Dynamic: license-file
33
- Dynamic: requires-dist
34
- Dynamic: requires-python
35
- Dynamic: summary
@@ -1,8 +0,0 @@
1
- qubitclient/QubitSeg.py,sha256=LS7OhSaQT62C5zAHo_hRA1EnKDpEWaHVLa811rXTnf0,2619
2
- qubitclient/__init__.py,sha256=yTQtOeTgUXLXbyVbFE8FLg_QYOvfOQ5WBt_xsIwT4pA,54
3
- qubitclient-0.0.0.1.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
4
- qubitclient-0.0.0.1.dist-info/METADATA,sha256=VWpCZ-wT8grYkzezbzLSy1dKPTeLbV4hWuZJO_E0iLk,1174
5
- qubitclient-0.0.0.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
6
- qubitclient-0.0.0.1.dist-info/top_level.txt,sha256=WykSPDNRJemNN2fgAgiuCxzU4ohtegELAvBMnpgMq4g,12
7
- qubitclient-0.0.0.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
8
- qubitclient-0.0.0.1.dist-info/RECORD,,