acryl-datahub 1.0.0rc1__py3-none-any.whl → 1.0.0rc3__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 acryl-datahub might be problematic. Click here for more details.

Files changed (49) hide show
  1. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/METADATA +2469 -2469
  2. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/RECORD +49 -48
  3. datahub/_version.py +1 -1
  4. datahub/cli/docker_cli.py +2 -2
  5. datahub/configuration/common.py +1 -1
  6. datahub/ingestion/api/decorators.py +1 -1
  7. datahub/ingestion/graph/client.py +1 -1
  8. datahub/ingestion/run/pipeline.py +1 -1
  9. datahub/ingestion/source/identity/okta.py +13 -2
  10. datahub/ingestion/source/kafka_connect/common.py +1 -1
  11. datahub/ingestion/source/kafka_connect/kafka_connect.py +97 -4
  12. datahub/ingestion/source/kafka_connect/sink_connectors.py +2 -2
  13. datahub/ingestion/source/kafka_connect/source_connectors.py +2 -2
  14. datahub/ingestion/source/looker/looker_common.py +3 -3
  15. datahub/ingestion/source/looker/looker_source.py +1 -1
  16. datahub/ingestion/source/mode.py +3 -3
  17. datahub/ingestion/source/nifi.py +2 -2
  18. datahub/ingestion/source/openapi.py +1 -1
  19. datahub/ingestion/source/openapi_parser.py +1 -1
  20. datahub/ingestion/source/powerbi_report_server/report_server_domain.py +1 -1
  21. datahub/ingestion/source/snowflake/snowflake_queries.py +3 -0
  22. datahub/ingestion/source/sql/athena.py +2 -2
  23. datahub/ingestion/source/sql/hive_metastore.py +1 -1
  24. datahub/ingestion/source/sql/mssql/source.py +1 -1
  25. datahub/ingestion/source/sql/sql_common.py +1 -1
  26. datahub/ingestion/source/sql/teradata.py +3 -3
  27. datahub/ingestion/source/tableau/tableau.py +19 -0
  28. datahub/metadata/schema.avsc +30 -3
  29. datahub/metadata/schemas/AssertionInfo.avsc +3 -1
  30. datahub/metadata/schemas/BusinessAttributeInfo.avsc +6 -2
  31. datahub/metadata/schemas/BusinessAttributes.avsc +6 -0
  32. datahub/metadata/schemas/ChartInfo.avsc +1 -0
  33. datahub/metadata/schemas/EditableSchemaMetadata.avsc +6 -2
  34. datahub/metadata/schemas/GlossaryTerms.avsc +3 -1
  35. datahub/metadata/schemas/InputFields.avsc +3 -1
  36. datahub/metadata/schemas/MetadataChangeEvent.avsc +7 -2
  37. datahub/metadata/schemas/SchemaMetadata.avsc +3 -1
  38. datahub/metadata/schemas/StructuredPropertyDefinition.avsc +14 -0
  39. datahub/sql_parsing/schema_resolver.py +1 -1
  40. datahub/sql_parsing/sqlglot_lineage.py +1 -1
  41. datahub/testing/check_sql_parser_result.py +5 -6
  42. datahub/testing/compare_metadata_json.py +7 -6
  43. datahub/testing/pytest_hooks.py +56 -0
  44. datahub/upgrade/upgrade.py +2 -2
  45. datahub/utilities/mapping.py +1 -1
  46. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/LICENSE +0 -0
  47. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/WHEEL +0 -0
  48. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/entry_points.txt +0 -0
  49. {acryl_datahub-1.0.0rc1.dist-info → acryl_datahub-1.0.0rc3.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  datahub/__init__.py,sha256=aq_i5lVREmoLfYIqcx_pEQicO855YlhD19tWc1eZZNI,59
2
2
  datahub/__main__.py,sha256=pegIvQ9hzK7IhqVeUi1MeADSZ2QlP-D3K0OQdEg55RU,106
3
- datahub/_version.py,sha256=eCl5OqKrV3CyQ-N-bMuAVTkwd6mFmeQ6QD9j87EU4YM,321
3
+ datahub/_version.py,sha256=ekJghJG0MWYsjIE7Q8oYJZcO06c5OXzZCJv84ngAWko,321
4
4
  datahub/entrypoints.py,sha256=2TYgHhs3sCxJlojIHjqfxzt3_ImPwPzq4vBtsUuMqu4,8885
5
5
  datahub/errors.py,sha256=w6h8b27j9XlmPbTwqpu7-wgiTrXlHzcnUOnJ_iOrwzo,520
6
6
  datahub/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -66,7 +66,7 @@ datahub/cli/config_utils.py,sha256=yuXw7RzpRY5x_-MAoqWbv46qUkIeRNAJL4_OeJpYdBE,4
66
66
  datahub/cli/container_cli.py,sha256=uDOwewGEPYHQt-ppYEb8ESXhZjPNIZG0Rt3cm2FzPqc,1569
67
67
  datahub/cli/delete_cli.py,sha256=oQ4Yy6hxZHcl67MYJiQumLs_8QmFEj7SPZFzxFXvDk8,23481
68
68
  datahub/cli/docker_check.py,sha256=rED4wHXqxcQ_qNFyIgFEZ85BHT9ZTE5YC-oUKqbRqi0,9432
69
- datahub/cli/docker_cli.py,sha256=w9ZQMRVlHwfJI2XDe7mO0lwnT7-dZoK6tPadSMgwEM8,36493
69
+ datahub/cli/docker_cli.py,sha256=yxExfrlps9JnJDK-MQVwVCcsDz_rq5Q4jAcj4w_4kmU,36465
70
70
  datahub/cli/env_utils.py,sha256=RQzjg4JE29hjPt4v7p-RuqoOr99w8E3DBHWiN2Sm7T4,252
71
71
  datahub/cli/exists_cli.py,sha256=IsuU86R-g7BJjAl1vULH6d-BWJHAKa4XHLZl5WxGUEM,1233
72
72
  datahub/cli/get_cli.py,sha256=VV80BCXfZ0-C8fr2k43SIuN9DB-fOYP9StWsTHnXwFw,2327
@@ -93,7 +93,7 @@ datahub/cli/specific/structuredproperties_cli.py,sha256=Rb06XJKxqda5RSUo188B90Wn
93
93
  datahub/cli/specific/user_cli.py,sha256=jGAokb1NRu8obs6P2g4OL2NQdFgpUBa9De55TBBtun0,1897
94
94
  datahub/configuration/__init__.py,sha256=5TN3a7CWNsLRHpdj-sv2bxKWF2IslvJwE6EpNMFrIS4,123
95
95
  datahub/configuration/_config_enum.py,sha256=ul2hr5gMmdLvBINicFkMNMi1ApmnmZSwNdUYYted5nk,1447
96
- datahub/configuration/common.py,sha256=q7WSpXU8AJ1Dwz84rYCuQwgtodQno4ITakWQtuLzZW8,10408
96
+ datahub/configuration/common.py,sha256=PAcEm2aBZ-GS7SAmPR_o8XGtTGnKZk-d-tb4_Y9A4hE,10394
97
97
  datahub/configuration/config_loader.py,sha256=hRzPFxkz-w9IqkpSa5vwCzSra1p49DyfeJNeyqGa8-4,6827
98
98
  datahub/configuration/connection_resolver.py,sha256=n4-6MwMiOEDgTouxO0SMjTILKVhJPo6-naE6FuR5qMs,1516
99
99
  datahub/configuration/datetimes.py,sha256=nayNc0mmlVKH6oVv9ud6C1dDUiZPGabW-YZxvrkosPg,2870
@@ -133,7 +133,7 @@ datahub/ingestion/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
133
133
  datahub/ingestion/api/closeable.py,sha256=k12AT--s4GDtZ-po_rVm5QKgvGIDteeRPByZPIOfecA,599
134
134
  datahub/ingestion/api/committable.py,sha256=4S6GuBzvX2vb1A8P506NbspOKfZ1621sBG8t0lvRb8o,886
135
135
  datahub/ingestion/api/common.py,sha256=nJVL8YdvokYFajOjmVpSNlLbZJ5iVOFS4KJDlGtJ_jc,2735
136
- datahub/ingestion/api/decorators.py,sha256=b9bxHXlqCLDgqrVdPU6WNQg1koZcK62AkZ9vNwvWeK4,4029
136
+ datahub/ingestion/api/decorators.py,sha256=-0Kl9G_8DhmSP9Q0ryrWB3a-Odce8WTpvGETJOqRdgw,4015
137
137
  datahub/ingestion/api/global_context.py,sha256=OdSJg4a_RKE52nu8MSiEkK2UqRRDhDTyOleHEAzPKho,575
138
138
  datahub/ingestion/api/incremental_lineage_helper.py,sha256=7a6FTJ_uz4EEJS1vPtbYB2KvNlcZB3py28_FKxmRiSk,5993
139
139
  datahub/ingestion/api/incremental_properties_helper.py,sha256=KzdxdrQtaMV2XMHfPsCtRa7ffDGPA1w1hgPUjeenZBU,2514
@@ -169,7 +169,7 @@ datahub/ingestion/glossary/classifier.py,sha256=daLxnVv_JlfB_jBOxH5LrU_xQRndrsGo
169
169
  datahub/ingestion/glossary/classifier_registry.py,sha256=yFOYLQhDgCLqXYMG3L1BquXafeLcZDcmp8meyw6k9ts,307
170
170
  datahub/ingestion/glossary/datahub_classifier.py,sha256=O7wm6gQT1Jf2QSKdWjJQbS5oSzJwplXzfza26Gdq5Mg,7555
171
171
  datahub/ingestion/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
- datahub/ingestion/graph/client.py,sha256=TR8bppz-_bXZbsqZsGG9sUFNyuFo5lch6GL1Oz3yTq4,65131
172
+ datahub/ingestion/graph/client.py,sha256=2hGCVRHWjDHepPcybk73zUChbWJmd9RfLiTtqDxuM9Q,65092
173
173
  datahub/ingestion/graph/config.py,sha256=_oha8Je7P80ZmrkZUAaRHyYbdMmTkMI5JkYjEP2Ri1Q,751
174
174
  datahub/ingestion/graph/connections.py,sha256=9462L0ZWGKURyypAln25eMPhK3pcufBar9tNDoqspXs,741
175
175
  datahub/ingestion/graph/entity_versioning.py,sha256=PG_GKJrtSu9n1oewDJfgYDVhqVMll8NXE_i0slmcTm0,6871
@@ -180,7 +180,7 @@ datahub/ingestion/reporting/file_reporter.py,sha256=tiWukmMxHrTQI3rOAumsq6lRlw8T
180
180
  datahub/ingestion/reporting/reporting_provider_registry.py,sha256=jTYSh3T4sensjnHQfPLiIcbA2dG8w0px9ghChAJjGdU,310
181
181
  datahub/ingestion/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
182
182
  datahub/ingestion/run/connection.py,sha256=mngNzr5aRLUDa5Izqxa0xkdDEqEqcDuacWSKIlkdvPc,1483
183
- datahub/ingestion/run/pipeline.py,sha256=3JKPVrKOMMVbXoFNaGoaE590oB9qIzYqF7obQtO9MKk,30631
183
+ datahub/ingestion/run/pipeline.py,sha256=-lfVxJ8-ZPZFDxHYR6eiDAVb01yJTDmllBAOWjrvfPI,30617
184
184
  datahub/ingestion/run/pipeline_config.py,sha256=EDwqlid4h_qyqyeTRCEqb1RiFA4py_T-Poz1eIKmzT4,4101
185
185
  datahub/ingestion/sink/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
186
186
  datahub/ingestion/sink/blackhole.py,sha256=-jYcWo4i8q7312bCIoHrGr7nT9JdPvA7c4jvSc7YOgY,557
@@ -203,11 +203,11 @@ datahub/ingestion/source/glue_profiling_config.py,sha256=vpMJH4Lf_qgR32BZy58suab
203
203
  datahub/ingestion/source/ldap.py,sha256=CNr3foofIpoCXu_GGqfcajlQE2qkHr5isYwVcDutdkk,18695
204
204
  datahub/ingestion/source/metabase.py,sha256=m9Gfhrs8F1z23ci8CIxdE5cW--25stgxg_IQTKwkFrk,31532
205
205
  datahub/ingestion/source/mlflow.py,sha256=pmIkmsfidi7dOGdQ61rab7m8AnKZhIRE2IA9in9HGFU,12144
206
- datahub/ingestion/source/mode.py,sha256=HVxhzMIY4HjkAG_T6y00Po2B9XwjALP6i5XQThuyYM4,63488
206
+ datahub/ingestion/source/mode.py,sha256=IBWpG0w47y1ivyo5oID0lmvwvLQvbNYL73x5EYHbAlk,63597
207
207
  datahub/ingestion/source/mongodb.py,sha256=2C2Cxn8DXL53IbNiywIuKt8UT_EMcPg9f8su-OPSNGU,21237
208
- datahub/ingestion/source/nifi.py,sha256=FgIbZSCu-mcdnbIpqwvmADnUIxptogUq1sSEkrkwtrc,56089
209
- datahub/ingestion/source/openapi.py,sha256=MGsRLseZompW10UVMN_tU1GZgqPgTAM4lnqCJ8eVRoY,17386
210
- datahub/ingestion/source/openapi_parser.py,sha256=1_68wHWe_SzWYEyC1YVDw9vxoadKjW1yv8DecvyIhwY,13606
208
+ datahub/ingestion/source/nifi.py,sha256=dK__nKtxt7dx9JlrL3abJr_D7oZY4LbCXdMCCdYcCKg,56061
209
+ datahub/ingestion/source/openapi.py,sha256=39ep3etbWh8NBPjTXXwH3mieC5P6bMVAjhvK7UvcTis,17372
210
+ datahub/ingestion/source/openapi_parser.py,sha256=8aksjKh7cc7EMnIi-oM5hJpJHLSucmZvRGS1T3GLO5o,13592
211
211
  datahub/ingestion/source/preset.py,sha256=fByqamRLnXxsfCGdLPzWN_5LJR_s2_G2f_zwSKUc8EA,3981
212
212
  datahub/ingestion/source/pulsar.py,sha256=7rTOEqYmeOuRZl5DG8d5OFkb4l9H6-1bETZfa-4DfmI,20163
213
213
  datahub/ingestion/source/redash.py,sha256=U0AfnYpZlAPN0peiu7pOpB8MQZ4JOO0yKEYChucMrlY,29915
@@ -327,18 +327,18 @@ datahub/ingestion/source/iceberg/iceberg_common.py,sha256=2zBuhUKyZ9jNHcPI4KsupH
327
327
  datahub/ingestion/source/iceberg/iceberg_profiler.py,sha256=CkBB5fryMVoqqCM6eLSIeb4yP85ABHONNRm0QqZKrnw,9977
328
328
  datahub/ingestion/source/identity/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
329
329
  datahub/ingestion/source/identity/azure_ad.py,sha256=9Hrvm4CSfc02yjnPUsCYSY4Qw9fXPnDFWLexab0mcpc,28559
330
- datahub/ingestion/source/identity/okta.py,sha256=BZXzhT2Nusl75trvkkoovYHTIe3DK1cdvgwYRL-jDpg,30826
330
+ datahub/ingestion/source/identity/okta.py,sha256=72-zCn3u7nxhE64B-gOFrox9FjcYCtzvaDqlq1WLExI,31333
331
331
  datahub/ingestion/source/kafka/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
332
332
  datahub/ingestion/source/kafka/kafka.py,sha256=TX_9MFaecM1ZmwhX3krKsItEmNZX9c2i9024SmVo0io,26572
333
333
  datahub/ingestion/source/kafka/kafka_schema_registry_base.py,sha256=13XjSwqyVhH1CJUFHAbWdmmv_Rw0Ju_9HQdBmIzPNNA,566
334
334
  datahub/ingestion/source/kafka_connect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
335
- datahub/ingestion/source/kafka_connect/common.py,sha256=sfAiD48bDFfoXdqYiZuwP5BomJPP5DgaskgAyKkM3GY,7117
336
- datahub/ingestion/source/kafka_connect/kafka_connect.py,sha256=-ZmPayEYqYJ8rgWIGCkJPQd2z6C8FoZA1XXO3N55KbM,14036
337
- datahub/ingestion/source/kafka_connect/sink_connectors.py,sha256=sbLntDi0c52i8uUJmJ59sAcJeNErSogIJsr2-Zar-3Q,12902
338
- datahub/ingestion/source/kafka_connect/source_connectors.py,sha256=-rFNXKD8_EFoXuU1CiKF3wHnsBtKCJrcYDwdTno98Xk,21265
335
+ datahub/ingestion/source/kafka_connect/common.py,sha256=6F9pPD_9uX6RcVLNy2Xpv_ipiqIZaLvsgdrj5o22pfA,7127
336
+ datahub/ingestion/source/kafka_connect/kafka_connect.py,sha256=AVAgBvgH7kM9I2ke3mwr8CfIL1J2SdVHH_86rnCFwrM,17727
337
+ datahub/ingestion/source/kafka_connect/sink_connectors.py,sha256=rNxolagqwQWQmVp4mDr1C-1TB6Drxc2b1dM9JSjNnuA,12905
338
+ datahub/ingestion/source/kafka_connect/source_connectors.py,sha256=viCqy7fmQl_qyrIkEamRVuUb8_EtfvQjE00CHPi-980,21265
339
339
  datahub/ingestion/source/looker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
340
340
  datahub/ingestion/source/looker/lkml_patched.py,sha256=XShEU7Wbz0DubDhYMjKf9wjKZrBJa2XPg9MIjp8rPhk,733
341
- datahub/ingestion/source/looker/looker_common.py,sha256=dmcrzEWFxPzZhIeyUYLZuMzhgx7QzvGp4xLTrTYISCA,62136
341
+ datahub/ingestion/source/looker/looker_common.py,sha256=hR4iufcjwh_iBzIJs9tYR4lwSn6vXk2WF5VFAYepKGM,62094
342
342
  datahub/ingestion/source/looker/looker_config.py,sha256=eVKw1nn9D8hUFdRfNyT3MtzL8w-zWhFeokiwSnNKQuc,13607
343
343
  datahub/ingestion/source/looker/looker_connection.py,sha256=yDmC6lDsHmL2e_Pw8ULylwOIHPWPp_6gT1iyLvD0fTw,2075
344
344
  datahub/ingestion/source/looker/looker_constant.py,sha256=GMKYtNXlpojPxa9azridKfcGLSJwKdUCTesp7U8dIrQ,402
@@ -347,7 +347,7 @@ datahub/ingestion/source/looker/looker_file_loader.py,sha256=PEyL9KWRaFcrvOkapU8
347
347
  datahub/ingestion/source/looker/looker_lib_wrapper.py,sha256=0gaYjBv4wkbbLWVgvaAV6JyWAFb0utTG6TCve2d9xss,11511
348
348
  datahub/ingestion/source/looker/looker_liquid_tag.py,sha256=mO4G4MNA4YZFvZaDBpdiJ2vP3irC82kY34RdaK4Pbfs,3100
349
349
  datahub/ingestion/source/looker/looker_query_model.py,sha256=N0jBbFruiCIIGT6sJn6tNeppeQ78KGTkOwTLirhxFNc,2144
350
- datahub/ingestion/source/looker/looker_source.py,sha256=S-g06Bm3sbyD0Qjra9hEhZmsVDb-BY_-bCPDwCjtEoQ,66427
350
+ datahub/ingestion/source/looker/looker_source.py,sha256=25Ha1lUdmGbLZl4vuARyEi5i7MedHaKu4HEwBQgbvAU,66413
351
351
  datahub/ingestion/source/looker/looker_template_language.py,sha256=W-SMICKBfIuivrHywHRYchz9SJiXhoU8VOEKGQW_1v8,17825
352
352
  datahub/ingestion/source/looker/looker_usage.py,sha256=qFBX7OHtIcarYIqFe0jQMrDV8MMPV_nN4PZrZRUznTw,23029
353
353
  datahub/ingestion/source/looker/looker_view_id_cache.py,sha256=92gDy6NONhJYBp92z_IBzDVZvezmUIkaBCZY1bdk6mE,4392
@@ -385,7 +385,7 @@ datahub/ingestion/source/powerbi/rest_api_wrapper/query.py,sha256=VNw1Uvli6g0pnu
385
385
  datahub/ingestion/source/powerbi_report_server/__init__.py,sha256=N9fGcrHXBbuPmx9rpGjd_jkMC3smXmfiwISDP1QZapk,324
386
386
  datahub/ingestion/source/powerbi_report_server/constants.py,sha256=i_hXcvPHjwk3VpTT5ef7s8dN9F6pJzPyRUiG5UzCCYI,3544
387
387
  datahub/ingestion/source/powerbi_report_server/report_server.py,sha256=MVtCTNcrRwvcvr3J5eg3ZDUI__qD-kSU2hBYbX125d8,20244
388
- datahub/ingestion/source/powerbi_report_server/report_server_domain.py,sha256=bBYr9fz4zPEFeZZOkldzKm4SBMQdisdp-MMtaYI0n3s,11783
388
+ datahub/ingestion/source/powerbi_report_server/report_server_domain.py,sha256=J43_u4O_HjomB_cKvqOpR1gNPeRYp-WkWBRuOf9sTxI,11769
389
389
  datahub/ingestion/source/profiling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
390
390
  datahub/ingestion/source/profiling/common.py,sha256=4sZ58AeBV64KRfKAgjkg-UyNjAc3YERahQMmW4algAw,1426
391
391
  datahub/ingestion/source/qlik_sense/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -442,7 +442,7 @@ datahub/ingestion/source/snowflake/snowflake_connection.py,sha256=e9dCARIQtGB8G1
442
442
  datahub/ingestion/source/snowflake/snowflake_data_reader.py,sha256=ffR5E2uhD71FUMXd3XOg2rHwrp1rbbGEFTAbqKcmI2s,2195
443
443
  datahub/ingestion/source/snowflake/snowflake_lineage_v2.py,sha256=FBmiONx4EGHWV8RNJT6zHZyntKinPFFyd2oKbTUIbhE,21319
444
444
  datahub/ingestion/source/snowflake/snowflake_profiler.py,sha256=0DJiSwII6FY34urlBja2FW66NaVvhbBWmG0p7u8Xyrc,7548
445
- datahub/ingestion/source/snowflake/snowflake_queries.py,sha256=M-FBoYeiW91-g3gOUpCTj8cKWHH-wqyFtD5UcewfI2k,28121
445
+ datahub/ingestion/source/snowflake/snowflake_queries.py,sha256=R3QxWtdR8T_8YV_3aqt3rJdto1gAij_mEHlSYKqdCfA,28326
446
446
  datahub/ingestion/source/snowflake/snowflake_query.py,sha256=Ex9FZZzz02cQis4bV3tzd53Pmf8p3AreuWnv9w95pJ0,39642
447
447
  datahub/ingestion/source/snowflake/snowflake_report.py,sha256=ahea-bwpW6T0iDehGo0Qq_J7wKxPkV61aYHm8bGwDqo,6651
448
448
  datahub/ingestion/source/snowflake/snowflake_schema.py,sha256=GFgcKV5T6VHyNwPBzzw_f8cWA9YFlWug0m6nkLoGXus,25979
@@ -454,19 +454,19 @@ datahub/ingestion/source/snowflake/snowflake_usage_v2.py,sha256=ySFm7WDk8FW9KjCn
454
454
  datahub/ingestion/source/snowflake/snowflake_utils.py,sha256=EmYb2FEcdLwei92atRBQ3iKH7av4YBZCIFTgPmLo0Ng,13092
455
455
  datahub/ingestion/source/snowflake/snowflake_v2.py,sha256=kx8aFalByIAfrp0a_kq5iyojzh9vI4od5eVGthAR5RY,33912
456
456
  datahub/ingestion/source/sql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
457
- datahub/ingestion/source/sql/athena.py,sha256=Uh9wGLOqAkcphffxOPIQNyXvjeRm74XIpaLb4rjqMjM,24045
457
+ datahub/ingestion/source/sql/athena.py,sha256=H-i13vF3QdkuiXtR5WIo4eQh9qcxGtdgQQEpM09uTzg,24017
458
458
  datahub/ingestion/source/sql/clickhouse.py,sha256=uSRy-HKAiGFTHVLoVtGoh23X0O1lwyYUaK8BaWkYhps,25555
459
459
  datahub/ingestion/source/sql/cockroachdb.py,sha256=XaD7eae34plU9ISRC6PzYX9q6RdT2qkzjH6CpTOgkx4,1443
460
460
  datahub/ingestion/source/sql/druid.py,sha256=lhO9CCOlHV-6LjBuAxAxtB9I1pvPtsGSdr63bz6_ilA,2837
461
461
  datahub/ingestion/source/sql/hana.py,sha256=0PIvcX0Rz59NyR7Ag5Bv1MBV_UbJwxl9UAopo_xe_CA,1342
462
462
  datahub/ingestion/source/sql/hive.py,sha256=NRUrEWnR1JN5U0q4CHlRacdKzxJhS4unFXnXYZT7vZE,30306
463
- datahub/ingestion/source/sql/hive_metastore.py,sha256=65DI0PeJMpGOEhTfo6cygeybgaFqi93yGnLLRy58ATo,36117
463
+ datahub/ingestion/source/sql/hive_metastore.py,sha256=fH7bAcljapYqmF8cQE7humoufFe2RVFRYOcyavMg9yo,36103
464
464
  datahub/ingestion/source/sql/mariadb.py,sha256=Hm102kmfs_1rd4lsTYhzVMZq5S3B6cyfvpHSzJjqvMw,737
465
465
  datahub/ingestion/source/sql/mysql.py,sha256=nDWK4YbqomcJgnit9b8geUGrp_3eix4bt0_k94o7g-0,3350
466
466
  datahub/ingestion/source/sql/oracle.py,sha256=tVP3AiZO97psM8O8UzBb9C7__s8y4fkyQbXBv3m1LU4,24503
467
467
  datahub/ingestion/source/sql/postgres.py,sha256=uC1kYEI8VdxiZ1Y9IxMWzwmg11wtMqYN0e2fkok1rxo,11972
468
468
  datahub/ingestion/source/sql/presto.py,sha256=PB-CS5MX2dSRFRHjlxfkLHGXLZXFNCsVAAyRBtY6HMg,3611
469
- datahub/ingestion/source/sql/sql_common.py,sha256=98vCNU_ch41i_QSQSRWLIVRaTVfw6RWv4bP28SypfH0,48812
469
+ datahub/ingestion/source/sql/sql_common.py,sha256=RuujiKCvNsAnakRGzdo80wTRdZRwXpmUDxdWu3LFYeg,48798
470
470
  datahub/ingestion/source/sql/sql_config.py,sha256=CBXkCpzBAGrWAXJFte_i5TmpzcsMJwEjGHpfzd6vAow,8964
471
471
  datahub/ingestion/source/sql/sql_generic.py,sha256=9AERvkK8kdJUeDOzCYJDb93xdv6Z4DGho0NfeHj5Uyg,2740
472
472
  datahub/ingestion/source/sql/sql_generic_profiler.py,sha256=8cDmNpT_UXzYmP8-RWoDCnewmVGCj2cYCzH9_gSsF3o,11590
@@ -475,13 +475,13 @@ datahub/ingestion/source/sql/sql_types.py,sha256=uuU3taVe4oCTXkqg1wSMGzTwVleRyUR
475
475
  datahub/ingestion/source/sql/sql_utils.py,sha256=q-Bsk6WxlsRtrw9RXBxvqI3zuaMTC_F25T2VrCziR9I,8418
476
476
  datahub/ingestion/source/sql/sqlalchemy_data_reader.py,sha256=FvHZ4JEK3aR2DYOBZiT_ZsAy12RjTu4t_KIR_92B11k,2644
477
477
  datahub/ingestion/source/sql/sqlalchemy_uri_mapper.py,sha256=KOpbmDIE2h1hyYEsbVHJi2B7FlsyUMTXZx4diyzltQg,1826
478
- datahub/ingestion/source/sql/teradata.py,sha256=79jaYgU8QjxnZ3nQ-wq-4xMFoTjCDOfNrpVNbUoS_wU,33449
478
+ datahub/ingestion/source/sql/teradata.py,sha256=TLmlwDc4rESrylEHaj2S98e0cPs3xjptTl8vNPG5Sl8,33407
479
479
  datahub/ingestion/source/sql/trino.py,sha256=FEn_BQ3pm23hKx94ek5kk5IXGNYcBqZEhllRJFUzfU8,17895
480
480
  datahub/ingestion/source/sql/two_tier_sql_source.py,sha256=YDrGBb5WKVls6qv17QU5foKrf71SydzEltc3WsVAhQc,5732
481
481
  datahub/ingestion/source/sql/vertica.py,sha256=_9OgSgIgqBml0av063rb8nACiT3SAmzpw0ouyF91wv8,33382
482
482
  datahub/ingestion/source/sql/mssql/__init__.py,sha256=1agpl8S_uDW40olkhCX_W19dbr5GO9qgjS3R7pLRZSk,87
483
483
  datahub/ingestion/source/sql/mssql/job_models.py,sha256=nrRDYVKah5ep7J8-ddNX2PVPY0MIPQqkvEgO33s5L3k,7988
484
- datahub/ingestion/source/sql/mssql/source.py,sha256=1IIjVaFqGeFJCJjWBDWA-_atgVp7LSNVdQr955uWS3w,32385
484
+ datahub/ingestion/source/sql/mssql/source.py,sha256=sHckKQ7qMJKnH6r8rj8B-9NiIGXFLiyKTLBJh1SJxmQ,32371
485
485
  datahub/ingestion/source/sql/mssql/stored_procedure_lineage.py,sha256=RpnvKPalAAaOD_eUg8bZ4VkGTSeLFWuy0mefwc4s3x8,2837
486
486
  datahub/ingestion/source/state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
487
487
  datahub/ingestion/source/state/checkpoint.py,sha256=-fTUZKkY4nHTFqSWZ0jJkkdIu_tWlOjRNhm4FTr4ul4,8860
@@ -499,7 +499,7 @@ datahub/ingestion/source/state_provider/datahub_ingestion_checkpointing_provider
499
499
  datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py,sha256=DziD57PbHn2Tcy51tYXCG-GQgyTGMUxnkuzVS_xihFY,4079
500
500
  datahub/ingestion/source/state_provider/state_provider_registry.py,sha256=SVq4mIyGNmLXE9OZx1taOiNPqDoQp03-Ot9rYnB5F3k,401
501
501
  datahub/ingestion/source/tableau/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
502
- datahub/ingestion/source/tableau/tableau.py,sha256=iesiz5xbbWwQchdZraoyGt0Csiu7eUc-OxtD0K3uK5E,153423
502
+ datahub/ingestion/source/tableau/tableau.py,sha256=qeght8iggvzlpFf8uHRjuflW5v26iqMRMrI73RVDgQE,154170
503
503
  datahub/ingestion/source/tableau/tableau_common.py,sha256=iVyRI1cZcOEU_VPnR9CWVzv-OnbhDPJZApbggDUBaXk,26926
504
504
  datahub/ingestion/source/tableau/tableau_constant.py,sha256=ZcAeHsQUXVVL26ORly0ByZk_GJAFbxaKuJAlX_sYMac,2686
505
505
  datahub/ingestion/source/tableau/tableau_server_wrapper.py,sha256=nSyx9RzC6TCQDm-cTVJ657qT8iDwzk_8JMKpohhmOc4,1046
@@ -575,7 +575,7 @@ datahub/lite/lite_server.py,sha256=p9Oa2nNs65mqcssSIVOr7VOzWqfVstz6ZQEdT4f82S0,1
575
575
  datahub/lite/lite_util.py,sha256=pgBpT3vTO1YCQ2njZRNyicSkHYeEmQCt41BaXU8WvMo,4503
576
576
  datahub/metadata/__init__.py,sha256=AjhXPjI6cnpdcrBRrE5gOWo15vv2TTl2ctU4UAnUN7A,238
577
577
  datahub/metadata/_schema_classes.py,sha256=n4PvKZyycu8LcAf22nUPz-s3KWlMtmcq5CJcX7R-8xM,985155
578
- datahub/metadata/schema.avsc,sha256=vDa9khk0Bw672nxcPHkxuGU_KCokIqpFGlTvm7UdFX8,663285
578
+ datahub/metadata/schema.avsc,sha256=TUfFwgRO345ERHijIqe5QY5elpf7T8SfB4k_YjaOlZ8,664316
579
579
  datahub/metadata/schema_classes.py,sha256=X5Jl5EaSxyHdXOQv14pJ5WkQALun4MRpJ4q12wVFE18,1299
580
580
  datahub/metadata/urns.py,sha256=nfrCTExR-k2P9w272WVtWSN3xW1VUJngPwP3xnvULjU,1217
581
581
  datahub/metadata/_urns/__init__.py,sha256=cOF3GHMDgPhmbLKbN02NPpuLGHSu0qNgQyBRv08eqF0,243
@@ -654,16 +654,16 @@ datahub/metadata/com/linkedin/pegasus2avro/view/__init__.py,sha256=-Le-jOqUJKv3p
654
654
  datahub/metadata/schemas/Access.avsc,sha256=gdEfWJLkvjIz-jzlceK4Dl5pBDdCHG423Ba_EYGQgUk,1562
655
655
  datahub/metadata/schemas/Actors.avsc,sha256=M76L2_Dlp7VyhVtu9__jhnh8rBNvNobtNJUfvl7bcPE,1188
656
656
  datahub/metadata/schemas/AssertionActions.avsc,sha256=zrvXzX2Nv_dmK6I3ZXCVWQ1bVs1q01Gl9sDRJA8oSDU,1618
657
- datahub/metadata/schemas/AssertionInfo.avsc,sha256=ElESZKMXPjp_ay1BR8jWrY8jD4dehY2p5JgUvBI6xhM,125123
657
+ datahub/metadata/schemas/AssertionInfo.avsc,sha256=djiUVdw0pGd_Ex7uJspasTx2xwwCnd9cpItd76VJqYw,125296
658
658
  datahub/metadata/schemas/AssertionKey.avsc,sha256=EjNaTyzGxtWzTsZd87P2ZSaGX5dn8Y7HGBdqvlQVrFI,638
659
659
  datahub/metadata/schemas/AssertionRunEvent.avsc,sha256=FUyV73bUliBC-a_XFUlfgh75o99-lu1fl36b2q8Pqx4,12886
660
660
  datahub/metadata/schemas/BrowsePaths.avsc,sha256=NR_4dKuJMk1X2RB4DLkHVSqyMQc4PvT7eR0n6lM5aOM,654
661
661
  datahub/metadata/schemas/BrowsePathsV2.avsc,sha256=rpcXUONOmxCzTzUJZ4UxR5rk3AotiaHkCfqM5uJELjY,1876
662
- datahub/metadata/schemas/BusinessAttributeInfo.avsc,sha256=bkUMvPYWgMLO4f8vjf861fgm1MCfT9CGrQimm0IiUCo,21821
662
+ datahub/metadata/schemas/BusinessAttributeInfo.avsc,sha256=5HpEN9ZP6qdkcIib01F9n54dHoNDrGrml_9o_ZO5JTc,22062
663
663
  datahub/metadata/schemas/BusinessAttributeKey.avsc,sha256=TlQpWyALuTh-LbA784D0t4nnsOJbnaJEE9JFgnBd0hs,525
664
- datahub/metadata/schemas/BusinessAttributes.avsc,sha256=e2ApgMqlPeFB9ai3EWcwfN7ouDmeSccVthihL4_z8YQ,1374
664
+ datahub/metadata/schemas/BusinessAttributes.avsc,sha256=UnBdJWrdl4S147IE1zDQh5oCL_R9gB6yomuEurPbS2w,1658
665
665
  datahub/metadata/schemas/CaveatsAndRecommendations.avsc,sha256=8AYeLClkdogSvUo_3aoY3b47ZPhpFw2KlaFt7KAfuQc,2833
666
- datahub/metadata/schemas/ChartInfo.avsc,sha256=upZbc-mNEwA3VQTSbtiZa8aP4fL5QOLP5kphuNlvjtU,11453
666
+ datahub/metadata/schemas/ChartInfo.avsc,sha256=q2djVFyUvWZ1xn3yIZB1aMck65W2nnshcPysHhVs2lw,11481
667
667
  datahub/metadata/schemas/ChartKey.avsc,sha256=DvNHmP9vn2LNSymEK9TSsqYGvhbnVDhHG4056Af6Az0,1332
668
668
  datahub/metadata/schemas/ChartQuery.avsc,sha256=6qz8Q5wa5h0GS6QcwfzVZrRi26PoEwXyjIwSqL8nyhk,919
669
669
  datahub/metadata/schemas/ChartUsageStatistics.avsc,sha256=FjEEPj_19jUvJcS9cyZtHqByQyPdt2xhmxfFdw9mSM4,5881
@@ -763,7 +763,7 @@ datahub/metadata/schemas/EditableMLModelGroupProperties.avsc,sha256=Ei1s7js-UPdg
763
763
  datahub/metadata/schemas/EditableMLModelProperties.avsc,sha256=AkkIWlTDJUEMtEsujpoy9s8XMxRMN1FjqPi9XoZvBmQ,534
764
764
  datahub/metadata/schemas/EditableMLPrimaryKeyProperties.avsc,sha256=DZjI7cyBjCVcvkoleU-YK8uoZ6de7mZ5ohw1P-dafXM,451
765
765
  datahub/metadata/schemas/EditableNotebookProperties.avsc,sha256=Mi5kplj5VNbv1z25N-PZ2ZfNW9cZUkwJHN8_37TY0bs,3809
766
- datahub/metadata/schemas/EditableSchemaMetadata.avsc,sha256=kW_6s-28u4qImASYJwb0wOV1MbXg2uiILDJvmyYEHFc,18759
766
+ datahub/metadata/schemas/EditableSchemaMetadata.avsc,sha256=s135EIj1sXDoQkCpExRIJWyi7dt2aZ1tV_84A83TJxc,19032
767
767
  datahub/metadata/schemas/Embed.avsc,sha256=NjRynC2b3rqXV4MF39xxlYFFCgFjVabrR9NRTKhYT-w,401
768
768
  datahub/metadata/schemas/EntityChangeEvent.avsc,sha256=NMEcBvcUEC_lYoOug60AKzOqWfuxRvelXFwyfbZlp0Y,3722
769
769
  datahub/metadata/schemas/EntityTypeInfo.avsc,sha256=QVZqy_y1tbxLhvh4k2Mb11otbSC-Xmtv6d30TH-LN3w,753
@@ -786,7 +786,7 @@ datahub/metadata/schemas/GlossaryNodeKey.avsc,sha256=rcOPY6fi_CX8xLQjHC6ndQyk90b
786
786
  datahub/metadata/schemas/GlossaryRelatedTerms.avsc,sha256=ZTP0mrFD4y-C6JekRy8IVuHvICUkJib-ZAYD93Gv1tA,2763
787
787
  datahub/metadata/schemas/GlossaryTermInfo.avsc,sha256=j4s9NCyMOIF03HfaXoQEIkiMTRaCy_-euhenptfu7IA,2935
788
788
  datahub/metadata/schemas/GlossaryTermKey.avsc,sha256=mxrtJZ06DPEFiB-uuGe_omriUH7RuibIqFyAqpjuwzw,818
789
- datahub/metadata/schemas/GlossaryTerms.avsc,sha256=t91bJYDBMi0rRizwBJRg8VYPU6CzQMUpEEycjIJpsqs,7010
789
+ datahub/metadata/schemas/GlossaryTerms.avsc,sha256=ogOFO6Hr2Xb7s1JHqxsCPY8r_qY_9kwu69k5-E3j2BM,7123
790
790
  datahub/metadata/schemas/GroupMembership.avsc,sha256=wT3Hbpv2Z7V4X_-rIoed0cukAOMyYEL93udK8mMCjn0,557
791
791
  datahub/metadata/schemas/IcebergCatalogInfo.avsc,sha256=X9Ejqzn1DyxNIth7vDhtPjGG4xMPQMhl7f-S7fBFxek,691
792
792
  datahub/metadata/schemas/IcebergWarehouseInfo.avsc,sha256=cl_3cWPyVdTWUuV0OAODrRVAa3fzrxmGE72fJ-xLcjo,2445
@@ -794,7 +794,7 @@ datahub/metadata/schemas/IncidentInfo.avsc,sha256=JCKSXCjTwwONte-GA4QhstlBn5Ditu
794
794
  datahub/metadata/schemas/IncidentKey.avsc,sha256=Pip__DyNNTal7NxryM3kFi9qHlwntp1rIA8Al8Zz264,542
795
795
  datahub/metadata/schemas/IncidentSource.avsc,sha256=lY_SarA3cM55KNENcB5z1Gu2MygxEl9l7R8LdMak9AQ,1199
796
796
  datahub/metadata/schemas/IncidentsSummary.avsc,sha256=NTYp-6Oe92ALApbM3759TJ5pLXRArsSriIPq-f7w9vI,4514
797
- datahub/metadata/schemas/InputFields.avsc,sha256=jmmfYSqKTeyQGrIlgPxVMvTQmG4NYuriPMA8K14cM-4,33671
797
+ datahub/metadata/schemas/InputFields.avsc,sha256=f3SFxnV3-K2D59ctC5H2xCRx8uwqZTRI95KgSotQT-k,33832
798
798
  datahub/metadata/schemas/InstitutionalMemory.avsc,sha256=vNeAoFSIH1jEDa2rEyTStUjWDvf53W9AvL7F8oh7isY,3785
799
799
  datahub/metadata/schemas/IntendedUse.avsc,sha256=IKZSWdvc0uAyyT-FtdQOGbMC-P7RS9cO0vOVKWT6fbw,1361
800
800
  datahub/metadata/schemas/InviteToken.avsc,sha256=8k_9MxHu9GVf7gvS0SlnQu7tJfpbXsRFdz6lQrFKPNc,737
@@ -815,7 +815,7 @@ datahub/metadata/schemas/MLModelProperties.avsc,sha256=hDCBHxGe-cmCBeU1k0ANuQlKj
815
815
  datahub/metadata/schemas/MLPrimaryKeyKey.avsc,sha256=mX4CQcoN3FC_VQDBCkhlmJk4pfQKDrSeuqqCTTXTmq8,1092
816
816
  datahub/metadata/schemas/MLPrimaryKeyProperties.avsc,sha256=URIuOpS93RVk8MZVcbZ-dmTwu_cN3KSOKxSR8fm-eTo,6744
817
817
  datahub/metadata/schemas/MLTrainingRunProperties.avsc,sha256=WGgj0MuQrGD4UgvyHCJHzTnHja2LlJTOr1gLu8SySj0,4269
818
- datahub/metadata/schemas/MetadataChangeEvent.avsc,sha256=73m6GXjSHTILKxczi7IxN8Dm0iBFTps0QKph0AkaRag,373214
818
+ datahub/metadata/schemas/MetadataChangeEvent.avsc,sha256=QYen3-heNEk_r4FoP72yWiJOZ4dnS6nJASdkdnG7-QQ,373573
819
819
  datahub/metadata/schemas/MetadataChangeLog.avsc,sha256=mpdodpx25E6M1Gq_7slEcPAm-1Es5xPsoqV60HgO7zg,12167
820
820
  datahub/metadata/schemas/MetadataChangeProposal.avsc,sha256=EMfQrYsuHf1p6UvBjoLtfdTHGe-vGNJaCFEHz8hdKU0,9698
821
821
  datahub/metadata/schemas/Metrics.avsc,sha256=O7DJGjOwmHbb1x_Zj7AuM_HaHKjBvkfJKfUsX8icXD4,690
@@ -845,12 +845,12 @@ datahub/metadata/schemas/RoleProperties.avsc,sha256=tDw-WF1uBGIcrk38nOnXs3FCF_Yj
845
845
  datahub/metadata/schemas/SchemaFieldAliases.avsc,sha256=El_cxn0KUhMf2LGfMPzcZ6Xtths2wQOaF9fnM1KQmxQ,560
846
846
  datahub/metadata/schemas/SchemaFieldInfo.avsc,sha256=Gf9EGqrEf10554hd4Eut7T8ZdOR-9OHgDXVRhFo311o,800
847
847
  datahub/metadata/schemas/SchemaFieldKey.avsc,sha256=TK_RiRbTm9965OxlQH28-x-KH0lpavW3zMlXx5ChnJ0,967
848
- datahub/metadata/schemas/SchemaMetadata.avsc,sha256=1rUs2G3tpG02FNxRGMlRaW0FDeTEwS36Rmh2Obz4h40,40849
848
+ datahub/metadata/schemas/SchemaMetadata.avsc,sha256=aOuIAYN_ISWQRhRSBNvM6wb3oQz6o_V-DnUMn4oOUPU,40994
849
849
  datahub/metadata/schemas/Siblings.avsc,sha256=NTktntlHuA1InH3TgrspWlFBntYlqmp3erUd-JFMsps,842
850
850
  datahub/metadata/schemas/SourceCode.avsc,sha256=tUgo2rczO5x1fxw3fYNWQj-51vRNmNIj38b1wayA0aQ,1370
851
851
  datahub/metadata/schemas/Status.avsc,sha256=rPZSXSJdwnNywqNx2qll8cdt54aYgI-YUbRr3GK7h78,522
852
852
  datahub/metadata/schemas/StructuredProperties.avsc,sha256=N0NNDrkqbIgEHrb5uz1ynwZh3mb_ICVK7tDcnBLMfjI,4032
853
- datahub/metadata/schemas/StructuredPropertyDefinition.avsc,sha256=IsyjxjqDaBYo-q-Fl0pQL0kIvWNdDFNQMAlGGQXFMNc,11461
853
+ datahub/metadata/schemas/StructuredPropertyDefinition.avsc,sha256=a-6TaOQ4A7LDFLshmaFRBcXjz11p4vM0Q3X35GN4Zo0,11737
854
854
  datahub/metadata/schemas/StructuredPropertyKey.avsc,sha256=lp7tQBgeriEU1YMQ6a4-6aUGSWDqNl00lLDym97j1yI,618
855
855
  datahub/metadata/schemas/StructuredPropertySettings.avsc,sha256=EDNlXfT1TqogfulCanIc-nuYO9ZxRFOGzD9tl3ZJdB8,3732
856
856
  datahub/metadata/schemas/SubTypes.avsc,sha256=bhXbzK020zDyQno97Xp05vmoMeZ82IGu2jz7pWDo3RQ,655
@@ -904,12 +904,12 @@ datahub/sql_parsing/_models.py,sha256=il-xm1RcLdi1phJUV3xrTecdOGH31akqheuSC2N4Yh
904
904
  datahub/sql_parsing/_sqlglot_patch.py,sha256=iYJ8zOThHqqbamD5jdNr9iHTWD7ewNeHzPiTb6-rO3Y,7043
905
905
  datahub/sql_parsing/datajob.py,sha256=1X8KpEk-y3_8xJuA_Po27EHZgOcxK9QADI6Om9gSGn0,1751
906
906
  datahub/sql_parsing/query_types.py,sha256=FKjDzszZzsrCfYfm7dgD6T_8865qxWl767fdGyHWBh4,2720
907
- datahub/sql_parsing/schema_resolver.py,sha256=8dYz6pC3Y35pXBn41grOE2dKkSiSeLHOz-N138uWQg4,10796
907
+ datahub/sql_parsing/schema_resolver.py,sha256=ISuingLcQnOJZkNXBkc73uPwYUbbOtERAjgGhJajDiQ,10782
908
908
  datahub/sql_parsing/split_statements.py,sha256=Vi8VAgaEkGcK5bs48L-Krig3qhjxcvqvotCpL0ux-EY,8674
909
909
  datahub/sql_parsing/sql_parsing_aggregator.py,sha256=XNZWjeaRhzaT92mzsJZGJfYaxJENsyp5dSHTmL81RIc,70130
910
910
  datahub/sql_parsing/sql_parsing_common.py,sha256=h_V_m54hJ9EUh5kczq7cYOIeNeo4bgf0Px0H-Nq-UIg,2602
911
911
  datahub/sql_parsing/sql_parsing_result_utils.py,sha256=prwWTj1EB2fRPv1eMB4EkpFNafIYAt-X8TIK0NWqank,796
912
- datahub/sql_parsing/sqlglot_lineage.py,sha256=42n8yCmCt25bOR8fmq4n_nNubn5kLuw_Mx36SFC9Nj0,47460
912
+ datahub/sql_parsing/sqlglot_lineage.py,sha256=l0kT8MuRIg96X7BNJaboMznF54b-yvM2nMTLyF2d0Nw,47446
913
913
  datahub/sql_parsing/sqlglot_utils.py,sha256=6W6MQ5Yh0xXT9_h0jd19yoGWMdXicyRBDD_FwV7nj04,14701
914
914
  datahub/sql_parsing/tool_meta_extractor.py,sha256=qEPq8RFWyK0tmSPNlluvd5cxgwbd2v6m9ViSY4hm2QM,6822
915
915
  datahub/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -917,14 +917,15 @@ datahub/telemetry/stats.py,sha256=TwaQisQlD2Bk0uw__pP6u3Ovz9r-Ip4pCwpnto4r5e0,95
917
917
  datahub/telemetry/telemetry.py,sha256=sGe3RsrkX1L_jrsRuz5Fd7_9vEY6mHMtkMqR_9_axbo,15025
918
918
  datahub/testing/__init__.py,sha256=TywIuzGQvzJsNhI_PGD1RFk11M3RtGl9jIMtAVVHIkg,272
919
919
  datahub/testing/check_imports.py,sha256=qs2bk__DeAlsvh-Y9ln9FQfG9DsdIVuSoxkoh4pMmms,2316
920
- datahub/testing/check_sql_parser_result.py,sha256=f7U7IUSbfV4VACdNI857wPZ9tAZ9j6mXiXmcJNT_RzM,2671
920
+ datahub/testing/check_sql_parser_result.py,sha256=1RV73w0Q7Jv7XoIz870oaooJFut21hXg72TIBunvdm8,2661
921
921
  datahub/testing/check_str_enum.py,sha256=yqk0XXHOGteN-IGqCp5JHy0Kca13BnI09ZqKc4Nwl3E,1187
922
- datahub/testing/compare_metadata_json.py,sha256=pVJB2qLoKzEJLBXqFT-qGrxpA1y76y-mIbvJf0NnAD0,5274
922
+ datahub/testing/compare_metadata_json.py,sha256=mTU5evu7KLS3cx8OLOC1fFxj0eY1J1CGV2PEQZmapos,5361
923
923
  datahub/testing/docker_utils.py,sha256=g169iy_jNR_mg0p8X31cChZqjOryutAIHUYLq3xqueY,2415
924
924
  datahub/testing/doctest.py,sha256=1_8WEhHZ2eRQtw8vsXKzr9L5zzvs0Tcr6q4mnkyyvtw,295
925
925
  datahub/testing/mcp_diff.py,sha256=Dxde5uZHqZf1EjOkHm405OHY5PPJp03agZJM9SyR4yE,10717
926
+ datahub/testing/pytest_hooks.py,sha256=eifmj0M68AIfjTn_-0vtaBkKl75vNKMjsbYX-pJqmGY,1417
926
927
  datahub/upgrade/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
927
- datahub/upgrade/upgrade.py,sha256=iDjIDY2YBl2XlKLvb5EMMdYOZ6KraeItgiu9Y4wIM1Q,16666
928
+ datahub/upgrade/upgrade.py,sha256=lf60_dCu51twObAL5E8NqdrW3_2lsnUJUaB9MSEVXwI,16638
928
929
  datahub/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
929
930
  datahub/utilities/_custom_package_loader.py,sha256=9kgPE7Y77E-hNee8l4sKtVby-btUNum3dBfDixMzcVA,2059
930
931
  datahub/utilities/_markupsafe_compat.py,sha256=QX7c9KiHs56ASl7bJlgR4FAf3CGiY94zIr0h6Ak15To,444
@@ -944,7 +945,7 @@ datahub/utilities/hive_schema_to_avro.py,sha256=1MP0a6FFVEYxLg_4lKF7hPxbHJJy0uRQ
944
945
  datahub/utilities/is_pytest.py,sha256=2m9T4S9IIKhI5RfTqrB2ZmumzHocdxBHpM1HroWj2XQ,138
945
946
  datahub/utilities/logging_manager.py,sha256=bc-x5VZGvFUHT0HD-TF3Uz_nzw3dpKdJSbz6kjpAqAQ,10073
946
947
  datahub/utilities/lossy_collections.py,sha256=5rdtfK2pjwvOrrzLf_KGFOMiVvLLmoXj5EVQXTFSR3E,5704
947
- datahub/utilities/mapping.py,sha256=osZa2ONvVhoX2vCpFdVb84BGUOnZbGJb7aNG4YCPOH4,17978
948
+ datahub/utilities/mapping.py,sha256=ig7A8CRJPZc2RSEFQb5ByQkPOoE-ImEG8P3de9qg4Yo,17964
948
949
  datahub/utilities/memory_footprint.py,sha256=mJj2lN3egTvOQPXfz8e3nsYmssaUREINCtxMsgg9e0s,1569
949
950
  datahub/utilities/openapi_utils.py,sha256=VNiNo1Pjvtn2MLShQ1vCjc27id7LmI-pnLdjlUatNk4,2233
950
951
  datahub/utilities/ordered_set.py,sha256=p2DdvbD98ELTLCxgdZdOKQ50VnnMDKr3l9fmqCzu5g4,1135
@@ -1012,9 +1013,9 @@ datahub_provider/operators/datahub_assertion_operator.py,sha256=uvTQ-jk2F0sbqqxp
1012
1013
  datahub_provider/operators/datahub_assertion_sensor.py,sha256=lCBj_3x1cf5GMNpHdfkpHuyHfVxsm6ff5x2Z5iizcAo,140
1013
1014
  datahub_provider/operators/datahub_operation_operator.py,sha256=aevDp2FzX7FxGlXrR0khoHNbxbhKR2qPEX5e8O2Jyzw,174
1014
1015
  datahub_provider/operators/datahub_operation_sensor.py,sha256=8fcdVBCEPgqy1etTXgLoiHoJrRt_nzFZQMdSzHqSG7M,168
1015
- acryl_datahub-1.0.0rc1.dist-info/LICENSE,sha256=9xNHpsD0uYF5ONzXsKDCuHHB-xbiCrSbueWXqrTNsxk,11365
1016
- acryl_datahub-1.0.0rc1.dist-info/METADATA,sha256=Z7QNzSBU3Gur8j0qxxg7MxnbI2CnvVleJLYc3IXohvM,175366
1017
- acryl_datahub-1.0.0rc1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
1018
- acryl_datahub-1.0.0rc1.dist-info/entry_points.txt,sha256=U1e5ZwqPX1OaIbvGrwvozcdB8SbzFYXQM7plpdLKKeo,9592
1019
- acryl_datahub-1.0.0rc1.dist-info/top_level.txt,sha256=iLjSrLK5ox1YVYcglRUkcvfZPvKlobBWx7CTUXx8_GI,25
1020
- acryl_datahub-1.0.0rc1.dist-info/RECORD,,
1016
+ acryl_datahub-1.0.0rc3.dist-info/LICENSE,sha256=9xNHpsD0uYF5ONzXsKDCuHHB-xbiCrSbueWXqrTNsxk,11365
1017
+ acryl_datahub-1.0.0rc3.dist-info/METADATA,sha256=OkC6rVw9ET8QynFmJiMs32eyG947NHAhIMkzoTbpv8U,175366
1018
+ acryl_datahub-1.0.0rc3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
1019
+ acryl_datahub-1.0.0rc3.dist-info/entry_points.txt,sha256=U1e5ZwqPX1OaIbvGrwvozcdB8SbzFYXQM7plpdLKKeo,9592
1020
+ acryl_datahub-1.0.0rc3.dist-info/top_level.txt,sha256=iLjSrLK5ox1YVYcglRUkcvfZPvKlobBWx7CTUXx8_GI,25
1021
+ acryl_datahub-1.0.0rc3.dist-info/RECORD,,
datahub/_version.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # Published at https://pypi.org/project/acryl-datahub/.
2
2
  __package_name__ = "acryl-datahub"
3
- __version__ = "1.0.0rc1"
3
+ __version__ = "1.0.0rc3"
4
4
 
5
5
 
6
6
  def is_dev_mode() -> bool:
datahub/cli/docker_cli.py CHANGED
@@ -430,7 +430,7 @@ def detect_quickstart_arch(arch: Optional[str]) -> Architectures:
430
430
  return quickstart_arch
431
431
 
432
432
 
433
- @docker.command() # noqa: C901
433
+ @docker.command()
434
434
  @click.option(
435
435
  "--version",
436
436
  type=str,
@@ -592,7 +592,7 @@ def detect_quickstart_arch(arch: Optional[str]) -> Architectures:
592
592
  "arch",
593
593
  ]
594
594
  )
