dtlpy 1.107.8__py3-none-any.whl → 1.109.19__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.
- dtlpy/__init__.py +1 -7
- dtlpy/__version__.py +1 -1
- dtlpy/entities/__init__.py +5 -4
- dtlpy/entities/annotation.py +28 -57
- dtlpy/entities/annotation_definitions/base_annotation_definition.py +6 -14
- dtlpy/entities/app.py +1 -1
- dtlpy/entities/command.py +10 -7
- dtlpy/entities/compute.py +77 -94
- dtlpy/entities/dataset.py +29 -14
- dtlpy/entities/dpk.py +1 -0
- dtlpy/entities/filters.py +7 -6
- dtlpy/entities/item.py +7 -14
- dtlpy/entities/node.py +0 -12
- dtlpy/entities/service.py +0 -9
- dtlpy/entities/service_driver.py +118 -0
- dtlpy/entities/trigger.py +1 -1
- dtlpy/new_instance.py +1 -1
- dtlpy/repositories/__init__.py +2 -1
- dtlpy/repositories/apps.py +8 -4
- dtlpy/repositories/collections.py +86 -34
- dtlpy/repositories/commands.py +14 -4
- dtlpy/repositories/computes.py +173 -127
- dtlpy/repositories/datasets.py +20 -9
- dtlpy/repositories/downloader.py +20 -8
- dtlpy/repositories/dpks.py +26 -1
- dtlpy/repositories/items.py +5 -2
- dtlpy/repositories/service_drivers.py +213 -0
- dtlpy/repositories/services.py +6 -0
- dtlpy/repositories/uploader.py +4 -0
- dtlpy-1.109.19.dist-info/METADATA +172 -0
- {dtlpy-1.107.8.dist-info → dtlpy-1.109.19.dist-info}/RECORD +39 -37
- tests/features/environment.py +16 -15
- dtlpy-1.107.8.dist-info/METADATA +0 -69
- {dtlpy-1.107.8.data → dtlpy-1.109.19.data}/scripts/dlp +0 -0
- {dtlpy-1.107.8.data → dtlpy-1.109.19.data}/scripts/dlp.bat +0 -0
- {dtlpy-1.107.8.data → dtlpy-1.109.19.data}/scripts/dlp.py +0 -0
- {dtlpy-1.107.8.dist-info → dtlpy-1.109.19.dist-info}/LICENSE +0 -0
- {dtlpy-1.107.8.dist-info → dtlpy-1.109.19.dist-info}/WHEEL +0 -0
- {dtlpy-1.107.8.dist-info → dtlpy-1.109.19.dist-info}/entry_points.txt +0 -0
- {dtlpy-1.107.8.dist-info → dtlpy-1.109.19.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: dtlpy
|
|
3
|
+
Version: 1.109.19
|
|
4
|
+
Summary: SDK and CLI for Dataloop platform
|
|
5
|
+
Home-page: https://github.com/dataloop-ai/dtlpy
|
|
6
|
+
Author: Dataloop Team
|
|
7
|
+
Author-email: info@dataloop.ai
|
|
8
|
+
License: Apache License 2.0
|
|
9
|
+
Classifier: Programming Language :: Python
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
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
|
+
Requires-Python: >=3.7
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
License-File: LICENSE
|
|
20
|
+
Requires-Dist: urllib3 (>=1.26)
|
|
21
|
+
Requires-Dist: tqdm (>=4.63)
|
|
22
|
+
Requires-Dist: certifi (>=2020.12.5)
|
|
23
|
+
Requires-Dist: webvtt-py (==0.4.3)
|
|
24
|
+
Requires-Dist: aiohttp (>=3.8)
|
|
25
|
+
Requires-Dist: requests-toolbelt (>=1.0.0)
|
|
26
|
+
Requires-Dist: requests (>=2.25.0)
|
|
27
|
+
Requires-Dist: numpy (>=1.16.2)
|
|
28
|
+
Requires-Dist: pandas (>=0.24.2)
|
|
29
|
+
Requires-Dist: tabulate (>=0.8.9)
|
|
30
|
+
Requires-Dist: Pillow (>=7.2)
|
|
31
|
+
Requires-Dist: PyJWT (>=2.4)
|
|
32
|
+
Requires-Dist: jinja2 (>=2.11.3)
|
|
33
|
+
Requires-Dist: attrs (<=22.2.0)
|
|
34
|
+
Requires-Dist: prompt-toolkit (>=2.0.9)
|
|
35
|
+
Requires-Dist: fuzzyfinder (<=2.1.0)
|
|
36
|
+
Requires-Dist: dictdiffer (>=0.8.1)
|
|
37
|
+
Requires-Dist: validators (<=0.18.2)
|
|
38
|
+
Requires-Dist: pathspec (>=0.8.1)
|
|
39
|
+
Requires-Dist: filelock (>=3.0.12)
|
|
40
|
+
Requires-Dist: diskcache (>=5.4)
|
|
41
|
+
Requires-Dist: redis (>=3.5)
|
|
42
|
+
Requires-Dist: inquirer
|
|
43
|
+
Requires-Dist: dtlpymetrics
|
|
44
|
+
Requires-Dist: dataclasses
|
|
45
|
+
|
|
46
|
+
# **DTLPY – SDK and CLI for Dataloop.ai**
|
|
47
|
+
|
|
48
|
+

|
|
49
|
+
|
|
50
|
+
[](https://sdk-docs.dataloop.ai/en/latest/?badge=latest)
|
|
51
|
+
[](https://pypi.org/project/dtlpy/)
|
|
52
|
+
[](https://github.com/dataloop-ai/dtlpy)
|
|
53
|
+
[](https://github.com/dataloop-ai/dtlpy/blob/master/LICENSE)
|
|
54
|
+
[](https://pepy.tech/project/dtlpy)
|
|
55
|
+
|
|
56
|
+
📚 [Platform Documentation](https://dataloop.ai/docs) | 📖 [SDK Documentation](https://console.dataloop.ai/sdk-docs/latest) | [Developer docs](https://developers.dataloop.ai/)
|
|
57
|
+
|
|
58
|
+
An open-source SDK and CLI toolkit to interact seamlessly with the [Dataloop.ai](https://dataloop.ai/) platform, providing powerful data management, annotation capabilities, and workflow automation.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## **Table of Contents**
|
|
63
|
+
|
|
64
|
+
- [Overview](#overview)
|
|
65
|
+
- [Installation](#installation)
|
|
66
|
+
- [Usage](#usage)
|
|
67
|
+
- [SDK Usage](#sdk-usage)
|
|
68
|
+
- [CLI Usage](#cli-usage)
|
|
69
|
+
- [Python Version Support](#python-version-support)
|
|
70
|
+
- [Development](#development)
|
|
71
|
+
- [Resources](#resources)
|
|
72
|
+
- [Contribution Guidelines](#contribution-guidelines)
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## **Overview**
|
|
77
|
+
|
|
78
|
+
DTLPY provides a robust Python SDK and a powerful CLI, enabling developers and data scientists to automate tasks, manage datasets, annotations, and streamline workflows within the Dataloop platform.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## **Installation**
|
|
83
|
+
|
|
84
|
+
Install DTLPY directly from PyPI using pip:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
pip install dtlpy
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Alternatively, for the latest development version, install directly from GitHub:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
pip install git+https://github.com/dataloop-ai/dtlpy.git
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## **Usage**
|
|
99
|
+
|
|
100
|
+
### **SDK Usage**
|
|
101
|
+
|
|
102
|
+
Here's a basic example to get started with the DTLPY SDK:
|
|
103
|
+
|
|
104
|
+
```python
|
|
105
|
+
import dtlpy as dl
|
|
106
|
+
|
|
107
|
+
# Authenticate
|
|
108
|
+
dl.login()
|
|
109
|
+
|
|
110
|
+
# Access a project
|
|
111
|
+
project = dl.projects.get(project_name='your-project-name')
|
|
112
|
+
|
|
113
|
+
# Access dataset
|
|
114
|
+
dataset = project.datasets.get(dataset_name='your-dataset-name')
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### **CLI Usage**
|
|
118
|
+
|
|
119
|
+
DTLPY also provides a convenient command-line interface:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
dlp login
|
|
123
|
+
dlp projects ls
|
|
124
|
+
dlp datasets ls --project-name your-project-name
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## **Python Version Support**
|
|
130
|
+
|
|
131
|
+
DTLPY supports multiple Python versions as follows:
|
|
132
|
+
|
|
133
|
+
| Python Version | 3.11 | 3.10 | 3.9 | 3.8 | 3.7 | 3.6 | 3.5 |
|
|
134
|
+
|--------------------|------|------|-----|-----|-----|-----|-----|
|
|
135
|
+
| **dtlpy >= 1.99** | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
|
|
136
|
+
| **dtlpy 1.76–1.98**| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
|
|
137
|
+
| **dtlpy >= 1.61** | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
|
|
138
|
+
| **dtlpy 1.50–1.60**| ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ |
|
|
139
|
+
| **dtlpy <= 1.49** | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## **Development**
|
|
144
|
+
|
|
145
|
+
To set up the development environment, clone the repository and install dependencies:
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
git clone https://github.com/dataloop-ai/dtlpy.git
|
|
149
|
+
cd dtlpy
|
|
150
|
+
pip install -r requirements.txt
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## **Resources**
|
|
154
|
+
|
|
155
|
+
- [Dataloop Platform](https://console.dataloop.ai)
|
|
156
|
+
- [Full SDK Documentation](https://console.dataloop.ai/sdk-docs/latest)
|
|
157
|
+
- [Platform Documentation](https://dataloop.ai/docs)
|
|
158
|
+
- [SDK Examples and Tutorials](https://github.com/dataloop-ai/dtlpy-documentation)
|
|
159
|
+
- [Developer docs](https://developers.dataloop.ai/)
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## **Contribution Guidelines**
|
|
164
|
+
|
|
165
|
+
We encourage contributions! Please ensure:
|
|
166
|
+
|
|
167
|
+
- Clear and descriptive commit messages
|
|
168
|
+
- Code follows existing formatting and conventions
|
|
169
|
+
- Comprehensive tests for new features or bug fixes
|
|
170
|
+
- Updates to documentation if relevant
|
|
171
|
+
|
|
172
|
+
Create pull requests for review. All contributions will be reviewed carefully and integrated accordingly.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
dtlpy/__init__.py,sha256=
|
|
2
|
-
dtlpy/__version__.py,sha256=
|
|
1
|
+
dtlpy/__init__.py,sha256=n86boFpXWXPLjSXZMmWCageGjBumPjWxRv3srysrplk,20338
|
|
2
|
+
dtlpy/__version__.py,sha256=eIgLM-gZdxM-jhKIfBZi2m6DL_vSoUQ556FqCWu8aCs,21
|
|
3
3
|
dtlpy/exceptions.py,sha256=EQCKs3pwhwZhgMByQN3D3LpWpdxwcKPEEt-bIaDwURM,2871
|
|
4
|
-
dtlpy/new_instance.py,sha256=
|
|
4
|
+
dtlpy/new_instance.py,sha256=tUCzBGaSpm9GTjRuwOkFgo3A8vopUQ-baltdJss3XlI,9964
|
|
5
5
|
dtlpy/assets/__init__.py,sha256=D_hAa6NM8Zoy32sF_9b7m0b7I-BQEyBFg8-9Tg2WOeo,976
|
|
6
6
|
dtlpy/assets/lock_open.png,sha256=BH9uyf5uYvgZrDpDw9qCUnT3UbkXG8XbeRmWDpWlV4M,18215
|
|
7
7
|
dtlpy/assets/main.py,sha256=N1JUsx79qnXI7Hx22C8JOzHJdGHxvrXeTx5UZAxvJfE,1380
|
|
@@ -43,11 +43,11 @@ dtlpy/dlp/dlp,sha256=-F0vSCWuSOOtgERAtsPMPyMmzitjhB7Yeftg_PDlDjw,10
|
|
|
43
43
|
dtlpy/dlp/dlp.bat,sha256=QOvx8Dlx5dUbCTMpwbhOcAIXL1IWmgVRSboQqDhIn3A,37
|
|
44
44
|
dtlpy/dlp/dlp.py,sha256=YjNBjeCDTXJ7tj8qdiGZ8lFb8DtPZl-FvViyjxt9xF8,4278
|
|
45
45
|
dtlpy/dlp/parser.py,sha256=p-TFaiAU2c3QkI97TXzL2LDR3Eq0hGDFrTc9J2jWLh4,30551
|
|
46
|
-
dtlpy/entities/__init__.py,sha256=
|
|
46
|
+
dtlpy/entities/__init__.py,sha256=quty3pkoJ9_8dRyZG2WnPj7Qpr4O05FxXpWsY_txz_M,4982
|
|
47
47
|
dtlpy/entities/analytic.py,sha256=5MpYDKPVsZ1MIy20Ju515RWed6P667j4TLxsan2gyNM,11925
|
|
48
|
-
dtlpy/entities/annotation.py,sha256=
|
|
48
|
+
dtlpy/entities/annotation.py,sha256=DYpVb4bNxwXnxXjh3zUa58qo2nSMaQnejiDwUZntn0E,66610
|
|
49
49
|
dtlpy/entities/annotation_collection.py,sha256=CEYSBHhhDkC0VJdHsBSrA6TgdKGMcKeI3tFM40UJwS8,29838
|
|
50
|
-
dtlpy/entities/app.py,sha256=
|
|
50
|
+
dtlpy/entities/app.py,sha256=vQ7hSMnuRIpoZqZc2NwjGTtWiPTCgi47x_oOgGUB-Pk,6996
|
|
51
51
|
dtlpy/entities/app_module.py,sha256=0UiAbBX1q8iEImi3nY7ySWZZHoRRwu0qUXmyXmgVAc4,3645
|
|
52
52
|
dtlpy/entities/artifact.py,sha256=wtLtBuidOPbnba0ok40JyunCCIBGbAl4bP_ebK39Kk4,5711
|
|
53
53
|
dtlpy/entities/assignment.py,sha256=Dc1QcfVf67GGcmDDi4ubESDuPkSgjXqdqjTBQ31faUM,14722
|
|
@@ -55,24 +55,24 @@ dtlpy/entities/base_entity.py,sha256=i83KrtAz6dX4t8JEiUimLI5ZRrN0VnoUWKG2Zz49N5w
|
|
|
55
55
|
dtlpy/entities/bot.py,sha256=is3NUCnPg56HSjsHIvFcVkymValMqDV0uHRDC1Ib-ds,3819
|
|
56
56
|
dtlpy/entities/codebase.py,sha256=pwRkAq2GV0wvmzshg89IAmE-0I2Wsy_-QNOu8OV8uqc,8999
|
|
57
57
|
dtlpy/entities/collection.py,sha256=FPPPfIxOsBG1ujORPJVq8uXyF8vhIqC6N4EiI9SJzl0,1160
|
|
58
|
-
dtlpy/entities/command.py,sha256=
|
|
59
|
-
dtlpy/entities/compute.py,sha256=
|
|
60
|
-
dtlpy/entities/dataset.py,sha256=
|
|
58
|
+
dtlpy/entities/command.py,sha256=5RMQYjOGLRF8JZd7QFAPyE8utsp4eZzLApI2dEAbaqo,5301
|
|
59
|
+
dtlpy/entities/compute.py,sha256=IFMkHWVu8RyUZSZ24SuE-TnOP-3XzPT5eOEbYFJg76E,14207
|
|
60
|
+
dtlpy/entities/dataset.py,sha256=GEvBOly1M8uU--apQZ-G-78DJZzFk178LmMhEANyi0A,53838
|
|
61
61
|
dtlpy/entities/directory_tree.py,sha256=Rni6pLSWytR6yeUPgEdCCRfTg_cqLOdUc9uCqz9KT-Q,1186
|
|
62
|
-
dtlpy/entities/dpk.py,sha256=
|
|
62
|
+
dtlpy/entities/dpk.py,sha256=XrK8X8p4Ag6LMjDrDpMstY-h_yTll_sMmKTZT6bLbWE,17923
|
|
63
63
|
dtlpy/entities/driver.py,sha256=O_QdK1EaLjQyQkmvKsmkNgmvmMb1mPjKnJGxK43KrOA,7197
|
|
64
64
|
dtlpy/entities/execution.py,sha256=uQe535w9OcAoDiNWf96KcpFzUDEUU-DYsUalv5VziyM,13673
|
|
65
65
|
dtlpy/entities/feature.py,sha256=9fFjD0W57anOVSAVU55ypxN_WTCsWTG03Wkc3cAAj78,3732
|
|
66
66
|
dtlpy/entities/feature_set.py,sha256=niw4MkmrDbD_LWQu1X30uE6U4DCzmFhPTaYeZ6VZDB0,4443
|
|
67
|
-
dtlpy/entities/filters.py,sha256=
|
|
67
|
+
dtlpy/entities/filters.py,sha256=8nz3V5Ui4LemEIfSTp3uAHJAf_ZpwQrMSrfUL6AB7Zk,22719
|
|
68
68
|
dtlpy/entities/gis_item.py,sha256=Uk-wMBxwcHsImjz4qOjP-EyZAohbRzN43kMpCaVjCXU,3982
|
|
69
69
|
dtlpy/entities/integration.py,sha256=Kdy1j6-cJLW8qNmnqCmdg36phi843YDrlMqcMyMfvYk,5875
|
|
70
|
-
dtlpy/entities/item.py,sha256=
|
|
70
|
+
dtlpy/entities/item.py,sha256=WCIPHUmubIe0wva-YMm-LPQdn2S3_-Q151x49C9NEw8,34591
|
|
71
71
|
dtlpy/entities/label.py,sha256=ycDYavIgKhz806plIX-64c07_TeHpDa-V7LnfFVe4Rg,3869
|
|
72
72
|
dtlpy/entities/links.py,sha256=FAmEwHtsrqKet3c0UHH9u_gHgG6_OwF1-rl4xK7guME,2516
|
|
73
73
|
dtlpy/entities/message.py,sha256=ApJuaKEqxATpXjNYUjGdYPu3ibQzEMo8-LtJ_4xAcPI,5865
|
|
74
74
|
dtlpy/entities/model.py,sha256=YwjIi3MxAZoyartTvqx_qhtDKQe6zVsQuwZbYLygMxU,26898
|
|
75
|
-
dtlpy/entities/node.py,sha256=
|
|
75
|
+
dtlpy/entities/node.py,sha256=RiCqG659Pb1PZNMewR-F7eNbU5tt713fiZY9xW6-Pes,39199
|
|
76
76
|
dtlpy/entities/ontology.py,sha256=924g9c2ZTfr69fWd_ejrVU0C-MAUR8UAhhz6GY-IQME,32100
|
|
77
77
|
dtlpy/entities/organization.py,sha256=Zm-tTHV82PvYyTNetRRXqvmvzBCbXEwS-gAENf7Zny4,9874
|
|
78
78
|
dtlpy/entities/package.py,sha256=QSDePHlp4ik19aUE3dAUC7edh0oUUVjzSmMG867avc4,26363
|
|
@@ -88,15 +88,16 @@ dtlpy/entities/prompt_item.py,sha256=qXDK2IWVKszm7gpqcgCE51SSf4IUTNFirq40qszBYw8
|
|
|
88
88
|
dtlpy/entities/recipe.py,sha256=SX0T7gw-_9Cs2FZyC_htIxQd7CwDwb2zA3SqB37vymM,11917
|
|
89
89
|
dtlpy/entities/reflect_dict.py,sha256=2NaSAL-CO0T0FYRYFQlaSpbsoLT2Q18AqdHgQSLX5Y4,3273
|
|
90
90
|
dtlpy/entities/resource_execution.py,sha256=1HuVV__U4jAUOtOkWlWImnM3Yts8qxMSAkMA9sBhArY,5033
|
|
91
|
-
dtlpy/entities/service.py,sha256=
|
|
91
|
+
dtlpy/entities/service.py,sha256=ZKxEYS9Gre8u7A6CN8P37ZyuApw92Q5B-6R2mgnzFwA,33230
|
|
92
|
+
dtlpy/entities/service_driver.py,sha256=N3fL_xTPLu75UBFQZO5Plxx2kpED-UIILxTYbD58rzQ,3917
|
|
92
93
|
dtlpy/entities/setting.py,sha256=uXagJHtcCR3nJYClR_AUGZjz_kx3TejPcUZ8ginHFIA,8561
|
|
93
94
|
dtlpy/entities/task.py,sha256=WOKrZBOu9BaJopZBToFEFOQsEntsfvzKolJYPEUjIeI,19511
|
|
94
95
|
dtlpy/entities/time_series.py,sha256=336jWNckjuSn0G29WJFetB7nBoFAKqs4VH9_IB4m4FE,4017
|
|
95
|
-
dtlpy/entities/trigger.py,sha256=
|
|
96
|
+
dtlpy/entities/trigger.py,sha256=9Um74Tq-Hn_K35x8QrLPugjKIFEC1eGLQAFcwuymOUs,14296
|
|
96
97
|
dtlpy/entities/user.py,sha256=hqEzwN6rl1oUTpKOV5eXvw9Z7dtpsiC4TAPSNBmkqcM,3865
|
|
97
98
|
dtlpy/entities/webhook.py,sha256=6R06MgLxabvKySInGlSJmaf0AVmAMe3vKusWhqONRyU,3539
|
|
98
99
|
dtlpy/entities/annotation_definitions/__init__.py,sha256=qZ77hGmCQopPSpiDHYhNWbNKC7nrn10NWNlim9dINmg,666
|
|
99
|
-
dtlpy/entities/annotation_definitions/base_annotation_definition.py,sha256=
|
|
100
|
+
dtlpy/entities/annotation_definitions/base_annotation_definition.py,sha256=quZthKbVdYAMFexOVok1YAjDS_aaFe01Umugxc5Z1gU,2547
|
|
100
101
|
dtlpy/entities/annotation_definitions/box.py,sha256=A4NnMrHkq3CuvFR9wq-jqAMHMHKKWyc2gMwMHmQXKdU,6045
|
|
101
102
|
dtlpy/entities/annotation_definitions/classification.py,sha256=uqLAAaqNww2ZwR1e4UW22foJtDxoeZXJsv5PTvyt-tA,1559
|
|
102
103
|
dtlpy/entities/annotation_definitions/comparison.py,sha256=cp9HZ32wm7E78tbeoqsfJL5oZ26ojig7Cjn2FJE7mbI,1806
|
|
@@ -153,27 +154,27 @@ dtlpy/ml/metrics.py,sha256=BG2E-1Mvjv2e2No9mIJKVmvzqBvLqytKcw3hA7wVUNc,20037
|
|
|
153
154
|
dtlpy/ml/predictions_utils.py,sha256=He_84U14oS2Ss7T_-Zj5GDiBZwS-GjMPURUh7u7DjF8,12484
|
|
154
155
|
dtlpy/ml/summary_writer.py,sha256=dehDi8zmGC1sAGyy_3cpSWGXoGQSiQd7bL_Thoo8yIs,2784
|
|
155
156
|
dtlpy/ml/train_utils.py,sha256=R-BHKRfqDoLLhFyLzsRFyJ4E-8iedj9s9oZqy3IO2rg,2404
|
|
156
|
-
dtlpy/repositories/__init__.py,sha256=
|
|
157
|
+
dtlpy/repositories/__init__.py,sha256=D2YI3ZLlSx0OlgVr8y_E9rsj-IxCDOj0MB6QTlv2NSA,2061
|
|
157
158
|
dtlpy/repositories/analytics.py,sha256=dQPCYTPAIuyfVI_ppR49W7_GBj0033feIm9Gd7LW1V0,2966
|
|
158
159
|
dtlpy/repositories/annotations.py,sha256=idTKzanNt-ncB0eIKE5p6WclrVGNjceI2Y7dAzDFtzY,43595
|
|
159
|
-
dtlpy/repositories/apps.py,sha256=
|
|
160
|
+
dtlpy/repositories/apps.py,sha256=OE2UbxE2oGA44-7pso7fm9GErTRFyGEFK2k7ibC_h6U,16002
|
|
160
161
|
dtlpy/repositories/artifacts.py,sha256=Ke2ustTNw-1eQ0onLsWY7gL2aChjXPAX5p1uQ_EzMbo,19081
|
|
161
162
|
dtlpy/repositories/assignments.py,sha256=1VwJZ7ctQe1iaDDDpeYDgoj2G-TCgzolVLUEqUocd2w,25506
|
|
162
163
|
dtlpy/repositories/bots.py,sha256=q1SqH01JHloljKxknhHU09psV1vQx9lPhu3g8mBBeRg,8104
|
|
163
164
|
dtlpy/repositories/codebases.py,sha256=pvcZxdrq0-zWysVbdXjUOhnfcF6hJD8v5VclNZ-zhGA,24668
|
|
164
|
-
dtlpy/repositories/collections.py,sha256=
|
|
165
|
-
dtlpy/repositories/commands.py,sha256=
|
|
165
|
+
dtlpy/repositories/collections.py,sha256=z-nkR33rq-MzkEff7DDSBlfsI_lkCDFwQZIlMaIT5rM,13514
|
|
166
|
+
dtlpy/repositories/commands.py,sha256=MgXhXxbAzBa2QJM9Z5EsQZRaZ4fGBM17ALoldxi8xYA,5848
|
|
166
167
|
dtlpy/repositories/compositions.py,sha256=H417BvlQAiWr5NH2eANFke6CfEO5o7DSvapYpf7v5Hk,2150
|
|
167
|
-
dtlpy/repositories/computes.py,sha256=
|
|
168
|
-
dtlpy/repositories/datasets.py,sha256=
|
|
169
|
-
dtlpy/repositories/downloader.py,sha256=
|
|
170
|
-
dtlpy/repositories/dpks.py,sha256=
|
|
168
|
+
dtlpy/repositories/computes.py,sha256=vHMvKVX8U-33nB5TR_Nfs9euGr9MbkiwTHuq4yZojM8,14134
|
|
169
|
+
dtlpy/repositories/datasets.py,sha256=p0HBbTGrxAQ8h9tJsp1jRasPbwnMAtXQ4_sIef9_590,59358
|
|
170
|
+
dtlpy/repositories/downloader.py,sha256=XJC9FhlXgHrA8Ae9bftrbs4YKFCcZoEYJAh6Bt6zGhU,45167
|
|
171
|
+
dtlpy/repositories/dpks.py,sha256=dxZpGloZGH6MJG9ZFff5l3GlXw6i-52n9kxL-QiHosQ,18516
|
|
171
172
|
dtlpy/repositories/drivers.py,sha256=fF0UuHCyBzop8pHfryex23mf0kVFAkqzNdOmwBbaWxY,10204
|
|
172
173
|
dtlpy/repositories/executions.py,sha256=4UoU6bnB3kl5cMuF1eJvDecfZCaB06gKWxPfv6_g1_k,32598
|
|
173
174
|
dtlpy/repositories/feature_sets.py,sha256=UowMDAl_CRefRB5oZzubnsjU_OFgiPPdQXn8q2j4Kuw,9666
|
|
174
175
|
dtlpy/repositories/features.py,sha256=A_RqTJxzjTh-Wbm0uXaoTNyHSfCLbeiH38iB11p2ifY,9915
|
|
175
176
|
dtlpy/repositories/integrations.py,sha256=gSgaVp4MkcdrJMnXVr_fl4xrzhfJba8BFbBJTuJPwXc,18159
|
|
176
|
-
dtlpy/repositories/items.py,sha256=
|
|
177
|
+
dtlpy/repositories/items.py,sha256=S1OWZ6s8AbVXMiLtCfBBiYPMG8OLqdUhKMHuZWE3bnU,40029
|
|
177
178
|
dtlpy/repositories/messages.py,sha256=QU0Psckg6CA_Tlw9AVxqa-Ay1fRM4n269sSIJkH9o7E,3066
|
|
178
179
|
dtlpy/repositories/models.py,sha256=IekNMcnuKVaAVTJf2AJv6YvX5qCd9kkSl4ETPMWP4Zc,38213
|
|
179
180
|
dtlpy/repositories/nodes.py,sha256=xXJm_YA0vDUn0dVvaGeq6ORM0vI3YXvfjuylvGRtkxo,3061
|
|
@@ -186,13 +187,14 @@ dtlpy/repositories/projects.py,sha256=TKLCuL7Inlv4GwgcQcuXkPQtgacfrXYjsTQng8nPC7
|
|
|
186
187
|
dtlpy/repositories/recipes.py,sha256=ZZDhHn9g28C99bsf0nFaIpVYn6f6Jisz9upkHEkeaYY,15843
|
|
187
188
|
dtlpy/repositories/resource_executions.py,sha256=PyzsbdJxz6jf17Gx13GZmqdu6tZo3TTVv-DypnJ_sY0,5374
|
|
188
189
|
dtlpy/repositories/schema.py,sha256=kTKDrbwm7BfQnBAK81LpAl9ChNFdyUweSLNazlJJhjk,3953
|
|
189
|
-
dtlpy/repositories/
|
|
190
|
+
dtlpy/repositories/service_drivers.py,sha256=rxbhLUtT7TCbkVxH4HJtFT9ywcikByPFdX7_4kiTiK0,6766
|
|
191
|
+
dtlpy/repositories/services.py,sha256=LvZCE5_uxsK886sGCSaiZuaRnYbHFSrR2P4G_MlJopY,68856
|
|
190
192
|
dtlpy/repositories/settings.py,sha256=HHYSGub5Y6cQ746pBfvlQndsgBj1UoNFupa2otgvsWI,11645
|
|
191
193
|
dtlpy/repositories/tasks.py,sha256=sBV7SLLwt2QsJkjdEuKLJgIPS34H1b5E2rdFQb1n1Wo,50160
|
|
192
194
|
dtlpy/repositories/times_series.py,sha256=m-bKFEgiZ13yQNelDjBfeXMUy_HgsPD_JAHj1GVx9fU,11420
|
|
193
195
|
dtlpy/repositories/triggers.py,sha256=izdNyCN1gDc5uo7AXntso0HSMTDIzGFUp-dSEz8cn_U,21990
|
|
194
196
|
dtlpy/repositories/upload_element.py,sha256=R2KWIXmkp_dMAIr81tu3Y_VRfldj0ju8__V28ombkcg,10677
|
|
195
|
-
dtlpy/repositories/uploader.py,sha256=
|
|
197
|
+
dtlpy/repositories/uploader.py,sha256=Keu_1fgJPiBpUgBGrAfRErejUK_UvqLTNdwK-BmTPY8,32064
|
|
196
198
|
dtlpy/repositories/webhooks.py,sha256=IIpxOJ-7KeQp1TY9aJZz-FuycSjAoYx0TDk8z86KAK8,9033
|
|
197
199
|
dtlpy/services/__init__.py,sha256=VfVJy2otIrDra6i7Sepjyez2ujiE6171ChQZp-YgxsM,904
|
|
198
200
|
dtlpy/services/aihttp_retry.py,sha256=tgntZsAY0dW9v08rkjX1T5BLNDdDd8svtgn7nH8DSGU,5022
|
|
@@ -224,19 +226,19 @@ dtlpy/utilities/reports/report.py,sha256=3nEsNnIWmdPEsd21nN8vMMgaZVcPKn9iawKTTeO
|
|
|
224
226
|
dtlpy/utilities/videos/__init__.py,sha256=SV3w51vfPuGBxaMeNemx6qEMHw_C4lLpWNGXMvdsKSY,734
|
|
225
227
|
dtlpy/utilities/videos/video_player.py,sha256=LCxg0EZ_DeuwcT7U_r7MRC6Q19s0xdFb7x5Gk39PRms,24072
|
|
226
228
|
dtlpy/utilities/videos/videos.py,sha256=Dj916B4TQRIhI7HZVevl3foFrCsPp0eeWwvGbgX3-_A,21875
|
|
227
|
-
dtlpy-1.
|
|
228
|
-
dtlpy-1.
|
|
229
|
-
dtlpy-1.
|
|
229
|
+
dtlpy-1.109.19.data/scripts/dlp,sha256=-F0vSCWuSOOtgERAtsPMPyMmzitjhB7Yeftg_PDlDjw,10
|
|
230
|
+
dtlpy-1.109.19.data/scripts/dlp.bat,sha256=QOvx8Dlx5dUbCTMpwbhOcAIXL1IWmgVRSboQqDhIn3A,37
|
|
231
|
+
dtlpy-1.109.19.data/scripts/dlp.py,sha256=tEokRaDINISXnq8yNx_CBw1qM5uwjYiZoJOYGqWB3RU,4267
|
|
230
232
|
tests/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
231
233
|
tests/assets/models_flow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
232
234
|
tests/assets/models_flow/failedmain.py,sha256=n8F4eu_u7JPrJ1zedbJPvv9e3lHb3ihoErqrBIcseEc,1847
|
|
233
235
|
tests/assets/models_flow/main.py,sha256=vnDKyVZaae2RFpvwS22Hzi6Dt2LJerH4yQrmKtaT8_g,2123
|
|
234
236
|
tests/assets/models_flow/main_model.py,sha256=Hl_tv7Q6KaRL3yLkpUoLMRqu5-ab1QsUYPL6RPEoamw,2042
|
|
235
237
|
tests/features/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
236
|
-
tests/features/environment.py,sha256=
|
|
237
|
-
dtlpy-1.
|
|
238
|
-
dtlpy-1.
|
|
239
|
-
dtlpy-1.
|
|
240
|
-
dtlpy-1.
|
|
241
|
-
dtlpy-1.
|
|
242
|
-
dtlpy-1.
|
|
238
|
+
tests/features/environment.py,sha256=JcM956BxLBRvDqy6Kr1Nxd1FY_gxbE6XztZBVBMCGYM,18897
|
|
239
|
+
dtlpy-1.109.19.dist-info/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
|
240
|
+
dtlpy-1.109.19.dist-info/METADATA,sha256=S1lFH5dyjapOJM45lU0Xs_kPQJLzlbL5QPjxwQDLqss,5470
|
|
241
|
+
dtlpy-1.109.19.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
|
|
242
|
+
dtlpy-1.109.19.dist-info/entry_points.txt,sha256=C4PyKthCs_no88HU39eioO68oei64STYXC2ooGZTc4Y,43
|
|
243
|
+
dtlpy-1.109.19.dist-info/top_level.txt,sha256=ZWuLmQGUOtWAdgTf4Fbx884w1o0vBYq9dEc1zLv9Mig,12
|
|
244
|
+
dtlpy-1.109.19.dist-info/RECORD,,
|
tests/features/environment.py
CHANGED
|
@@ -121,20 +121,21 @@ def after_feature(context, feature):
|
|
|
121
121
|
|
|
122
122
|
# update api call json
|
|
123
123
|
if hasattr(feature, 'dataloop_feature_dl'):
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
with
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
124
|
+
if not os.environ.get('IGNORE_API_CALLS', 'false') == 'true':
|
|
125
|
+
try:
|
|
126
|
+
api_calls_path = os.path.join(os.environ['DATALOOP_TEST_ASSETS'], 'api_calls.json')
|
|
127
|
+
with open(api_calls_path, 'r') as f:
|
|
128
|
+
api_calls = json.load(f)
|
|
129
|
+
if context.feature.name in api_calls:
|
|
130
|
+
api_calls[context.feature.name] += feature.dataloop_feature_dl.client_api.calls_counter.number
|
|
131
|
+
else:
|
|
132
|
+
api_calls[context.feature.name] = feature.dataloop_feature_dl.client_api.calls_counter.number
|
|
133
|
+
# lock the file for multi processes needs
|
|
134
|
+
with FileLock("api_calls.json.lock"):
|
|
135
|
+
with open(api_calls_path, 'w') as f:
|
|
136
|
+
json.dump(api_calls, f)
|
|
137
|
+
except Exception:
|
|
138
|
+
logging.exception('Failed to update api calls')
|
|
138
139
|
|
|
139
140
|
if hasattr(feature, 'dataloop_feature_compute'):
|
|
140
141
|
try:
|
|
@@ -293,7 +294,7 @@ def after_tag(context, tag):
|
|
|
293
294
|
pass
|
|
294
295
|
elif tag == 'wip':
|
|
295
296
|
pass
|
|
296
|
-
elif any(i_tag in tag for i_tag in ['DAT-', 'qa-', 'rc_only', 'skip_test']):
|
|
297
|
+
elif any(i_tag in tag for i_tag in ['DAT-', 'qa-', 'rc_only', 'skip_test', 'ATP', 'AIRGAPPED']):
|
|
297
298
|
pass
|
|
298
299
|
else:
|
|
299
300
|
raise ValueError('unknown tag: {}'.format(tag))
|
dtlpy-1.107.8.dist-info/METADATA
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: dtlpy
|
|
3
|
-
Version: 1.107.8
|
|
4
|
-
Summary: SDK and CLI for Dataloop platform
|
|
5
|
-
Home-page: https://github.com/dataloop-ai/dtlpy
|
|
6
|
-
Author: Dataloop Team
|
|
7
|
-
Author-email: info@dataloop.ai
|
|
8
|
-
License: Apache License 2.0
|
|
9
|
-
Classifier: Programming Language :: Python
|
|
10
|
-
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
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
|
-
Requires-Python: >=3.7
|
|
18
|
-
Description-Content-Type: text/markdown
|
|
19
|
-
License-File: LICENSE
|
|
20
|
-
Requires-Dist: urllib3 (>=1.26)
|
|
21
|
-
Requires-Dist: tqdm (>=4.63)
|
|
22
|
-
Requires-Dist: certifi (>=2020.12.5)
|
|
23
|
-
Requires-Dist: webvtt-py (==0.4.3)
|
|
24
|
-
Requires-Dist: aiohttp (>=3.8)
|
|
25
|
-
Requires-Dist: requests-toolbelt (>=1.0.0)
|
|
26
|
-
Requires-Dist: requests (>=2.25.0)
|
|
27
|
-
Requires-Dist: numpy (>=1.16.2)
|
|
28
|
-
Requires-Dist: pandas (>=0.24.2)
|
|
29
|
-
Requires-Dist: tabulate (>=0.8.9)
|
|
30
|
-
Requires-Dist: Pillow (>=7.2)
|
|
31
|
-
Requires-Dist: PyJWT (>=2.4)
|
|
32
|
-
Requires-Dist: jinja2 (>=2.11.3)
|
|
33
|
-
Requires-Dist: attrs (<=22.2.0)
|
|
34
|
-
Requires-Dist: prompt-toolkit (>=2.0.9)
|
|
35
|
-
Requires-Dist: fuzzyfinder (<=2.1.0)
|
|
36
|
-
Requires-Dist: dictdiffer (>=0.8.1)
|
|
37
|
-
Requires-Dist: validators (<=0.18.2)
|
|
38
|
-
Requires-Dist: pathspec (>=0.8.1)
|
|
39
|
-
Requires-Dist: filelock (>=3.0.12)
|
|
40
|
-
Requires-Dist: diskcache (>=5.4)
|
|
41
|
-
Requires-Dist: redis (>=3.5)
|
|
42
|
-
Requires-Dist: inquirer
|
|
43
|
-
Requires-Dist: dtlpymetrics
|
|
44
|
-
Requires-Dist: dataclasses
|
|
45
|
-
|
|
46
|
-

|
|
47
|
-
[](https://sdk-docs.dataloop.ai/en/latest/?badge=latest)
|
|
48
|
-
[](https://pypi.org/project/dtlpy/)
|
|
49
|
-
[](https://github.com/dataloop-ai/dtlpy)
|
|
50
|
-
[](https://github.com/dataloop-ai/dtlpy/blob/master/LICENSE)
|
|
51
|
-
[](https://pepy.tech/project/dtlpy)
|
|
52
|
-
|
|
53
|
-
This is the SDK and CLI open source repository for [Dataloop.ai](https://dataloop.ai/) platform
|
|
54
|
-
|
|
55
|
-
For full platform documentation click [here](https://dataloop.ai/docs)
|
|
56
|
-
|
|
57
|
-
For full SDK documentation click [here](https://console.dataloop.ai/sdk-docs/latest)
|
|
58
|
-
|
|
59
|
-
### Python Support
|
|
60
|
-
|
|
61
|
-
#### Dtlpy supports these Python versions.
|
|
62
|
-
|
|
63
|
-
| Python | 3.11 | 3.10 | 3.9 | 3.8 | 3.7 | 3.6 | 3.5 |
|
|
64
|
-
|-------------------|------|------|-----|-----|-----|-----|-----|
|
|
65
|
-
| dtlpy >= 1.99 | Yes | Yes | Yes | Yes | Yes | | |
|
|
66
|
-
| dtlpy 1.76 - 1.98 | Yes | Yes | Yes | Yes | Yes | Yes | |
|
|
67
|
-
| dtlpy >= 1.61 | | Yes | Yes | Yes | Yes | Yes | |
|
|
68
|
-
| dtlpy 1.60 - 1.50 | | | Yes | Yes | Yes | Yes | |
|
|
69
|
-
| dtlpy <= 1.49 | | | Yes | Yes | Yes | Yes | Yes |
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|