dataverse-sdk 2.4.2__tar.gz → 2.4.3__tar.gz
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.
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/PKG-INFO +1 -1
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/backend.py +30 -6
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/client.py +0 -7
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/PKG-INFO +1 -1
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/setup.py +1 -1
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/README.md +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/third_party.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/connections.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/constants.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/exceptions/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/exceptions/client.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/base.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/coco.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/constant.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/exporter.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/utils.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/visionai.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/vqa.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/yolo.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/api.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/client.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/common.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/format.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/utils/__init__.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/utils/utils.py +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/SOURCES.txt +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/dependency_links.txt +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/requires.txt +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/top_level.txt +0 -0
- {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/setup.cfg +0 -0
|
@@ -17,13 +17,26 @@ from ..utils.utils import chunks
|
|
|
17
17
|
logger = logging.getLogger(__name__)
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
class
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
)
|
|
20
|
+
class LoggingRetry(Retry):
|
|
21
|
+
def __init__(self, host=None, *args, **kwargs):
|
|
22
|
+
super().__init__(*args, **kwargs)
|
|
23
|
+
self._host = host
|
|
24
|
+
|
|
25
|
+
def increment(self, method=None, url=None, *args, **kwargs):
|
|
26
|
+
if self.total is not None and self.total > 0:
|
|
27
|
+
full_url = f"{self._host}{url}" if self._host and url else url
|
|
28
|
+
attempt = len(self.history) + 1
|
|
29
|
+
print(
|
|
30
|
+
f"Retrying request to {full_url} (attempt {attempt} of {(self.total + attempt - 1)})"
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
new_retry = super().increment(method, url, *args, **kwargs)
|
|
34
|
+
# Preserve host in the new retry instance
|
|
35
|
+
new_retry._host = self._host
|
|
36
|
+
return new_retry
|
|
37
|
+
|
|
26
38
|
|
|
39
|
+
class BackendAPI:
|
|
27
40
|
def __init__(
|
|
28
41
|
self,
|
|
29
42
|
host: str,
|
|
@@ -34,6 +47,14 @@ class BackendAPI:
|
|
|
34
47
|
):
|
|
35
48
|
# TODO: Support api versioning
|
|
36
49
|
self.host = host
|
|
50
|
+
self.adapter = HTTPAdapter(
|
|
51
|
+
max_retries=LoggingRetry(
|
|
52
|
+
host=host,
|
|
53
|
+
total=10,
|
|
54
|
+
backoff_factor=15,
|
|
55
|
+
status_forcelist=[500, 502, 503, 504],
|
|
56
|
+
)
|
|
57
|
+
)
|
|
37
58
|
self.headers = {
|
|
38
59
|
"Content-Type": "application/json",
|
|
39
60
|
"X-Request-Service-Id": service_id,
|
|
@@ -82,6 +103,9 @@ class BackendAPI:
|
|
|
82
103
|
raise
|
|
83
104
|
if resp.status_code in (401, 403, 404):
|
|
84
105
|
logger.exception(f"[{parent_func}] request forbidden.")
|
|
106
|
+
logger.exception(
|
|
107
|
+
f"Invalid response from {self.host} (HTTP {resp.status_code}). Host may not be a valid Dataverse API endpoint."
|
|
108
|
+
)
|
|
85
109
|
raise DataverseExceptionBase(status_code=resp.status_code, **resp.json())
|
|
86
110
|
|
|
87
111
|
if resp.status_code == 400:
|
|
@@ -1568,13 +1568,6 @@ of this project OR has been added before"
|
|
|
1568
1568
|
client=client, client_alias=client_alias, is_async=True
|
|
1569
1569
|
)
|
|
1570
1570
|
|
|
1571
|
-
host = api.get_host()
|
|
1572
|
-
if data_source != DataSource.LOCAL:
|
|
1573
|
-
if host not in DataverseHost:
|
|
1574
|
-
raise ValueError(
|
|
1575
|
-
"Import data source must be LOCAL if host is not in DataverseHost."
|
|
1576
|
-
)
|
|
1577
|
-
|
|
1578
1571
|
project_id = project.id
|
|
1579
1572
|
try:
|
|
1580
1573
|
raw_dataset_data: dict = DatasetAPISchema(
|
|
@@ -2,7 +2,7 @@ from setuptools import find_packages, setup
|
|
|
2
2
|
|
|
3
3
|
AUTHOR = "LinkerVision"
|
|
4
4
|
PACKAGE_NAME = "dataverse-sdk"
|
|
5
|
-
PACKAGE_VERSION = "2.4.
|
|
5
|
+
PACKAGE_VERSION = "2.4.3"
|
|
6
6
|
DESC = "Dataverse SDK For Python"
|
|
7
7
|
with open("README.md", encoding="utf-8") as fh:
|
|
8
8
|
long_description = fh.read()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|