595
- def quickstart( # noqa: C901
595
+ def quickstart(
596
596
  version: Optional[str],
597
597
  build_locally: bool,
598
598
  pull_images: bool,
@@ -20,7 +20,7 @@ from pydantic import BaseModel, Extra, ValidationError
20
20
  from pydantic.fields import Field
21
21
  from typing_extensions import Protocol, Self
22
22
 
23
- from datahub.configuration._config_enum import ConfigEnum as ConfigEnum # noqa: I250
23
+ from datahub.configuration._config_enum import ConfigEnum as ConfigEnum
24
24
  from datahub.configuration.pydantic_migration_helpers import PYDANTIC_VERSION_2
25
25
  from datahub.utilities.dedup_list import deduplicate_list
26
26
 
@@ -3,7 +3,7 @@ from enum import Enum, auto
3
3
  from typing import Callable, Dict, Optional, Type
4
4
 
5
5
  from datahub.ingestion.api.common import PipelineContext
6
- from datahub.ingestion.api.source import ( # noqa: I250
6
+ from datahub.ingestion.api.source import (
7
7
  Source,
8
8
  SourceCapability as SourceCapability,
9
9
  )
@@ -33,7 +33,7 @@ from datahub.emitter.mce_builder import DEFAULT_ENV, Aspect
33
33
  from datahub.emitter.mcp import MetadataChangeProposalWrapper
34
34
  from datahub.emitter.rest_emitter import DatahubRestEmitter
35
35
  from datahub.emitter.serialization_helper import post_json_transform
36
- from datahub.ingestion.graph.config import ( # noqa: I250; TODO: Remove this alias
36
+ from datahub.ingestion.graph.config import (
37
37
  DatahubClientConfig as DatahubClientConfig,
38
38
  )
39
39
  from datahub.ingestion.graph.connections import (
@@ -439,7 +439,7 @@ class Pipeline:
439
439
  return True
440
440
  return False
441
441
 
442
- def run(self) -> None: # noqa: C901
442
+ def run(self) -> None:
443
443
  with contextlib.ExitStack() as stack:
444
444
  if self.config.flags.generate_memory_profiles:
445
445
  import memray
@@ -5,7 +5,7 @@ import urllib
5
5
  from collections import defaultdict
6
6
  from dataclasses import dataclass, field
7
7
  from time import sleep
8
- from typing import Dict, Iterable, List, Optional, Union
8
+ from typing import Dict, Iterable, List, Optional, Set, Union
9
9
 
10
10
  import nest_asyncio
11
11
  from okta.client import Client as OktaClient
@@ -77,6 +77,10 @@ class OktaConfig(StatefulIngestionConfigBase, ConfigModel):
77
77
  default=True,
78
78
  description="Whether group membership should be ingested into DataHub. ingest_groups must be True if this is True.",
79
79
  )
80
+ ingest_groups_users: bool = Field(
81
+ default=True,
82
+ description="Only ingest users belonging to the selected groups. This option is only useful when `ingest_users` is set to False and `ingest_group_membership` to True.",
83
+ )
80
84
 
81
85
  # Optional: Customize the mapping to DataHub Username from an attribute appearing in the Okta User
82
86
  # profile. Reference: https://developer.okta.com/docs/reference/api/users/
@@ -344,6 +348,7 @@ class OktaSource(StatefulIngestionSourceBase):
344
348
  aspect=StatusClass(removed=False),
345
349
  ).as_workunit()
346
350
 
351
+ okta_users: Set[User] = set()
347
352
  # Step 2: Populate GroupMembership Aspects for CorpUsers
348
353
  datahub_corp_user_urn_to_group_membership: Dict[str, GroupMembershipClass] = (
349
354
  defaultdict(lambda: GroupMembershipClass(groups=[]))
@@ -372,6 +377,9 @@ class OktaSource(StatefulIngestionSourceBase):
372
377
  self.report.report_failure("okta_user_mapping", error_str)
373
378
  continue
374
379
 
380
+ if self.config.ingest_groups_users:
381
+ okta_users.add(okta_user)
382
+
375
383
  # Update the GroupMembership aspect for this group member.
376
384
  datahub_corp_user_urn_to_group_membership[
377
385
  datahub_corp_user_urn
@@ -379,7 +387,10 @@ class OktaSource(StatefulIngestionSourceBase):
379
387
 
380
388
  # Step 3: Produce MetadataWorkUnits for CorpUsers.
381
389
  if self.config.ingest_users:
382
- okta_users = self._get_okta_users(event_loop)
390
+ # we can just throw away collected okta users so far and fetch them all
391
+ okta_users = set(self._get_okta_users(event_loop))
392
+
393
+ if okta_users:
383
394
  filtered_okta_users = filter(self._filter_okta_user, okta_users)
384
395
  datahub_corp_user_snapshots = self._map_okta_users(filtered_okta_users)
385
396
  for user_count, datahub_corp_user_snapshot in enumerate(
@@ -110,7 +110,7 @@ class ConnectorManifest:
110
110
 
111
111
  name: str
112
112
  type: str
113
- config: Dict
113
+ config: Dict[str, str]
114
114
  tasks: Dict
115
115
  url: Optional[str] = None
116
116
  flow_property_bag: Optional[Dict[str, str]] = None
@@ -1,5 +1,5 @@
1
1
  import logging
2
- from typing import Iterable, List, Optional, Type
2
+ from typing import Dict, Iterable, List, Optional, Type
3
3
 
4
4
  import jpype
5
5
  import jpype.imports
@@ -121,7 +121,11 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
121
121
  connector_manifest.config, self.config.provided_configs
122
122
  )
123
123
  connector_manifest.url = connector_url
124
- connector_manifest.topic_names = self._get_connector_topics(connector_name)
124
+ connector_manifest.topic_names = self._get_connector_topics(
125
+ connector_name=connector_name,
126
+ config=connector_manifest.config,
127
+ connector_type=connector_manifest.type,
128
+ )
125
129
  connector_class_value = connector_manifest.config.get(CONNECTOR_CLASS) or ""
126
130
 
127
131
  class_type: Type[BaseConnector] = BaseConnector
@@ -203,7 +207,9 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
203
207
 
204
208
  return response.json()
205
209
 
206
- def _get_connector_topics(self, connector_name: str) -> List[str]:
210
+ def _get_connector_topics(
211
+ self, connector_name: str, config: Dict[str, str], connector_type: str
212
+ ) -> List[str]:
207
213
  try:
208
214
  response = self.session.get(
209
215
  f"{self.config.connect_uri}/connectors/{connector_name}/topics",
@@ -215,7 +221,21 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
215
221
  )
216
222
  return []
217
223
 
218
- return response.json()[connector_name]["topics"]
224
+ processed_topics = response.json()[connector_name]["topics"]
225
+
226
+ if connector_type == SINK:
227
+ try:
228
+ return SinkTopicFilter().filter_stale_topics(processed_topics, config)
229
+ except Exception as e:
230
+ self.report.warning(
231
+ title="Error parsing sink conector topics configuration",
232
+ message="Some stale lineage tasks might show up for connector",
233
+ context=connector_name,
234
+ exc=e,
235
+ )
236
+ return processed_topics
237
+ else:
238
+ return processed_topics
219
239
 
220
240
  def construct_flow_workunit(self, connector: ConnectorManifest) -> MetadataWorkUnit:
221
241
  connector_name = connector.name
@@ -359,3 +379,76 @@ class KafkaConnectSource(StatefulIngestionSourceBase):
359
379
  return builder.make_dataset_urn_with_platform_instance(
360
380
  platform, name, platform_instance, self.config.env
361
381
  )
382
+
383
+
384
+ class SinkTopicFilter:
385
+ """Helper class to filter Kafka Connect topics based on configuration."""
386
+
387
+ def filter_stale_topics(
388
+ self,
389
+ processed_topics: List[str],
390
+ sink_config: Dict[str, str],
391
+ ) -> List[str]:
392
+ """
393
+ Kafka-connect's /topics API returns the set of topic names the connector has been using
394
+ since its creation or since the last time its set of active topics was reset. This means-
395
+ if a topic was ever used by a connector, it will be returned, even if it is no longer used.
396
+ To remove these stale topics from the list, we double-check the list returned by the API
397
+ against the sink connector's config.
398
+ Sink connectors configure exactly one of `topics` or `topics.regex`
399
+ https://kafka.apache.org/documentation/#sinkconnectorconfigs_topics
400
+
401
+ Args:
402
+ processed_topics: List of topics currently being processed
403
+ sink_config: Configuration dictionary for the sink connector
404
+
405
+ Returns:
406
+ List of filtered topics that match the configuration
407
+
408
+ Raises:
409
+ ValueError: If sink connector configuration is missing both 'topics' and 'topics.regex' fields
410
+
411
+ """
412
+ # Absence of topics config is a defensive NOOP,
413
+ # although this should never happen in real world
414
+ if not self.has_topic_config(sink_config):
415
+ logger.warning(
416
+ f"Found sink without topics config {sink_config.get(CONNECTOR_CLASS)}"
417
+ )
418
+ return processed_topics
419
+
420
+ # Handle explicit topic list
421
+ if sink_config.get("topics"):
422
+ return self._filter_by_topic_list(processed_topics, sink_config["topics"])
423
+ else:
424
+ # Handle regex pattern
425
+ return self._filter_by_topic_regex(
426
+ processed_topics, sink_config["topics.regex"]
427
+ )
428
+
429
+ def has_topic_config(self, sink_config: Dict[str, str]) -> bool:
430
+ """Check if sink config has either topics or topics.regex."""
431
+ return bool(sink_config.get("topics") or sink_config.get("topics.regex"))
432
+
433
+ def _filter_by_topic_list(
434
+ self, processed_topics: List[str], topics_config: str
435
+ ) -> List[str]:
436
+ """Filter topics based on explicit topic list from config."""
437
+ config_topics = [
438
+ topic.strip() for topic in topics_config.split(",") if topic.strip()
439
+ ]
440
+ return [topic for topic in processed_topics if topic in config_topics]
441
+
442
+ def _filter_by_topic_regex(
443
+ self, processed_topics: List[str], regex_pattern: str
444
+ ) -> List[str]:
445
+ """Filter topics based on regex pattern from config."""
446
+ from java.util.regex import Pattern
447
+
448
+ regex_matcher = Pattern.compile(regex_pattern)
449
+
450
+ return [
451
+ topic
452
+ for topic in processed_topics
453
+ if regex_matcher.matcher(topic).matches()
454
+ ]
@@ -175,7 +175,7 @@ class BigQuerySinkConnector(BaseConnector):
175
175
  class BQParser:
176
176
  project: str
177
177
  target_platform: str
178
- sanitizeTopics: str
178
+ sanitizeTopics: bool
179
179
  transforms: list
180
180
  topicsToTables: Optional[str] = None
181
181
  datasets: Optional[str] = None
@@ -187,7 +187,7 @@ class BigQuerySinkConnector(BaseConnector):
187
187
  connector_manifest: ConnectorManifest,
188
188
  ) -> BQParser:
189
189
  project = connector_manifest.config["project"]
190
- sanitizeTopics = connector_manifest.config.get("sanitizeTopics", "false")
190
+ sanitizeTopics = connector_manifest.config.get("sanitizeTopics") or "false"
191
191
  transform_names = (
192
192
  self.connector_manifest.config.get("transforms", "").split(",")
193
193
  if self.connector_manifest.config.get("transforms")
@@ -107,9 +107,9 @@ class ConfluentJDBCSourceConnector(BaseConnector):
107
107
  assert database_name
108
108
  db_connection_url = f"{url_instance.drivername}://{url_instance.host}:{url_instance.port}/{database_name}"
109
109
 
110
- topic_prefix = self.connector_manifest.config.get("topic.prefix", None)
110
+ topic_prefix = self.connector_manifest.config.get("topic.prefix") or ""
111
111
 
112
- query = self.connector_manifest.config.get("query", None)
112
+ query = self.connector_manifest.config.get("query") or ""
113
113
 
114
114
  transform_names = (
115
115
  self.connector_manifest.config.get("transforms", "").split(",")