castor-extractor 0.25.9__py3-none-any.whl → 0.25.12__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 castor-extractor might be problematic. Click here for more details.
- CHANGELOG.md +12 -0
- castor_extractor/commands/__init__.py +3 -0
- castor_extractor/exceptions.py +5 -0
- castor_extractor/transformation/coalesce/client/client.py +9 -0
- castor_extractor/visualization/sigma/client/client.py +6 -1
- castor_extractor/warehouse/bigquery/extract.py +1 -2
- castor_extractor/warehouse/databricks/extract.py +1 -2
- castor_extractor/warehouse/snowflake/extract.py +1 -2
- {castor_extractor-0.25.9.dist-info → castor_extractor-0.25.12.dist-info}/METADATA +13 -1
- {castor_extractor-0.25.9.dist-info → castor_extractor-0.25.12.dist-info}/RECORD +13 -13
- {castor_extractor-0.25.9.dist-info → castor_extractor-0.25.12.dist-info}/LICENCE +0 -0
- {castor_extractor-0.25.9.dist-info → castor_extractor-0.25.12.dist-info}/WHEEL +0 -0
- {castor_extractor-0.25.9.dist-info → castor_extractor-0.25.12.dist-info}/entry_points.txt +0 -0
CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.25.12 - 2025-10-16
|
|
4
|
+
|
|
5
|
+
* Add a deprecation warning for Python versions below 3.10
|
|
6
|
+
|
|
7
|
+
## 0.25.11 - 2025-10-15
|
|
8
|
+
|
|
9
|
+
* Sigma: catch ReadTimeouts during queries extraction
|
|
10
|
+
|
|
11
|
+
## 0.25.10 - 2025-10-09
|
|
12
|
+
|
|
13
|
+
* Fix import
|
|
14
|
+
|
|
3
15
|
## 0.25.9 - 2025-10-09
|
|
4
16
|
|
|
5
17
|
* Snowflake: raise an exception when no database is available for extraction
|
castor_extractor/exceptions.py
CHANGED
|
@@ -3,3 +3,8 @@ class NoDatabaseProvidedException(Exception):
|
|
|
3
3
|
super().__init__("""No database eligible for extraction.
|
|
4
4
|
If you are using the db_allow/db_block options, please make sure to use the correct case.
|
|
5
5
|
""")
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class TestConnectionException(Exception):
|
|
9
|
+
def __init__(self, caused_by: Exception):
|
|
10
|
+
super().__init__(f"Connection could not be verified: {caused_by}")
|
|
@@ -3,6 +3,7 @@ from functools import partial
|
|
|
3
3
|
from http import HTTPStatus
|
|
4
4
|
from typing import Callable, Optional
|
|
5
5
|
|
|
6
|
+
from ....exceptions import TestConnectionException
|
|
6
7
|
from ....utils import (
|
|
7
8
|
APIClient,
|
|
8
9
|
BearerAuth,
|
|
@@ -64,6 +65,14 @@ class CoalesceBearerAuth(BearerAuth):
|
|
|
64
65
|
class CoalesceClient(APIClient):
|
|
65
66
|
"""REST API client to extract data from Coalesce"""
|
|
66
67
|
|
|
68
|
+
def test_connection(self) -> None:
|
|
69
|
+
endpoint = CoalesceEndpointFactory.environments()
|
|
70
|
+
request = self._get_paginated(endpoint=endpoint)
|
|
71
|
+
try:
|
|
72
|
+
next(fetch_all_pages(request, CoalescePagination))
|
|
73
|
+
except Exception as e:
|
|
74
|
+
raise TestConnectionException(e)
|
|
75
|
+
|
|
67
76
|
def __init__(
|
|
68
77
|
self,
|
|
69
78
|
credentials: CoalesceCredentials,
|
|
@@ -192,7 +192,12 @@ class SigmaClient(APIClient):
|
|
|
192
192
|
)
|
|
193
193
|
queries = fetch_all_pages(request, SigmaPagination)
|
|
194
194
|
|
|
195
|
-
|
|
195
|
+
try:
|
|
196
|
+
yield from self._yield_deduplicated_queries(
|
|
197
|
+
queries, workbook_id
|
|
198
|
+
)
|
|
199
|
+
except ReadTimeout:
|
|
200
|
+
logger.warning(f"ReadTimeout for workbook {workbook_id}")
|
|
196
201
|
|
|
197
202
|
def _get_all_datamodel_sources(
|
|
198
203
|
self, datamodels: list[dict]
|
|
@@ -2,10 +2,9 @@ import json
|
|
|
2
2
|
import logging
|
|
3
3
|
from typing import cast
|
|
4
4
|
|
|
5
|
-
from
|
|
5
|
+
from ...exceptions import (
|
|
6
6
|
NoDatabaseProvidedException,
|
|
7
7
|
)
|
|
8
|
-
|
|
9
8
|
from ...logger import add_logging_file_handler
|
|
10
9
|
from ...utils import LocalStorage, SafeMode, from_env, write_summary
|
|
11
10
|
from ..abstract import (
|
|
@@ -2,10 +2,9 @@ import logging
|
|
|
2
2
|
from datetime import date
|
|
3
3
|
from typing import Optional
|
|
4
4
|
|
|
5
|
-
from
|
|
5
|
+
from ...exceptions import (
|
|
6
6
|
NoDatabaseProvidedException,
|
|
7
7
|
)
|
|
8
|
-
|
|
9
8
|
from ...utils import AbstractStorage, LocalStorage, write_summary
|
|
10
9
|
from ..abstract import (
|
|
11
10
|
ADDITIONAL_LINEAGE_ASSETS,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: castor-extractor
|
|
3
|
-
Version: 0.25.
|
|
3
|
+
Version: 0.25.12
|
|
4
4
|
Summary: Extract your metadata assets.
|
|
5
5
|
Home-page: https://www.castordoc.com/
|
|
6
6
|
License: EULA
|
|
@@ -216,6 +216,18 @@ For any questions or bug report, contact us at [support@coalesce.io](mailto:supp
|
|
|
216
216
|
|
|
217
217
|
# Changelog
|
|
218
218
|
|
|
219
|
+
## 0.25.12 - 2025-10-16
|
|
220
|
+
|
|
221
|
+
* Add a deprecation warning for Python versions below 3.10
|
|
222
|
+
|
|
223
|
+
## 0.25.11 - 2025-10-15
|
|
224
|
+
|
|
225
|
+
* Sigma: catch ReadTimeouts during queries extraction
|
|
226
|
+
|
|
227
|
+
## 0.25.10 - 2025-10-09
|
|
228
|
+
|
|
229
|
+
* Fix import
|
|
230
|
+
|
|
219
231
|
## 0.25.9 - 2025-10-09
|
|
220
232
|
|
|
221
233
|
* Snowflake: raise an exception when no database is available for extraction
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
CHANGELOG.md,sha256=
|
|
1
|
+
CHANGELOG.md,sha256=mF8dWRAF5Bnd2HZCRn6ZkVk-rjPmEWdvs9nNwYCxAVM,22057
|
|
2
2
|
Dockerfile,sha256=xQ05-CFfGShT3oUqaiumaldwA288dj9Yb_pxofQpufg,301
|
|
3
3
|
DockerfileUsage.md,sha256=2hkJQF-5JuuzfPZ7IOxgM6QgIQW7l-9oRMFVwyXC4gE,998
|
|
4
4
|
LICENCE,sha256=sL-IGa4hweyya1HgzMskrRdybbIa2cktzxb5qmUgDg8,8254
|
|
5
5
|
README.md,sha256=C6hTyZO60T7z7xwHbspHlii384Jn02k0Rycxu3bCX0o,3866
|
|
6
6
|
castor_extractor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
castor_extractor/commands/__init__.py,sha256=
|
|
7
|
+
castor_extractor/commands/__init__.py,sha256=3q18pP2jt0slwgrMkja-8vNq_GNk9-PZW6GPfqGQgxk,117
|
|
8
8
|
castor_extractor/commands/extract_bigquery.py,sha256=dU4OiYO1V0n32orvZnMh1_xtFKF_VxHNXcVsH3otY-g,1269
|
|
9
9
|
castor_extractor/commands/extract_confluence.py,sha256=blYcnDqywXNKRQ1aZAD9FclhLlO7x8Y_tb0lgl85v0w,1641
|
|
10
10
|
castor_extractor/commands/extract_count.py,sha256=cITp-2UmPYjbcICvYZzxE9oWieI8NbTH1DcWxLAZxJ4,611
|
|
@@ -31,7 +31,7 @@ castor_extractor/commands/extract_tableau.py,sha256=cfH-b0Hq9LGrQSJv02Yr_4d6oNqh
|
|
|
31
31
|
castor_extractor/commands/extract_thoughtspot.py,sha256=caAYJlH-vK7u5IUB6OKXxcaWfLgc7d_XqnFDWK6YNS4,639
|
|
32
32
|
castor_extractor/commands/file_check.py,sha256=TJx76Ymd0QCECmq35zRJMkPE8DJtSInB28MuSXWk8Ao,2644
|
|
33
33
|
castor_extractor/commands/upload.py,sha256=sqpEF_qqCNvT_niIrM6jPhzLaFVjtYwpc2iZw540F20,1633
|
|
34
|
-
castor_extractor/exceptions.py,sha256=
|
|
34
|
+
castor_extractor/exceptions.py,sha256=fhG5San5XzUr02XXEmCWs1_I_YS_cUji-E_G8_VYCsY,403
|
|
35
35
|
castor_extractor/file_checker/__init__.py,sha256=OSt6YLhUT42U_Cp3LCLHMVruwDkksL75Ij13X2UPnVk,119
|
|
36
36
|
castor_extractor/file_checker/column.py,sha256=6bJhcW1snYwgHKkqlS0Ak7XLHZr4YBwO46JCIlnQNKg,3086
|
|
37
37
|
castor_extractor/file_checker/column_test.py,sha256=1j8PxvmvmJgpd-mk30iMYOme32ovPSIn4yCXywFoXrg,1935
|
|
@@ -78,7 +78,7 @@ castor_extractor/transformation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm
|
|
|
78
78
|
castor_extractor/transformation/coalesce/__init__.py,sha256=CW_qdtEfwgJRsCyBlk5hNlxwEO-VV6mBXZvkRbND_J8,112
|
|
79
79
|
castor_extractor/transformation/coalesce/assets.py,sha256=pzccYPP66c9PAnVroemx7-6MeRHw7Ft1OlTC6jIamAA,363
|
|
80
80
|
castor_extractor/transformation/coalesce/client/__init__.py,sha256=VRmVpH29rOghtDQnCN7dAdA0dI0Lxseu4BC8rnwM9dU,80
|
|
81
|
-
castor_extractor/transformation/coalesce/client/client.py,sha256=
|
|
81
|
+
castor_extractor/transformation/coalesce/client/client.py,sha256=qBg0Qrs-YgkypgF51oK08ryY8XRtwvm1iAY7pFSn2CQ,6184
|
|
82
82
|
castor_extractor/transformation/coalesce/client/credentials.py,sha256=jbJxjbdPspf-dzYKfeb7oqL_8TXd1nvkJrjAcdAnLPc,548
|
|
83
83
|
castor_extractor/transformation/coalesce/client/endpoint.py,sha256=0uLh7dpA1vsR9qr_50SEYV_-heQE4BwED9oNMgYsL-w,1272
|
|
84
84
|
castor_extractor/transformation/coalesce/client/pagination.py,sha256=zynyWCMEzUQ7HA1Q5AP4BAOmxRQI6NA5jCPEo0lHn44,705
|
|
@@ -288,7 +288,7 @@ castor_extractor/visualization/sigma/__init__.py,sha256=GINql4yJLtjfOJgjHaWNpE13
|
|
|
288
288
|
castor_extractor/visualization/sigma/assets.py,sha256=iVZqi7XtNgSOVXy0jgeHZonVOeXi7jyikor8ztbECBc,398
|
|
289
289
|
castor_extractor/visualization/sigma/client/__init__.py,sha256=YQv06FBBQHvBMFg_tN0nUcmUp2NCL2s-eFTXG8rXaBg,74
|
|
290
290
|
castor_extractor/visualization/sigma/client/authentication.py,sha256=gHukrpfboIjZc_O9CcuDtrl6U-StH0J73VY2J74Bm9o,2279
|
|
291
|
-
castor_extractor/visualization/sigma/client/client.py,sha256=
|
|
291
|
+
castor_extractor/visualization/sigma/client/client.py,sha256=l2VlNktvtinRPR9RIIw8LlHRH-hhoycQlMG5HrQiIbc,9228
|
|
292
292
|
castor_extractor/visualization/sigma/client/client_test.py,sha256=ae0ZOvKutCm44jnrJ-0_A5Y6ZGyDkMf9Ml3eEP8dNkY,581
|
|
293
293
|
castor_extractor/visualization/sigma/client/credentials.py,sha256=XddAuQSmCKpxJ70TQgRnOj0vMPYVtiStk_lMMQ1AiNM,693
|
|
294
294
|
castor_extractor/visualization/sigma/client/endpoints.py,sha256=by9VIFml2whlzQT66f2m56RYBsqPrWdAmIP4JkTaBV4,1799
|
|
@@ -337,7 +337,7 @@ castor_extractor/warehouse/bigquery/__init__.py,sha256=PCGNYdi7dHv-SyanUWzRuBp-y
|
|
|
337
337
|
castor_extractor/warehouse/bigquery/client.py,sha256=lPAn6WUwDq0rIPNaMOcabet8C4TYJ93EWZUxX72XrZc,5595
|
|
338
338
|
castor_extractor/warehouse/bigquery/client_test.py,sha256=Ym8e4d--0YQwiVcNUnXLx0X-X6ZznwNMBMbMaDS5oEA,1514
|
|
339
339
|
castor_extractor/warehouse/bigquery/credentials.py,sha256=oCZ8H7qpudKzwM7PRMpVAmWXt7bjIRa8Harmp-ysQJ4,425
|
|
340
|
-
castor_extractor/warehouse/bigquery/extract.py,sha256=
|
|
340
|
+
castor_extractor/warehouse/bigquery/extract.py,sha256=N2LZz6UU0CRRhOw66mrnTmImiIxVn-_sGsCxOCW4wcY,3097
|
|
341
341
|
castor_extractor/warehouse/bigquery/queries/.sqlfluff,sha256=ce8UDW2k39v6RBVxgKqjOHHYMoGN9S9f7BCZNHHhox8,30
|
|
342
342
|
castor_extractor/warehouse/bigquery/queries/column.sql,sha256=NxdTnHwomHTEGSc-UoXFKUwg59I9XAOwrSau7JUqGQE,1815
|
|
343
343
|
castor_extractor/warehouse/bigquery/queries/cte/sharded.sql,sha256=-G7_4lxV7UPe72mYlp4HDGeM_fJjZWuXJ7Q0vxvj5_U,1454
|
|
@@ -358,7 +358,7 @@ castor_extractor/warehouse/databricks/client_test.py,sha256=dqEdEAt-6e8CtQ7M2L5v
|
|
|
358
358
|
castor_extractor/warehouse/databricks/credentials.py,sha256=ExtVcl2NpMXTx1Lg8vHQdzQtSEm2aqpg3D1BJrNAUjI,528
|
|
359
359
|
castor_extractor/warehouse/databricks/endpoints.py,sha256=qPoL9CtPFJdwVuW9rJ37nmeMd-nChOBouEVYb4SlaUE,670
|
|
360
360
|
castor_extractor/warehouse/databricks/enums.py,sha256=3T6BbVvbWvfWkD23krsYT1x0kKh1qRzNPl6WpcXe300,274
|
|
361
|
-
castor_extractor/warehouse/databricks/extract.py,sha256=
|
|
361
|
+
castor_extractor/warehouse/databricks/extract.py,sha256=mv780vnwJQ9vHhBRBR5SNcc7Z8PbGCLOrq-XSV0uziA,7495
|
|
362
362
|
castor_extractor/warehouse/databricks/format.py,sha256=S3BOcwJubc1pyKr-li26uftUUfsjfrm5Qf4LqmElXVk,6736
|
|
363
363
|
castor_extractor/warehouse/databricks/format_test.py,sha256=ls0IcOElqp_qecAzNbK0zdca7Pms4seCHimbw8NAoAI,3322
|
|
364
364
|
castor_extractor/warehouse/databricks/pagination.py,sha256=sM1G0sN1pf1TPpI0Y3Oew378UGEKVkMRc2Mlu9tDjLo,545
|
|
@@ -421,7 +421,7 @@ castor_extractor/warehouse/snowflake/client.py,sha256=RB72bbl_k91wDU76yrggPK6oeE
|
|
|
421
421
|
castor_extractor/warehouse/snowflake/client_test.py,sha256=ihWtOOAQfh8pu5JTr_EWfqefKOVIaJXznACURzaU1Qs,1432
|
|
422
422
|
castor_extractor/warehouse/snowflake/credentials.py,sha256=u0sZ6xPtcZmmvnUsAejJk-YxGl8BTzX_BlRjRk92BYU,932
|
|
423
423
|
castor_extractor/warehouse/snowflake/credentials_test.py,sha256=Lkc-DHXOvr50KrqAW4nt_x0IA0Mu_CsBVu6ATnzQB6I,673
|
|
424
|
-
castor_extractor/warehouse/snowflake/extract.py,sha256=
|
|
424
|
+
castor_extractor/warehouse/snowflake/extract.py,sha256=N-lZHOTW0bQyEeKA9EuhPB9YkAd1UjyHKkEsl8hat6g,3625
|
|
425
425
|
castor_extractor/warehouse/snowflake/queries/.sqlfluff,sha256=vttrwcr64JVIuvc7WIg9C54cbOkjg_VjXNR7YnTGOPE,31
|
|
426
426
|
castor_extractor/warehouse/snowflake/queries/column.sql,sha256=Ru-yC0s76I9LehOA4aCZ--xz6D9H1Hyr3OZdILOBHAw,1882
|
|
427
427
|
castor_extractor/warehouse/snowflake/queries/column_lineage.sql,sha256=YKBiZ6zySSNcXLDXwm31EjGIIkkkZc0-S6hI1SRM80o,1179
|
|
@@ -446,8 +446,8 @@ castor_extractor/warehouse/sqlserver/queries/user.sql,sha256=MAlnTis43E3Amu1e1Oz
|
|
|
446
446
|
castor_extractor/warehouse/sqlserver/queries/view_ddl.sql,sha256=9rynvx6MWg3iZzrWPB7haZfVKEPkxulzryE2g19x804,315
|
|
447
447
|
castor_extractor/warehouse/sqlserver/query.py,sha256=gr5lnZSUm-wSYuVnJlg6fc7jXWirbL-sCiQN9RnAiPQ,1789
|
|
448
448
|
castor_extractor/warehouse/synapse/queries/column.sql,sha256=lNcFoIW3Y0PFOqoOzJEXmPvZvfAsY0AP63Mu2LuPzPo,1351
|
|
449
|
-
castor_extractor-0.25.
|
|
450
|
-
castor_extractor-0.25.
|
|
451
|
-
castor_extractor-0.25.
|
|
452
|
-
castor_extractor-0.25.
|
|
453
|
-
castor_extractor-0.25.
|
|
449
|
+
castor_extractor-0.25.12.dist-info/LICENCE,sha256=sL-IGa4hweyya1HgzMskrRdybbIa2cktzxb5qmUgDg8,8254
|
|
450
|
+
castor_extractor-0.25.12.dist-info/METADATA,sha256=8CbY2v74BOKMCVvYm8-P7rPKSE5i9gyX2Qd-Ct_K0rY,29560
|
|
451
|
+
castor_extractor-0.25.12.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
|
452
|
+
castor_extractor-0.25.12.dist-info/entry_points.txt,sha256=qyTrKNByoq2HYi1xbA79OU7qxg-OWPvle8VwDqt-KnE,1869
|
|
453
|
+
castor_extractor-0.25.12.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|