digitalhub 0.10.0b4__py3-none-any.whl → 0.10.0b5__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 digitalhub might be problematic. Click here for more details.

@@ -118,7 +118,7 @@ class ClientDHCoreConfigurator:
118
118
  The url.
119
119
  """
120
120
  api = api.removeprefix("/")
121
- return f"{configurator.get_credentials(DhcoreEnvVar.ENDPOINT.value)}/{api}"
121
+ return f"{configurator.get_credential(DhcoreEnvVar.ENDPOINT.value)}/{api}"
122
122
 
123
123
  ##############################
124
124
  # Private methods
@@ -193,7 +193,7 @@ class ClientDHCoreConfigurator:
193
193
  -------
194
194
  bool
195
195
  """
196
- auth_type = configurator.get_credentials(AUTH_KEY)
196
+ auth_type = configurator.get_credential(AUTH_KEY)
197
197
  return auth_type == AuthType.BASIC.value
198
198
 
199
199
  def oauth2_auth(self) -> bool:
@@ -204,7 +204,7 @@ class ClientDHCoreConfigurator:
204
204
  -------
205
205
  bool
206
206
  """
207
- auth_type = configurator.get_credentials(AUTH_KEY)
207
+ auth_type = configurator.get_credential(AUTH_KEY)
208
208
  return auth_type == AuthType.OAUTH2.value
209
209
 
210
210
  def set_request_auth(self, kwargs: dict) -> dict:
@@ -221,7 +221,7 @@ class ClientDHCoreConfigurator:
221
221
  dict
222
222
  Authentication header.
223
223
  """
224
- creds = configurator.get_all_cred()
224
+ creds = configurator.get_all_credentials()
225
225
  if AUTH_KEY not in creds:
226
226
  return kwargs
227
227
  if self.basic_auth():
@@ -66,7 +66,7 @@ class EnvConfigurator:
66
66
  str | None
67
67
  Environment variable value.
68
68
  """
69
- var = self.get_credentials(var_name)
69
+ var = self.get_credential(var_name)
70
70
  if var is None:
71
71
  var = self.load_from_env(var_name)
72
72
  if var is None:
@@ -123,7 +123,7 @@ class EnvConfigurator:
123
123
  """
124
124
  if key_to_include is None:
125
125
  key_to_include = []
126
- creds = self.get_cred_list(key_to_include)
126
+ creds = self.get_credential_list(key_to_include)
127
127
  write_config(creds, self._environment)
128
128
 
129
129
  ##############################
@@ -147,9 +147,9 @@ class EnvConfigurator:
147
147
  """
148
148
  self._creds_store.set(self._environment, key, value)
149
149
 
150
- def get_credentials(self, key: str) -> dict:
150
+ def get_credential(self, key: str) -> dict:
151
151
  """
152
- Get the credentials.
152
+ Get single credential value from key.
153
153
 
154
154
  Parameters
155
155
  ----------
@@ -159,13 +159,13 @@ class EnvConfigurator:
159
159
  Returns
160
160
  -------
161
161
  dict
162
- The credentials.
162
+ The credential.
163
163
  """
164
164
  return self._creds_store.get(self._environment, key)
165
165
 
166
- def get_all_cred(self) -> dict:
166
+ def get_all_credentials(self) -> dict:
167
167
  """
168
- Get all the credentials.
168
+ Get all the credentials from the current credentials set.
169
169
 
170
170
  Returns
171
171
  -------
@@ -174,7 +174,7 @@ class EnvConfigurator:
174
174
  """
175
175
  return self._creds_store.get_all(self._environment)
176
176
 
177
- def get_cred_list(self, keys: list[str]) -> list[str]:
177
+ def get_credential_list(self, keys: list[str]) -> list[str]:
178
178
  """
179
179
  Get the list of credentials.
180
180
 
@@ -188,7 +188,8 @@ class EnvConfigurator:
188
188
  list[str]
189
189
  The list of credentials.
