ygg 0.1.25__py3-none-any.whl → 0.1.26__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.
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/METADATA +1 -1
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/RECORD +8 -8
- yggdrasil/databricks/sql/engine.py +1 -2
- yggdrasil/databricks/workspaces/databricks_path.py +40 -20
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/WHEEL +0 -0
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/entry_points.txt +0 -0
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/licenses/LICENSE +0 -0
- {ygg-0.1.25.dist-info → ygg-0.1.26.dist-info}/top_level.txt +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ygg-0.1.
|
|
1
|
+
ygg-0.1.26.dist-info/licenses/LICENSE,sha256=HrhfyXIkWY2tGFK11kg7vPCqhgh5DcxleloqdhrpyMY,11558
|
|
2
2
|
yggdrasil/__init__.py,sha256=6OPibApplA5TF4TeixkQO_qewpaAidYX-fSDvvKYcTI,91
|
|
3
3
|
yggdrasil/databricks/__init__.py,sha256=aGVve5mpoQtxSK2nfzrexjRPoutCIyaOnKZijkG4_QE,92
|
|
4
4
|
yggdrasil/databricks/compute/__init__.py,sha256=TVDwPmW2SOmHmnhzZhsvrWbrxZ_lEcgqe3l9BeB-oxM,218
|
|
@@ -8,12 +8,12 @@ yggdrasil/databricks/compute/remote.py,sha256=sVWBb_1YR-e33on6F5QYMLKwT6end6rolC
|
|
|
8
8
|
yggdrasil/databricks/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
yggdrasil/databricks/jobs/config.py,sha256=8Slfw4Wl7vu0kIlaUUqVqjjOgPwuULoo0rroENCbC20,11494
|
|
10
10
|
yggdrasil/databricks/sql/__init__.py,sha256=JZpQ9eCphDf1l4yzIZ7a7OLigxqXkqOgb0Mio7Rj09A,181
|
|
11
|
-
yggdrasil/databricks/sql/engine.py,sha256=
|
|
11
|
+
yggdrasil/databricks/sql/engine.py,sha256=bmkMoBij-8M-xohQK-sYb22OgBc1VIZRRVjw62CMWHk,30810
|
|
12
12
|
yggdrasil/databricks/sql/exceptions.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
13
|
yggdrasil/databricks/sql/statement_result.py,sha256=L-hrK5MVnH3XG57BpGmaETtRzYjAtYGQthgAPGVj618,12610
|
|
14
14
|
yggdrasil/databricks/sql/types.py,sha256=YgasSyq8sygk1h6ZOTcRwXAZWNKSuk-9g9VqlR8kJl4,5324
|
|
15
15
|
yggdrasil/databricks/workspaces/__init__.py,sha256=tNNS3A_Pl9FYkQ8nGERhr4VF-hwKrvh8k1W8vTaR0uo,58
|
|
16
|
-
yggdrasil/databricks/workspaces/databricks_path.py,sha256=
|
|
16
|
+
yggdrasil/databricks/workspaces/databricks_path.py,sha256=Ryoza649WRIHzbpIGjhvefwNFdSpe0-Y2ZJX6nImerw,31101
|
|
17
17
|
yggdrasil/databricks/workspaces/workspace.py,sha256=8T-d0DTq-s2zTkmMbaEeS_7AiZwcUDxorch9IbZACko,33333
|
|
18
18
|
yggdrasil/dataclasses/__init__.py,sha256=QVAvZnNl7gFYTLOVTfMkdQZf6o_WL8_UuDV1uTZ7Aeg,67
|
|
19
19
|
yggdrasil/dataclasses/dataclass.py,sha256=ln-D1-bbiCLBd2khRMGs4dFoxzJEEGzHTKekWCnF2uk,5436
|
|
@@ -49,8 +49,8 @@ yggdrasil/types/cast/registry.py,sha256=-88mq-U1pDSGbEC9PRY0zJCzloyBodXgeSRBPb6h
|
|
|
49
49
|
yggdrasil/types/cast/spark_cast.py,sha256=IHthM78dugabGXxNNW9sSHn-olDwzXcFdIFcPo9IiXU,23021
|
|
50
50
|
yggdrasil/types/cast/spark_pandas_cast.py,sha256=8PgJItF_XbyBcNuBnXkMQU3PBy3sAPEXZT9SXL2WbU4,4200
|
|
51
51
|
yggdrasil/types/cast/spark_polars_cast.py,sha256=ba1UOvY1ouGCro1Np9slXmJ4TEyWnUtwVEAwxGvPLlk,8336
|
|
52
|
-
ygg-0.1.
|
|
53
|
-
ygg-0.1.
|
|
54
|
-
ygg-0.1.
|
|
55
|
-
ygg-0.1.
|
|
56
|
-
ygg-0.1.
|
|
52
|
+
ygg-0.1.26.dist-info/METADATA,sha256=3htWnURwJn36QKT6AYSn9syodfAo3ZdLa6qEN4cuUO8,19204
|
|
53
|
+
ygg-0.1.26.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
54
|
+
ygg-0.1.26.dist-info/entry_points.txt,sha256=D0JDw2s-ZfU1GjXfniv6PvXwcyn5v9WBk4ya623Cti8,71
|
|
55
|
+
ygg-0.1.26.dist-info/top_level.txt,sha256=iBe9Kk4VIVbLpgv_p8OZUIfxgj4dgJ5wBg6vO3rigso,10
|
|
56
|
+
ygg-0.1.26.dist-info/RECORD,,
|
|
@@ -439,8 +439,7 @@ FROM parquet.`{databricks_tmp_folder}`"""
|
|
|
439
439
|
try:
|
|
440
440
|
databricks_tmp_folder.rmdir(recursive=True)
|
|
441
441
|
except Exception as e:
|
|
442
|
-
|
|
443
|
-
logger.error(e)
|
|
442
|
+
logger.warning(e)
|
|
444
443
|
|
|
445
444
|
# Optionally run OPTIMIZE / ZORDER / VACUUM if requested (Databricks SQL)
|
|
446
445
|
if zorder_by:
|
|
@@ -115,10 +115,11 @@ class DatabricksPath(SysPath, PurePosixPath):
|
|
|
115
115
|
"""
|
|
116
116
|
if isinstance(template, DatabricksPath):
|
|
117
117
|
# Recompute kind for the NEW path string (don’t blindly copy _kind)
|
|
118
|
-
|
|
118
|
+
temp_ws = getattr(template, "_workspace", None)
|
|
119
|
+
kind, ws, _ = DatabricksPathKind.parse(str(self), workspace=temp_ws)
|
|
119
120
|
|
|
120
121
|
self._kind = kind
|
|
121
|
-
self._workspace = ws if ws is not None else
|
|
122
|
+
self._workspace = ws if ws is not None else temp_ws
|
|
122
123
|
|
|
123
124
|
# Never inherit caches from template
|
|
124
125
|
self._is_file = None
|
|
@@ -171,6 +172,22 @@ class DatabricksPath(SysPath, PurePosixPath):
|
|
|
171
172
|
# pathlib paths are effectively immutable; all init happens in __new__ / _init
|
|
172
173
|
pass
|
|
173
174
|
|
|
175
|
+
def __truediv__(self, other):
|
|
176
|
+
if not other:
|
|
177
|
+
return self
|
|
178
|
+
|
|
179
|
+
built = super().__truediv__(other)
|
|
180
|
+
|
|
181
|
+
built._kind = self._kind
|
|
182
|
+
built._workspace = self._workspace
|
|
183
|
+
|
|
184
|
+
built._is_file = None
|
|
185
|
+
built._is_dir = None
|
|
186
|
+
built._raw_status = None
|
|
187
|
+
built._raw_status_refresh_time = 0.0
|
|
188
|
+
|
|
189
|
+
return built
|
|
190
|
+
|
|
174
191
|
def __enter__(self):
|
|
175
192
|
self.workspace.__enter__()
|
|
176
193
|
return self
|
|
@@ -178,32 +195,34 @@ class DatabricksPath(SysPath, PurePosixPath):
|
|
|
178
195
|
def __exit__(self, exc_type, exc_val, exc_tb):
|
|
179
196
|
return self.workspace.__exit__(exc_type, exc_val, exc_tb)
|
|
180
197
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
try:
|
|
184
|
-
if self._workspace is None:
|
|
185
|
-
from .workspace import Workspace
|
|
198
|
+
def _from_parsed_parts(self, drv, root, parts):
|
|
199
|
+
built = super()._from_parsed_parts(drv, root, parts)
|
|
186
200
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
self._init(template=self)
|
|
201
|
+
built._kind = self._kind
|
|
202
|
+
built._workspace = self._workspace
|
|
190
203
|
|
|
191
|
-
|
|
204
|
+
built._is_file = None
|
|
205
|
+
built._is_dir = None
|
|
206
|
+
built._raw_status = None
|
|
207
|
+
built._raw_status_refresh_time = 0.0
|
|
192
208
|
|
|
193
|
-
|
|
194
|
-
from .workspace import Workspace
|
|
209
|
+
return built
|
|
195
210
|
|
|
196
|
-
|
|
211
|
+
@property
|
|
212
|
+
def workspace(self):
|
|
213
|
+
if self._workspace is None:
|
|
214
|
+
from .workspace import Workspace
|
|
197
215
|
|
|
216
|
+
self._workspace = Workspace()
|
|
198
217
|
return self._workspace
|
|
199
218
|
|
|
219
|
+
@workspace.setter
|
|
220
|
+
def workspace(self, value):
|
|
221
|
+
self._workspace = value
|
|
222
|
+
|
|
200
223
|
@property
|
|
201
224
|
def kind(self):
|
|
202
|
-
|
|
203
|
-
return self._kind
|
|
204
|
-
except AttributeError:
|
|
205
|
-
self._init(template=self)
|
|
206
|
-
return self._kind
|
|
225
|
+
return self._kind
|
|
207
226
|
|
|
208
227
|
@kind.setter
|
|
209
228
|
def kind(self, value: DatabricksPathKind):
|
|
@@ -606,7 +625,8 @@ class DatabricksPath(SysPath, PurePosixPath):
|
|
|
606
625
|
|
|
607
626
|
try:
|
|
608
627
|
# FIX: DBFS listing should use DBFS-normalized path, not workspace path
|
|
609
|
-
|
|
628
|
+
p = "/dbfs/" + self.as_dbfs_api_path() + "/"
|
|
629
|
+
for info in sdk.dbfs.list(p, recursive=recursive):
|
|
610
630
|
base = DatabricksPath(
|
|
611
631
|
info.path,
|
|
612
632
|
workspace=self.workspace,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|