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.
Files changed (34) hide show
  1. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/PKG-INFO +1 -1
  2. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/backend.py +30 -6
  3. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/client.py +0 -7
  4. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/PKG-INFO +1 -1
  5. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/setup.py +1 -1
  6. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/README.md +0 -0
  7. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/__init__.py +0 -0
  8. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/__init__.py +0 -0
  9. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/apis/third_party.py +0 -0
  10. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/connections.py +0 -0
  11. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/constants.py +0 -0
  12. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/exceptions/__init__.py +0 -0
  13. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/exceptions/client.py +0 -0
  14. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/__init__.py +0 -0
  15. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/base.py +0 -0
  16. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/coco.py +0 -0
  17. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/constant.py +0 -0
  18. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/exporter.py +0 -0
  19. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/utils.py +0 -0
  20. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/visionai.py +0 -0
  21. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/vqa.py +0 -0
  22. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/export/yolo.py +0 -0
  23. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/__init__.py +0 -0
  24. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/api.py +0 -0
  25. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/client.py +0 -0
  26. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/common.py +0 -0
  27. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/schemas/format.py +0 -0
  28. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/utils/__init__.py +0 -0
  29. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk/utils/utils.py +0 -0
  30. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/SOURCES.txt +0 -0
  31. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/dependency_links.txt +0 -0
  32. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/requires.txt +0 -0
  33. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/dataverse_sdk.egg-info/top_level.txt +0 -0
  34. {dataverse_sdk-2.4.2 → dataverse_sdk-2.4.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dataverse-sdk
3
- Version: 2.4.2
3
+ Version: 2.4.3
4
4
  Summary: Dataverse SDK For Python
5
5
  Home-page:
6
6
  Author: LinkerVision
@@ -17,13 +17,26 @@ from ..utils.utils import chunks
17
17
  logger = logging.getLogger(__name__)
18
18
 
19
19
 
20
- class BackendAPI:
21
- adapter = HTTPAdapter(
22
- max_retries=Retry(
23
- total=10, backoff_factor=15, status_forcelist=[500, 502, 503, 504]
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(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dataverse-sdk
3
- Version: 2.4.2
3
+ Version: 2.4.3
4
4
  Summary: Dataverse SDK For Python
5
5
  Home-page:
6
6
  Author: LinkerVision
@@ -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.2"
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