190
190
  """
191
- return {k: v for k, v in self.get_all_cred().items() if k in keys}
191
+ return {k: v for k, v in self.get_all_credentials().items() if k in keys}
192
192
 
193
193
 
194
+ # Define global configurator
194
195
  configurator = EnvConfigurator()
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  from pydantic import BaseModel
4
4
 
5
- from digitalhub.utils.types import MetricType
5
+ from digitalhub.entities._commons.types import MetricType
6
6
 
7
7
 
8
8
  class Metric(BaseModel):
@@ -0,0 +1,5 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Union
4
+
5
+ MetricType = Union[float, int, list[Union[float, int]]]
@@ -6,7 +6,7 @@ from pydantic import ValidationError
6
6
 
7
7
  from digitalhub.entities._commons.enums import EntityTypes
8
8
  from digitalhub.entities._commons.models import Metric
9
- from digitalhub.utils.types import MetricType
9
+ from digitalhub.entities._commons.types import MetricType
10
10
 
11
11
 
12
12
  def parse_entity_key(key: str) -> tuple[str, str, str, str | None, str]:
@@ -649,12 +649,12 @@ class OperationsProcessor:
649
649
  dict
650
650
  Object instance.
651
651
  """
652
- if not identifier.startswith("store://"):
653
- if project is None or entity_type is None:
654
- raise ValueError("Project and entity type must be specified.")
655
- entity_name = identifier
656
- else:
657
- project, entity_type, _, entity_name, entity_id = parse_entity_key(identifier)
652
+ project, entity_type, _, entity_name, entity_id = self._parse_identifier(
653
+ identifier,
654
+ project=project,
655
+ entity_type=entity_type,
656
+ entity_id=entity_id,
657
+ )
658
658
 
659
659
  kwargs = self._set_params(**kwargs)
660
660
 
@@ -918,12 +918,11 @@ class OperationsProcessor:
918
918
  list[dict]
919
919
  Object instances.
