duckrun 0.2.5.dev1__py3-none-any.whl → 0.2.5.dev2__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.
- duckrun/core.py +27 -5
- {duckrun-0.2.5.dev1.dist-info → duckrun-0.2.5.dev2.dist-info}/METADATA +1 -1
- {duckrun-0.2.5.dev1.dist-info → duckrun-0.2.5.dev2.dist-info}/RECORD +6 -6
- {duckrun-0.2.5.dev1.dist-info → duckrun-0.2.5.dev2.dist-info}/WHEEL +0 -0
- {duckrun-0.2.5.dev1.dist-info → duckrun-0.2.5.dev2.dist-info}/licenses/LICENSE +0 -0
- {duckrun-0.2.5.dev1.dist-info → duckrun-0.2.5.dev2.dist-info}/top_level.txt +0 -0
duckrun/core.py
CHANGED
@@ -61,10 +61,20 @@ class Duckrun:
|
|
61
61
|
self.scan_all_schemas = scan_all_schemas
|
62
62
|
self.storage_account = storage_account
|
63
63
|
|
64
|
-
# Construct proper ABFSS URLs
|
65
|
-
|
66
|
-
|
67
|
-
|
64
|
+
# Construct proper ABFSS URLs
|
65
|
+
import re
|
66
|
+
guid_pattern = re.compile(r'^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$', re.IGNORECASE)
|
67
|
+
# If lakehouse_id is a GUID, use as-is
|
68
|
+
if guid_pattern.match(lakehouse_id):
|
69
|
+
lakehouse_url_part = lakehouse_id
|
70
|
+
else:
|
71
|
+
# If workspace name has no spaces, always append .lakehouse unless already present
|
72
|
+
if " " not in workspace_id and not lakehouse_id.endswith('.lakehouse'):
|
73
|
+
lakehouse_url_part = f'{lakehouse_id}.lakehouse'
|
74
|
+
else:
|
75
|
+
lakehouse_url_part = lakehouse_id
|
76
|
+
self.table_base_url = f'abfss://{workspace_id}@{storage_account}.dfs.fabric.microsoft.com/{lakehouse_url_part}/Tables/'
|
77
|
+
self.files_base_url = f'abfss://{workspace_id}@{storage_account}.dfs.fabric.microsoft.com/{lakehouse_url_part}/Files/'
|
68
78
|
|
69
79
|
# Keep legacy properties for backward compatibility
|
70
80
|
self.workspace = workspace_id
|
@@ -326,7 +336,19 @@ class Duckrun:
|
|
326
336
|
url = f"abfss://{self.workspace}@{self.storage_account}.dfs.fabric.microsoft.com/"
|
327
337
|
store = AzureStore.from_url(url, bearer_token=token)
|
328
338
|
|
329
|
-
|
339
|
+
# Use the same lakehouse URL part logic as in __init__ to ensure .lakehouse suffix is added when needed
|
340
|
+
import re
|
341
|
+
guid_pattern = re.compile(r'^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$', re.IGNORECASE)
|
342
|
+
if guid_pattern.match(self.lakehouse_id):
|
343
|
+
lakehouse_url_part = self.lakehouse_id
|
344
|
+
else:
|
345
|
+
# If workspace name has no spaces, always append .lakehouse unless already present
|
346
|
+
if " " not in self.workspace_id and not self.lakehouse_id.endswith('.lakehouse'):
|
347
|
+
lakehouse_url_part = f'{self.lakehouse_id}.lakehouse'
|
348
|
+
else:
|
349
|
+
lakehouse_url_part = self.lakehouse_id
|
350
|
+
|
351
|
+
base_path = f"{lakehouse_url_part}/Tables/"
|
330
352
|
tables_found = []
|
331
353
|
|
332
354
|
if self.scan_all_schemas:
|
@@ -1,12 +1,12 @@
|
|
1
1
|
duckrun/__init__.py,sha256=XA85pL2vK1AkmBic8e7WxeqNvcd6SjFX4zsQpImDO6E,230
|
2
|
-
duckrun/core.py,sha256
|
2
|
+
duckrun/core.py,sha256=UgBE90zTFvnieTrUEb4tDA2cWSwFfh24M_e46FTmFvg,38345
|
3
3
|
duckrun/files.py,sha256=piWRU5w9jHrW-wuV4Gf-SKY_jhFv9eflxgWO8AZCQTI,10495
|
4
4
|
duckrun/lakehouse.py,sha256=j--Z3zo8AOWt1GF9VzRosmmTAy6ey2D0LVubti58twU,14109
|
5
5
|
duckrun/runner.py,sha256=lfwNoU1CZXh6bPTHvGWVaUWjzG5crvT7Pzq4onMEVjw,12576
|
6
6
|
duckrun/stats.py,sha256=2FTqoQNVjD84-H1HjStHxZkOpAGKXS79M55B00pOlok,9804
|
7
7
|
duckrun/writer.py,sha256=eWrGtDQTbXi8H3sSt2WucYTdEQUjK97KmQxzCbqAuMs,6221
|
8
|
-
duckrun-0.2.5.
|
9
|
-
duckrun-0.2.5.
|
10
|
-
duckrun-0.2.5.
|
11
|
-
duckrun-0.2.5.
|
12
|
-
duckrun-0.2.5.
|
8
|
+
duckrun-0.2.5.dev2.dist-info/licenses/LICENSE,sha256=-DeQQwdbCbkB4507ZF3QbocysB-EIjDtaLexvqRkGZc,1083
|
9
|
+
duckrun-0.2.5.dev2.dist-info/METADATA,sha256=wiB12-pG_jlyUbghVNMyE3KHcwt8GFJd04VNZ2C4VwE,18344
|
10
|
+
duckrun-0.2.5.dev2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
11
|
+
duckrun-0.2.5.dev2.dist-info/top_level.txt,sha256=BknMEwebbUHrVAp3SC92ps8MPhK7XSYsaogTvi_DmEU,8
|
12
|
+
duckrun-0.2.5.dev2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|