920
920
  """
921
- if not identifier.startswith("store://"):
922
- if project is None or entity_type is None:
923
- raise ValueError("Project and entity type must be specified.")
924
- entity_name = identifier
925
- else:
926
- project, entity_type, _, entity_name, _ = parse_entity_key(identifier)
921
+ project, entity_type, _, entity_name, _ = self._parse_identifier(
922
+ identifier,
923
+ project=project,
924
+ entity_type=entity_type,
925
+ )
927
926
 
928
927
  kwargs = self._set_params(**kwargs)
929
928
  kwargs["params"]["name"] = entity_name
@@ -1768,6 +1767,39 @@ class OperationsProcessor:
1768
1767
  # Helpers
1769
1768
  ##############################
1770
1769
 
1770
+ @staticmethod
1771
+ def _parse_identifier(
1772
+ identifier: str,
1773
+ project: str | None = None,
1774
+ entity_type: str | None = None,
1775
+ entity_kind: str | None = None,
1776
+ entity_id: str | None = None,
1777
+ ) -> tuple[str, str, str, str | None, str]:
1778
+ """
1779
+ Parse entity identifier.
1780
+
1781
+ Parameters
1782
+ ----------
1783
+ identifier : str
1784
+ Entity key (store://...) or entity name.
1785
+ project : str
1786
+ Project name.
1787
+ entity_type : str
1788
+ Entity type.
1789
+ entity_id : str
1790
+ Entity ID.
1791
+
1792
+ Returns
1793
+ -------
1794
+ tuple[str, str, str, str | None, str]
1795
+ Project name, entity type, entity kind, entity name, entity ID.
1796
+ """
1797
+ if not identifier.startswith("store://"):
1798
+ if project is None or entity_type is None:
1799
+ raise ValueError("Project and entity type must be specified.")
1800
+ return project, entity_type, entity_kind, identifier, entity_id
1801
+ return parse_entity_key(identifier)
1802
+
1771
1803
  @staticmethod
1772
1804
  def _set_params(**kwargs) -> dict:
1773
1805
  """
@@ -10,6 +10,7 @@ from digitalhub.entities._base.material.utils import build_log_path_from_source,
10
10
  from digitalhub.entities._commons.enums import EntityKinds, EntityTypes
11
11
  from digitalhub.readers.data.api import get_reader_by_object
12
12
  from digitalhub.stores.api import get_store
13
+ from digitalhub.utils.enums import FileExtensions
13
14
  from digitalhub.utils.generic_utils import slugify_string
14
15
  from digitalhub.utils.types import SourcesOrListOfSources
15
16
 
@@ -17,7 +18,7 @@ if typing.TYPE_CHECKING:
17
18
  from digitalhub.entities.dataitem._base.entity import Dataitem
18
19
 
19
20
 
20
- DEFAULT_EXTENSION = "parquet"
21
+ DEFAULT_EXTENSION = FileExtensions.PARQUET.value
21
22
 
22
23
 
23
24
  def eval_source(
@@ -25,10 +25,10 @@ def import_module(package: str) -> ModuleType:
25
25
  """
26
26
  try:
27
27
  return importlib.import_module(package)
28
- except ModuleNotFoundError:
29
- raise ModuleNotFoundError(f"Package {package} not found.")
28
+ except ModuleNotFoundError as e:
29
+ raise ModuleNotFoundError(f"Package {package} not found.") from e
30
30
  except Exception as e:
31
- raise e
31
+ raise RuntimeError(f"An error occurred while importing {package}.") from e
32
32
 
33
33
 
34
34
  def list_runtimes() -> list[str]:
@@ -37,18 +37,18 @@ def list_runtimes() -> list[str]:
37
37
 
38
38
  Returns
39
39
  -------
40
- list
40
+ list[str]
41
41
  List of installed runtimes names.
42
42
  """
43
43
  pattern = r"digitalhub_runtime_.*"
44
- runtimes = []
44
+ runtimes: list[str] = []
45
45
  try:
46
46
  for _, name, _ in pkgutil.iter_modules():
47
47
  if re.match(pattern, name):
48
48
  runtimes.append(name)
49
49
  return runtimes
50
- except Exception:
51
- raise RuntimeError("Error listing installed runtimes.")
50
+ except Exception as e:
51
+ raise RuntimeError("Error listing installed runtimes.") from e
52
52
 
53
53
 
54
54
  def register_runtimes_entities() -> None:
@@ -86,5 +86,5 @@ def register_entities() -> None:
86
86
  for entity_builder_tuple in entities_builders_list:
87
87
  kind, builder = entity_builder_tuple
88
88
  factory.add_entity_builder(kind, builder)
89
- except Exception:
90
- raise
89
+ except Exception as e:
90
+ raise RuntimeError("Error registering entities.") from e
@@ -10,7 +10,7 @@ from pandas.errors import ParserError
10
10
 
11
11
  from digitalhub.entities.dataitem.table.utils import check_preview_size, finalize_preview, prepare_data, prepare_preview
12
12
  from digitalhub.readers.data._base.reader import DataframeReader
13
- from digitalhub.readers.data.pandas.enums import Extensions
13
+ from digitalhub.utils.enums import FileExtensions
14
14
  from digitalhub.utils.exceptions import ReaderError
15
15
  from digitalhub.utils.generic_utils import CustomJsonEncoder
16
16
 
@@ -42,17 +42,17 @@ class DataframeReaderPandas(DataframeReader):
42
42
  pd.DataFrame
43
43
  Pandas DataFrame.
44
44
  """
45
- if extension == Extensions.CSV.value:
45
+ if extension == FileExtensions.CSV.value:
46
46
  return pd.read_csv(path_or_buffer, **kwargs)
47
- if extension == Extensions.PARQUET.value:
47
+ if extension == FileExtensions.PARQUET.value:
48
48
  return pd.read_parquet(path_or_buffer, **kwargs)
49
- if extension == Extensions.JSON.value:
49
+ if extension == FileExtensions.JSON.value:
50
50
  return pd.read_json(path_or_buffer, **kwargs)
51
- if extension in (Extensions.EXCEL.value, Extensions.EXCEL_OLD.value):
51
+ if extension in (FileExtensions.EXCEL.value, FileExtensions.EXCEL_OLD.value):
52
52
  return pd.read_excel(path_or_buffer, **kwargs)
53
- if extension in (Extensions.TXT.value, Extensions.FILE.value):
53
+ if extension in (FileExtensions.TXT.value, FileExtensions.FILE.value):
54
54
  try:
55
- return self.read_df(path_or_buffer, Extensions.CSV.value, **kwargs)
55
+ return self.read_df(path_or_buffer, FileExtensions.CSV.value, **kwargs)
56
56
  except ParserError:
57
57
  raise ReaderError(f"Unable to read from {path_or_buffer}.")
58
58
  else:
@@ -105,9 +105,9 @@ class DataframeReaderPandas(DataframeReader):
105
105
  -------
106
106
  None
107
107
  """
108
- if extension == Extensions.CSV.value:
108
+ if extension == FileExtensions.CSV.value:
109
109
  return self.write_csv(df, dst, **kwargs)
110
- if extension == Extensions.PARQUET.value:
110
+ if extension == FileExtensions.PARQUET.value:
111
111
  return self.write_parquet(df, dst, **kwargs)
112
112
  raise ReaderError(f"Unsupported extension '{extension}' for writing.")
113
113
 
@@ -61,7 +61,7 @@ class S3StoreConfigurator:
61
61
  dict
62
62
  The credentials.
63
63
  """
64
- creds = configurator.get_all_cred()
64
+ creds = configurator.get_all_credentials()
65
65
  try:
66
66
  return {
67
67
  "endpoint_url": creds[S3StoreEnv.ENDPOINT_URL.value],
@@ -8,10 +8,10 @@ class S3StoreEnv(Enum):
8
8
  S3Store environment
9
9
  """
10
10
 
11
- ENDPOINT_URL = "S3_ENDPOINT_URL"
12
- ACCESS_KEY_ID = "AWS_ACCESS_KEY_ID"
13
- SECRET_ACCESS_KEY = "AWS_SECRET_ACCESS_KEY"
14
- SESSION_TOKEN = "AWS_SESSION_TOKEN"
15
- BUCKET_NAME = "S3_BUCKET"
16
- REGION = "S3_REGION"
17
- SIGNATURE_VERSION = "S3_SIGNATURE_VERSION"
11
+ ENDPOINT_URL = "DHCORE_S3_ENDPOINT_URL"
12
+ ACCESS_KEY_ID = "DHCORE_AWS_ACCESS_KEY_ID"
13
+ SECRET_ACCESS_KEY = "DHCORE_AWS_SECRET_ACCESS_KEY"
14
+ SESSION_TOKEN = "DHCORE_AWS_SESSION_TOKEN"
15
+ BUCKET_NAME = "DHCORE_S3_BUCKET"
16
+ REGION = "DHCORE_S3_REGION"
17
+ SIGNATURE_VERSION = "DHCORE_S3_SIGNATURE_VERSION"
@@ -55,7 +55,7 @@ class SqlStoreConfigurator:
55
55
  str
56
56
  The connection string.
57
57
  """
58
- creds = configurator.get_all_cred()
58
+ creds = configurator.get_all_credentials()
59
59
  try:
60
60
  user = creds[SqlStoreEnv.USERNAME.value]
61
61
  password = creds[SqlStoreEnv.PASSWORD.value]
@@ -8,9 +8,9 @@ class SqlStoreEnv(Enum):
8
8
  SqlStore environment
9
9
  """
10
10
 
11
- HOST = "DB_HOST"
12
- PORT = "DB_PORT"
13
- USERNAME = "DB_USERNAME"
14
- PASSWORD = "DB_PASSWORD"
15
- DATABASE = "DB_DATABASE"
16
- PG_SCHEMA = "DB_SCHEMA"
11
+ HOST = "DHCORE_DB_HOST"
12
+ PORT = "DHCORE_DB_PORT"
13
+ USERNAME = "DHCORE_DB_USERNAME"
14
+ PASSWORD = "DHCORE_DB_PASSWORD"
15
+ DATABASE = "DHCORE_DB_DATABASE"
16
+ PG_SCHEMA = "DHCORE_DB_SCHEMA"
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  from enum import Enum
4
4
 
5
5
 
6
- class Extensions(Enum):
6
+ class FileExtensions(Enum):
7
7
  """
8
8
  Supported file extensions.
9
9
  """
digitalhub/utils/types.py CHANGED
@@ -2,5 +2,4 @@ from __future__ import annotations
2
2
 
3
3
  from typing import Union
4
4
 
5
- MetricType = Union[float, int, list[Union[float, int]]]
6
5
  SourcesOrListOfSources = Union[str, list[str]]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digitalhub
3
- Version: 0.10.0b4
3
+ Version: 0.10.0b5
4
4
  Summary: Python SDK for Digitalhub
5
5
  Project-URL: Homepage, https://github.com/scc-digitalhub/digitalhub-sdk
6
6
  Author-email: Fondazione Bruno Kessler <dslab@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
@@ -9,7 +9,7 @@ digitalhub/client/_base/key_builder.py,sha256=xl3jM7z2eLP6HfPXusmZyLqsvfKHQfxfZ3
9
9
  digitalhub/client/dhcore/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  digitalhub/client/dhcore/api_builder.py,sha256=r0ic81Z1B0iG7esgU199UEQ1_Emx6zatoTe-2pUPviM,3969
11
11
  digitalhub/client/dhcore/client.py,sha256=XK6N2CoEoVK7AXHqJZQmWq1yzfY7K-Ld2qHrp6mwRww,9631
12
- digitalhub/client/dhcore/configurator.py,sha256=D5FUipdAL9ou5FIC4c7NTwNdxDbsu2n0DFup4TqF0bY,10515
12
+ digitalhub/client/dhcore/configurator.py,sha256=gu-3mpFdaT8sU-f6UCKngOjJOmwt0y00_6zyo0QPyVY,10519
13
13
  digitalhub/client/dhcore/enums.py,sha256=kaVXZTTa2WmsFbcc1CKWNLOM0JtUtcjL-KpspnTOhEE,523
14
14
  digitalhub/client/dhcore/error_parser.py,sha256=GJUUkhp12cvC_LBIrC0teh4msmyb5WFxY2g4WNOkUwM,3305
15
15
  digitalhub/client/dhcore/key_builder.py,sha256=VyyHk18rs1z8FKoRXGD2glb_WCipCWoYsS50_jYQpC4,1317
@@ -22,7 +22,7 @@ digitalhub/client/local/enums.py,sha256=FCwzQnYClB8Z7h8hrd_CXV78gHs15eawwLPGtCYz
22
22
  digitalhub/client/local/key_builder.py,sha256=jO5RHMRe5bxygX3rbD7TOqBafvO6FJcEOymsnJbjyuY,1316
23
23
  digitalhub/configurator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
24
  digitalhub/configurator/api.py,sha256=xg0HilqnZIe9XUz65QoTP5yQxOyeWzo_xC9YpMNUDVY,553
25
- digitalhub/configurator/configurator.py,sha256=UaHrU4FudnZvqux2kUyLywVaOb74QxhHeBLQUDJDVNU,4430
25
+ digitalhub/configurator/configurator.py,sha256=ShYktRJSRQFxLhCB_KaBXUPYamEIZ1iUseOffxPzPLM,4532
26
26
  digitalhub/configurator/credentials_store.py,sha256=kiaCm37Sl1SN9OaMbsfZA1l1a9Xg6R6a00H7Upcf8Vg,1508
27
27
  digitalhub/configurator/ini_module.py,sha256=_FziztUjs0Y7MfbO1utmxWm75vx4yAm4OTyQoOgqYTQ,1828
28
28
  digitalhub/context/api.py,sha256=un-_HU7JC3t-eQKleVJ9cCDS8BtQFRHSrP3VDHs3gPU,1099
@@ -66,10 +66,11 @@ digitalhub/entities/_base/versioned/builder.py,sha256=0niRbqpCnHqBK0hTQxdrtUl43B
66
66
  digitalhub/entities/_base/versioned/entity.py,sha256=xtvVJfmJTfCAA96va1-r7B2j7wbXlkutGMil--PWP4I,885
67
67
  digitalhub/entities/_commons/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
68
  digitalhub/entities/_commons/enums.py,sha256=rifutpsNcssUN7JaSe5t0C4L2CeT89-7pD-_gbjbw58,1885
69
- digitalhub/entities/_commons/models.py,sha256=1zFR0bN5a-BptPj5vsXVzPStdFk5TMKEXp7gj9OuY8Q,192
70
- digitalhub/entities/_commons/utils.py,sha256=YWjc_nlbDeBtcUa2isuThuVVBs6xFLPN-QE7s0DvedQ,2449
69
+ digitalhub/entities/_commons/models.py,sha256=sEYm4Zs0GJAKEA8vfnndPTHJXC5Eq521bRgPieVVyTA,204
70
+ digitalhub/entities/_commons/types.py,sha256=bwK-2iQHL2gdtOPfRcXWBRWqqS1Tic6ywRQsJSocn9c,118
71
+ digitalhub/entities/_commons/utils.py,sha256=WS6gfauLbMsYGS9mDG9ZvATOBURvoVJP7vmSGpDVC44,2461
71
72
  digitalhub/entities/_operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
- digitalhub/entities/_operations/processor.py,sha256=QVgPG0UyZCDspOvZqWkE4_cSJh7eQpMOr2ZFBYAL57o,49399
73
+ digitalhub/entities/_operations/processor.py,sha256=ccZEWLLzVnxs46yUJWIKO5bH8IKOkQL0wJMaWvXU2Z4,50196
73
74
  digitalhub/entities/artifact/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
75
  digitalhub/entities/artifact/crud.py,sha256=76466GQatBBgPvPqiSGcIA_Aqf96LS2-X_DKRnt4Ry4,7905
75
76
  digitalhub/entities/artifact/utils.py,sha256=Sqjqi5VxIFnX7AFjUIPAhbZOV3ieqYJN8rgVKSfmN7I,1323
@@ -85,7 +86,7 @@ digitalhub/entities/artifact/artifact/spec.py,sha256=XAnk0YPlLEIglPZ9cP5-gJwJ5f1
85
86
  digitalhub/entities/artifact/artifact/status.py,sha256=x-lTgO2KkjwzlJnEhIfUtF9rzJ1DTIAd3-Hn6ZeLRqo,305
86
87
  digitalhub/entities/dataitem/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
88
  digitalhub/entities/dataitem/crud.py,sha256=rbNv-9JmNA91BmRaMK5rw8binZTCzG_IJBi1zr6xq58,8502
88
- digitalhub/entities/dataitem/utils.py,sha256=_L0JLBm5HwXhMikLCxu4dTo8qnsTFiIwSyPQZLNeVdU,4318
89
+ digitalhub/entities/dataitem/utils.py,sha256=pwlk7IAT1KTa18VuOfCK2IZvRRCOU4eiWGaSwL5SYA4,4387
89
90
  digitalhub/entities/dataitem/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
91
  digitalhub/entities/dataitem/_base/builder.py,sha256=XZ5Ul-aBkx6ygpN9rhjNQOD-6jzJhulyM0WCD-f3big,2256
91
92
  digitalhub/entities/dataitem/_base/entity.py,sha256=J8G7Xm_AKETg02RtNHlUyM-bmvT__HKu1Npv4Od037A,945
@@ -186,7 +187,7 @@ digitalhub/entities/workflow/_base/status.py,sha256=W0j0CNdu9o2vbk0awpnDrpgwf_fZ
186
187
  digitalhub/factory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
187
188
  digitalhub/factory/api.py,sha256=tTlALvPLPE-vjdPByAXXXjIEGpm4-_zB08A_F3be4f8,5479
188
189
  digitalhub/factory/factory.py,sha256=4SYBK3q1EmVjxgiZnnGNqDJtQSs4RPatftx6duD9rEU,6482
189
- digitalhub/factory/utils.py,sha256=3yVn0CUerb2TQh67rLWvgEt-JWv-S3oxpjZCty9JfuU,2234
190
+ digitalhub/factory/utils.py,sha256=PqdqIG7lfH7k4Qw53d120OiBKPXInwnHhCn-Dt9BrDU,2397
190
191
  digitalhub/readers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
191
192
  digitalhub/readers/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
192
193
  digitalhub/readers/data/api.py,sha256=XjHNdiXclhxBat2DtWfWWIK-0z-cUZ9RvbQar6Q3pKY,1844
@@ -196,8 +197,7 @@ digitalhub/readers/data/_base/builder.py,sha256=Fv8n5kcXpAb4gSuUAWWS394bx_tvZW_9
196
197
  digitalhub/readers/data/_base/reader.py,sha256=D8Vfcys4uIlXnVbyKh6KI58b_tXSmiN94YzX-WDthrY,1754
197
198
  digitalhub/readers/data/pandas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
198
199
  digitalhub/readers/data/pandas/builder.py,sha256=GskCPKJ33-YXiGEqmlasIyFMiy2F_ged22NxxncivCg,682
199
- digitalhub/readers/data/pandas/enums.py,sha256=9GTiGrvRoaQTGbAZphXCrJnC13Cx0dg4KTNmE4AasdA,265
200
- digitalhub/readers/data/pandas/reader.py,sha256=KtU178Yt4XoEdpbrqnzGlUOlaBkK9N74uqHj5wMr3vA,7944
200
+ digitalhub/readers/data/pandas/reader.py,sha256=7Ba1A5vUxo0Wx-zkaCLj6ZFyknP40vnf9VZV1CTYmc4,7974
201
201
  digitalhub/readers/query/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
202
202
  digitalhub/runtimes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
203
203
  digitalhub/runtimes/_base.py,sha256=uDvSXAEytZr-BFpj1BA59vdERBk79j5pTDiG0__tazA,2510
@@ -213,26 +213,27 @@ digitalhub/stores/local/store.py,sha256=aljhQYaILZlj_qltCcsLVn1pTZYPmgs0Jqc26VRH
213
213
  digitalhub/stores/remote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
214
214
  digitalhub/stores/remote/store.py,sha256=wxB0t3zjKDSFgtKbT1-yPLT_Qm07UkpBCpZfHbD7BzM,6181
215
215
  digitalhub/stores/s3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
216
- digitalhub/stores/s3/configurator.py,sha256=t0Ct98_4WgvDm6MExaFzekUhJu5AtLd3XEAw9ALJkj8,3727
217
- digitalhub/stores/s3/enums.py,sha256=tmSavz83jr6SBW-Gqn4D21TJpFytxvbtbW63htmZG2A,392
216
+ digitalhub/stores/s3/configurator.py,sha256=qoj3sZCTwojUw5b-8xYyDTC9eRwgjqIHnVbSxWj3hFY,3734
217
+ digitalhub/stores/s3/enums.py,sha256=1_OUTNDqw73ail4ovT-u4nSEBpGxnHPPMug4jyUlxFM,441
218
218
  digitalhub/stores/s3/models.py,sha256=qeXeL7iP76EBO35wzP6bYeMj-sBOY634Tjwx8h3Di2g,371
219
219
  digitalhub/stores/s3/store.py,sha256=ggmtwsAYhhBJUgbIh22vXJUSJTHloCszyEQqF64g1sk,19237
220
220
  digitalhub/stores/s3/utils.py,sha256=5ATkIRThtssu52dPrkWnK-nhD5pc6rlrHLNofjiQzt4,1500
221
221
  digitalhub/stores/sql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
222
- digitalhub/stores/sql/configurator.py,sha256=Pg-89YZCNA6q6G46cI-PSVg80wIjFChjC74wxBSjhcc,3175
223
- digitalhub/stores/sql/enums.py,sha256=FCpmIXxef6SQIX_564a1hYvaSVrpvld8gi7YAv25H-o,284
222
+ digitalhub/stores/sql/configurator.py,sha256=7TLU9mdLzMUsJI39pe-xWqsnzdiAmDmSXBeJG6MEBY8,3182
223
+ digitalhub/stores/sql/enums.py,sha256=dEwUEHFM-MToT0IuIYSqKgpy8mk8MXwZs1HuFI05K9I,326
224
224
  digitalhub/stores/sql/models.py,sha256=_itIXoCfRLzUpG0OaM44qbv2u87Lyl5e0tmAXNTvfjQ,349
225
225
  digitalhub/stores/sql/store.py,sha256=4i2j8h71E-lrGYI9kUzwLpZfonYjIY1osuTvy0s8CcA,11327
226
226
  digitalhub/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
227
+ digitalhub/utils/enums.py,sha256=BjsLkUQ15W3KYTRYd0kuut77jTNMDBtTfJbixMReEew,269
227
228
  digitalhub/utils/exceptions.py,sha256=CGiRXx6OvYpjg6d9yEn2OvyfF0FA5n1l8uH6loCDoAY,1233
228
229
  digitalhub/utils/file_utils.py,sha256=qRb0ETNaQKwBlF5iwflDFlkrku5TvJXHHhxgHtAeS9w,5117
229
230
  digitalhub/utils/generic_utils.py,sha256=8JKmfe1UMYqzrqfptMJZ7x-EvD1-zVNLfBcGoVl8Wcg,4870
230
231
  digitalhub/utils/git_utils.py,sha256=air8jn73FxzSWRxpvObcdOJBWcFOqb5A7D4ISwPEs7A,3244
231
232
  digitalhub/utils/io_utils.py,sha256=8jD4Rp_b7LZEpY5JSMxVUowZsnifKnbGpHT5Hijx9-g,3299
232
233
  digitalhub/utils/logger.py,sha256=ml3ne6D8wuRdNZ4F6ywmvWotSxjmZWnmKgNiuHb4R5M,437
233
- digitalhub/utils/types.py,sha256=pq5OVNLJx6ayTVa1SHgq1MzE-XUW4qipBFLzN1x0ovc,165
234
+ digitalhub/utils/types.py,sha256=x8zXsbivD8vdaNeNRZLKOPvGbz6d-59nncuvO0FsueY,109
234
235
  digitalhub/utils/uri_utils.py,sha256=6W3ITWcOwlpmA42rmgld7f2t1RpNF2pYXadWpmEQeBM,3832
235
- digitalhub-0.10.0b4.dist-info/METADATA,sha256=GGLEMolKJZZ6CKcO3oqBtHBxcBQEnFKSXqg-1GkI4p4,15173
236
- digitalhub-0.10.0b4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
237
- digitalhub-0.10.0b4.dist-info/licenses/LICENSE.txt,sha256=qmrTTXPlgU0kSRlRVbjhlyGs1IXs2QPxo_Y-Mn06J0k,11589
238
- digitalhub-0.10.0b4.dist-info/RECORD,,
236
+ digitalhub-0.10.0b5.dist-info/METADATA,sha256=P3Q6yTbrThHtwypwMBtWjytNOiGXc89mUI9sTDZrRx0,15173
237
+ digitalhub-0.10.0b5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
238
+ digitalhub-0.10.0b5.dist-info/licenses/LICENSE.txt,sha256=qmrTTXPlgU0kSRlRVbjhlyGs1IXs2QPxo_Y-Mn06J0k,11589
239
+ digitalhub-0.10.0b5.dist-info/RECORD,,