acryl-datahub 1.1.1rc4__py3-none-any.whl → 1.3.0.1rc9__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 (414) hide show
  1. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/METADATA +2615 -2547
  2. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/RECORD +412 -338
  3. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/entry_points.txt +5 -0
  4. datahub/_version.py +1 -1
  5. datahub/api/entities/assertion/assertion.py +1 -1
  6. datahub/api/entities/common/serialized_value.py +1 -1
  7. datahub/api/entities/corpgroup/corpgroup.py +1 -1
  8. datahub/api/entities/dataproduct/dataproduct.py +32 -3
  9. datahub/api/entities/dataset/dataset.py +26 -23
  10. datahub/api/entities/external/__init__.py +0 -0
  11. datahub/api/entities/external/external_entities.py +724 -0
  12. datahub/api/entities/external/external_tag.py +147 -0
  13. datahub/api/entities/external/lake_formation_external_entites.py +162 -0
  14. datahub/api/entities/external/restricted_text.py +172 -0
  15. datahub/api/entities/external/unity_catalog_external_entites.py +172 -0
  16. datahub/api/entities/forms/forms.py +3 -3
  17. datahub/api/entities/structuredproperties/structuredproperties.py +4 -4
  18. datahub/api/graphql/operation.py +10 -6
  19. datahub/cli/check_cli.py +88 -7
  20. datahub/cli/cli_utils.py +63 -0
  21. datahub/cli/config_utils.py +18 -10
  22. datahub/cli/container_cli.py +5 -0
  23. datahub/cli/delete_cli.py +125 -27
  24. datahub/cli/docker_check.py +110 -14
  25. datahub/cli/docker_cli.py +153 -229
  26. datahub/cli/exists_cli.py +0 -2
  27. datahub/cli/get_cli.py +0 -2
  28. datahub/cli/graphql_cli.py +1422 -0
  29. datahub/cli/iceberg_cli.py +5 -0
  30. datahub/cli/ingest_cli.py +3 -15
  31. datahub/cli/migrate.py +2 -0
  32. datahub/cli/put_cli.py +1 -4
  33. datahub/cli/quickstart_versioning.py +53 -10
  34. datahub/cli/specific/assertions_cli.py +37 -6
  35. datahub/cli/specific/datacontract_cli.py +54 -7
  36. datahub/cli/specific/dataproduct_cli.py +2 -15
  37. datahub/cli/specific/dataset_cli.py +1 -8
  38. datahub/cli/specific/forms_cli.py +0 -4
  39. datahub/cli/specific/group_cli.py +0 -2
  40. datahub/cli/specific/structuredproperties_cli.py +1 -4
  41. datahub/cli/specific/user_cli.py +172 -3
  42. datahub/cli/state_cli.py +0 -2
  43. datahub/cli/timeline_cli.py +0 -2
  44. datahub/configuration/common.py +40 -1
  45. datahub/configuration/connection_resolver.py +5 -2
  46. datahub/configuration/env_vars.py +331 -0
  47. datahub/configuration/import_resolver.py +7 -4
  48. datahub/configuration/kafka.py +21 -1
  49. datahub/configuration/pydantic_migration_helpers.py +6 -13
  50. datahub/configuration/source_common.py +3 -2
  51. datahub/configuration/validate_field_deprecation.py +5 -2
  52. datahub/configuration/validate_field_removal.py +8 -2
  53. datahub/configuration/validate_field_rename.py +6 -5
  54. datahub/configuration/validate_multiline_string.py +5 -2
  55. datahub/emitter/mce_builder.py +8 -4
  56. datahub/emitter/rest_emitter.py +103 -30
  57. datahub/entrypoints.py +6 -3
  58. datahub/ingestion/api/auto_work_units/auto_ensure_aspect_size.py +297 -1
  59. datahub/ingestion/api/auto_work_units/auto_validate_input_fields.py +87 -0
  60. datahub/ingestion/api/decorators.py +15 -3
  61. datahub/ingestion/api/report.py +381 -3
  62. datahub/ingestion/api/sink.py +27 -2
  63. datahub/ingestion/api/source.py +165 -58
  64. datahub/ingestion/api/source_protocols.py +23 -0
  65. datahub/ingestion/autogenerated/__init__.py +0 -0
  66. datahub/ingestion/autogenerated/capability_summary.json +3652 -0
  67. datahub/ingestion/autogenerated/lineage.json +402 -0
  68. datahub/ingestion/autogenerated/lineage_helper.py +177 -0
  69. datahub/ingestion/extractor/schema_util.py +13 -4
  70. datahub/ingestion/glossary/classification_mixin.py +5 -0
  71. datahub/ingestion/graph/client.py +330 -25
  72. datahub/ingestion/graph/config.py +3 -2
  73. datahub/ingestion/graph/filters.py +30 -11
  74. datahub/ingestion/reporting/datahub_ingestion_run_summary_provider.py +21 -11
  75. datahub/ingestion/run/pipeline.py +81 -11
  76. datahub/ingestion/run/pipeline_config.py +2 -2
  77. datahub/ingestion/sink/datahub_kafka.py +1 -0
  78. datahub/ingestion/sink/datahub_rest.py +13 -5
  79. datahub/ingestion/sink/file.py +1 -0
  80. datahub/ingestion/source/abs/config.py +1 -1
  81. datahub/ingestion/source/abs/datalake_profiler_config.py +1 -1
  82. datahub/ingestion/source/abs/source.py +15 -30
  83. datahub/ingestion/source/aws/aws_common.py +185 -13
  84. datahub/ingestion/source/aws/glue.py +517 -244
  85. datahub/ingestion/source/aws/platform_resource_repository.py +30 -0
  86. datahub/ingestion/source/aws/s3_boto_utils.py +100 -5
  87. datahub/ingestion/source/aws/tag_entities.py +270 -0
  88. datahub/ingestion/source/azure/azure_common.py +3 -3
  89. datahub/ingestion/source/bigquery_v2/bigquery.py +67 -24
  90. datahub/ingestion/source/bigquery_v2/bigquery_config.py +47 -19
  91. datahub/ingestion/source/bigquery_v2/bigquery_connection.py +12 -1
  92. datahub/ingestion/source/bigquery_v2/bigquery_queries.py +3 -0
  93. datahub/ingestion/source/bigquery_v2/bigquery_report.py +0 -2
  94. datahub/ingestion/source/bigquery_v2/bigquery_schema.py +23 -16
  95. datahub/ingestion/source/bigquery_v2/bigquery_schema_gen.py +20 -5
  96. datahub/ingestion/source/bigquery_v2/common.py +1 -1
  97. datahub/ingestion/source/bigquery_v2/profiler.py +4 -2
  98. datahub/ingestion/source/bigquery_v2/queries.py +3 -3
  99. datahub/ingestion/source/bigquery_v2/queries_extractor.py +45 -9
  100. datahub/ingestion/source/cassandra/cassandra.py +6 -8
  101. datahub/ingestion/source/cassandra/cassandra_api.py +17 -1
  102. datahub/ingestion/source/cassandra/cassandra_config.py +5 -0
  103. datahub/ingestion/source/cassandra/cassandra_profiling.py +7 -6
  104. datahub/ingestion/source/cassandra/cassandra_utils.py +1 -2
  105. datahub/ingestion/source/common/gcp_credentials_config.py +3 -1
  106. datahub/ingestion/source/common/subtypes.py +53 -0
  107. datahub/ingestion/source/data_lake_common/data_lake_utils.py +37 -0
  108. datahub/ingestion/source/data_lake_common/object_store.py +115 -27
  109. datahub/ingestion/source/data_lake_common/path_spec.py +72 -43
  110. datahub/ingestion/source/datahub/config.py +12 -9
  111. datahub/ingestion/source/datahub/datahub_database_reader.py +26 -11
  112. datahub/ingestion/source/datahub/datahub_source.py +10 -0
  113. datahub/ingestion/source/dbt/dbt_cloud.py +16 -5
  114. datahub/ingestion/source/dbt/dbt_common.py +224 -9
  115. datahub/ingestion/source/dbt/dbt_core.py +3 -0
  116. datahub/ingestion/source/debug/__init__.py +0 -0
  117. datahub/ingestion/source/debug/datahub_debug.py +300 -0
  118. datahub/ingestion/source/delta_lake/config.py +9 -5
  119. datahub/ingestion/source/delta_lake/source.py +8 -0
  120. datahub/ingestion/source/dremio/dremio_api.py +114 -73
  121. datahub/ingestion/source/dremio/dremio_aspects.py +3 -2
  122. datahub/ingestion/source/dremio/dremio_config.py +5 -4
  123. datahub/ingestion/source/dremio/dremio_reporting.py +22 -3
  124. datahub/ingestion/source/dremio/dremio_source.py +132 -98
  125. datahub/ingestion/source/dremio/dremio_sql_queries.py +82 -21
  126. datahub/ingestion/source/dynamodb/dynamodb.py +11 -8
  127. datahub/ingestion/source/excel/__init__.py +0 -0
  128. datahub/ingestion/source/excel/config.py +92 -0
  129. datahub/ingestion/source/excel/excel_file.py +539 -0
  130. datahub/ingestion/source/excel/profiling.py +308 -0
  131. datahub/ingestion/source/excel/report.py +49 -0
  132. datahub/ingestion/source/excel/source.py +662 -0
  133. datahub/ingestion/source/excel/util.py +18 -0
  134. datahub/ingestion/source/feast.py +8 -10
  135. datahub/ingestion/source/file.py +3 -0
  136. datahub/ingestion/source/fivetran/config.py +66 -7
  137. datahub/ingestion/source/fivetran/fivetran.py +227 -43
  138. datahub/ingestion/source/fivetran/fivetran_log_api.py +37 -8
  139. datahub/ingestion/source/fivetran/fivetran_query.py +51 -29
  140. datahub/ingestion/source/fivetran/fivetran_rest_api.py +65 -0
  141. datahub/ingestion/source/fivetran/response_models.py +97 -0
  142. datahub/ingestion/source/gc/datahub_gc.py +0 -2
  143. datahub/ingestion/source/gcs/gcs_source.py +32 -4
  144. datahub/ingestion/source/ge_data_profiler.py +108 -31
  145. datahub/ingestion/source/ge_profiling_config.py +26 -11
  146. datahub/ingestion/source/grafana/entity_mcp_builder.py +272 -0
  147. datahub/ingestion/source/grafana/field_utils.py +307 -0
  148. datahub/ingestion/source/grafana/grafana_api.py +142 -0
  149. datahub/ingestion/source/grafana/grafana_config.py +104 -0
  150. datahub/ingestion/source/grafana/grafana_source.py +522 -84
  151. datahub/ingestion/source/grafana/lineage.py +202 -0
  152. datahub/ingestion/source/grafana/models.py +137 -0
  153. datahub/ingestion/source/grafana/report.py +90 -0
  154. datahub/ingestion/source/grafana/types.py +16 -0
  155. datahub/ingestion/source/hex/api.py +28 -1
  156. datahub/ingestion/source/hex/hex.py +16 -5
  157. datahub/ingestion/source/hex/mapper.py +16 -2
  158. datahub/ingestion/source/hex/model.py +2 -0
  159. datahub/ingestion/source/hex/query_fetcher.py +1 -1
  160. datahub/ingestion/source/iceberg/iceberg.py +123 -59
  161. datahub/ingestion/source/iceberg/iceberg_profiler.py +4 -2
  162. datahub/ingestion/source/identity/azure_ad.py +1 -1
  163. datahub/ingestion/source/identity/okta.py +1 -14
  164. datahub/ingestion/source/kafka/kafka.py +16 -0
  165. datahub/ingestion/source/kafka_connect/common.py +2 -2
  166. datahub/ingestion/source/kafka_connect/sink_connectors.py +156 -47
  167. datahub/ingestion/source/kafka_connect/source_connectors.py +62 -4
  168. datahub/ingestion/source/looker/looker_common.py +148 -79
  169. datahub/ingestion/source/looker/looker_config.py +15 -4
  170. datahub/ingestion/source/looker/looker_constant.py +4 -0
  171. datahub/ingestion/source/looker/looker_lib_wrapper.py +36 -3
  172. datahub/ingestion/source/looker/looker_liquid_tag.py +56 -5
  173. datahub/ingestion/source/looker/looker_source.py +503 -547
  174. datahub/ingestion/source/looker/looker_view_id_cache.py +1 -1
  175. datahub/ingestion/source/looker/lookml_concept_context.py +1 -1
  176. datahub/ingestion/source/looker/lookml_config.py +31 -3
  177. datahub/ingestion/source/looker/lookml_refinement.py +1 -1
  178. datahub/ingestion/source/looker/lookml_source.py +96 -117
  179. datahub/ingestion/source/looker/view_upstream.py +494 -1
  180. datahub/ingestion/source/metabase.py +32 -6
  181. datahub/ingestion/source/metadata/business_glossary.py +7 -7
  182. datahub/ingestion/source/metadata/lineage.py +9 -9
  183. datahub/ingestion/source/mlflow.py +12 -2
  184. datahub/ingestion/source/mock_data/__init__.py +0 -0
  185. datahub/ingestion/source/mock_data/datahub_mock_data.py +533 -0
  186. datahub/ingestion/source/mock_data/datahub_mock_data_report.py +12 -0
  187. datahub/ingestion/source/mock_data/table_naming_helper.py +97 -0
  188. datahub/ingestion/source/mode.py +26 -5
  189. datahub/ingestion/source/mongodb.py +11 -1
  190. datahub/ingestion/source/neo4j/neo4j_source.py +83 -144
  191. datahub/ingestion/source/nifi.py +2 -2
  192. datahub/ingestion/source/openapi.py +1 -1
  193. datahub/ingestion/source/powerbi/config.py +47 -21
  194. datahub/ingestion/source/powerbi/m_query/data_classes.py +1 -0
  195. datahub/ingestion/source/powerbi/m_query/parser.py +2 -2
  196. datahub/ingestion/source/powerbi/m_query/pattern_handler.py +100 -10
  197. datahub/ingestion/source/powerbi/powerbi.py +10 -6
  198. datahub/ingestion/source/powerbi/rest_api_wrapper/powerbi_api.py +0 -1
  199. datahub/ingestion/source/powerbi_report_server/report_server.py +0 -23
  200. datahub/ingestion/source/powerbi_report_server/report_server_domain.py +2 -4
  201. datahub/ingestion/source/preset.py +3 -3
  202. datahub/ingestion/source/qlik_sense/data_classes.py +28 -8
  203. datahub/ingestion/source/qlik_sense/qlik_sense.py +2 -1
  204. datahub/ingestion/source/redash.py +1 -1
  205. datahub/ingestion/source/redshift/config.py +15 -9
  206. datahub/ingestion/source/redshift/datashares.py +1 -1
  207. datahub/ingestion/source/redshift/lineage.py +386 -687
  208. datahub/ingestion/source/redshift/query.py +23 -19
  209. datahub/ingestion/source/redshift/redshift.py +52 -111
  210. datahub/ingestion/source/redshift/redshift_schema.py +17 -12
  211. datahub/ingestion/source/redshift/report.py +0 -2
  212. datahub/ingestion/source/redshift/usage.py +6 -5
  213. datahub/ingestion/source/s3/report.py +4 -2
  214. datahub/ingestion/source/s3/source.py +449 -248
  215. datahub/ingestion/source/sac/sac.py +3 -1
  216. datahub/ingestion/source/salesforce.py +28 -13
  217. datahub/ingestion/source/schema/json_schema.py +14 -14
  218. datahub/ingestion/source/schema_inference/object.py +22 -6
  219. datahub/ingestion/source/sigma/data_classes.py +3 -0
  220. datahub/ingestion/source/sigma/sigma.py +7 -1
  221. datahub/ingestion/source/slack/slack.py +10 -16
  222. datahub/ingestion/source/snaplogic/__init__.py +0 -0
  223. datahub/ingestion/source/snaplogic/snaplogic.py +355 -0
  224. datahub/ingestion/source/snaplogic/snaplogic_config.py +37 -0
  225. datahub/ingestion/source/snaplogic/snaplogic_lineage_extractor.py +107 -0
  226. datahub/ingestion/source/snaplogic/snaplogic_parser.py +168 -0
  227. datahub/ingestion/source/snaplogic/snaplogic_utils.py +31 -0
  228. datahub/ingestion/source/snowflake/constants.py +3 -0
  229. datahub/ingestion/source/snowflake/snowflake_config.py +76 -23
  230. datahub/ingestion/source/snowflake/snowflake_connection.py +24 -8
  231. datahub/ingestion/source/snowflake/snowflake_lineage_v2.py +19 -6
  232. datahub/ingestion/source/snowflake/snowflake_queries.py +464 -97
  233. datahub/ingestion/source/snowflake/snowflake_query.py +77 -5
  234. datahub/ingestion/source/snowflake/snowflake_report.py +1 -2
  235. datahub/ingestion/source/snowflake/snowflake_schema.py +352 -16
  236. datahub/ingestion/source/snowflake/snowflake_schema_gen.py +51 -10
  237. datahub/ingestion/source/snowflake/snowflake_summary.py +7 -1
  238. datahub/ingestion/source/snowflake/snowflake_usage_v2.py +8 -2
  239. datahub/ingestion/source/snowflake/snowflake_utils.py +36 -15
  240. datahub/ingestion/source/snowflake/snowflake_v2.py +39 -4
  241. datahub/ingestion/source/snowflake/stored_proc_lineage.py +143 -0
  242. datahub/ingestion/source/sql/athena.py +217 -25
  243. datahub/ingestion/source/sql/athena_properties_extractor.py +795 -0
  244. datahub/ingestion/source/sql/clickhouse.py +24 -8
  245. datahub/ingestion/source/sql/cockroachdb.py +5 -4
  246. datahub/ingestion/source/sql/druid.py +2 -2
  247. datahub/ingestion/source/sql/hana.py +3 -1
  248. datahub/ingestion/source/sql/hive.py +4 -3
  249. datahub/ingestion/source/sql/hive_metastore.py +19 -20
  250. datahub/ingestion/source/sql/mariadb.py +0 -1
  251. datahub/ingestion/source/sql/mssql/job_models.py +3 -1
  252. datahub/ingestion/source/sql/mssql/source.py +336 -57
  253. datahub/ingestion/source/sql/mysql.py +154 -4
  254. datahub/ingestion/source/sql/oracle.py +5 -5
  255. datahub/ingestion/source/sql/postgres.py +142 -6
  256. datahub/ingestion/source/sql/presto.py +2 -1
  257. datahub/ingestion/source/sql/sql_common.py +281 -49
  258. datahub/ingestion/source/sql/sql_generic_profiler.py +2 -1
  259. datahub/ingestion/source/sql/sql_types.py +22 -0
  260. datahub/ingestion/source/sql/sqlalchemy_uri.py +39 -7
  261. datahub/ingestion/source/sql/teradata.py +1028 -245
  262. datahub/ingestion/source/sql/trino.py +11 -1
  263. datahub/ingestion/source/sql/two_tier_sql_source.py +2 -3
  264. datahub/ingestion/source/sql/vertica.py +14 -7
  265. datahub/ingestion/source/sql_queries.py +219 -121
  266. datahub/ingestion/source/state/checkpoint.py +8 -29
  267. datahub/ingestion/source/state/entity_removal_state.py +5 -2
  268. datahub/ingestion/source/state/redundant_run_skip_handler.py +21 -0
  269. datahub/ingestion/source/state/stateful_ingestion_base.py +36 -11
  270. datahub/ingestion/source/superset.py +314 -67
  271. datahub/ingestion/source/tableau/tableau.py +135 -59
  272. datahub/ingestion/source/tableau/tableau_common.py +9 -2
  273. datahub/ingestion/source/tableau/tableau_constant.py +1 -4
  274. datahub/ingestion/source/tableau/tableau_server_wrapper.py +3 -0
  275. datahub/ingestion/source/unity/config.py +160 -40
  276. datahub/ingestion/source/unity/connection.py +61 -0
  277. datahub/ingestion/source/unity/connection_test.py +1 -0
  278. datahub/ingestion/source/unity/platform_resource_repository.py +19 -0
  279. datahub/ingestion/source/unity/proxy.py +794 -51
  280. datahub/ingestion/source/unity/proxy_patch.py +321 -0
  281. datahub/ingestion/source/unity/proxy_types.py +36 -2
  282. datahub/ingestion/source/unity/report.py +15 -3
  283. datahub/ingestion/source/unity/source.py +465 -131
  284. datahub/ingestion/source/unity/tag_entities.py +197 -0
  285. datahub/ingestion/source/unity/usage.py +46 -4
  286. datahub/ingestion/source/usage/clickhouse_usage.py +4 -1
  287. datahub/ingestion/source/usage/starburst_trino_usage.py +5 -2
  288. datahub/ingestion/source/usage/usage_common.py +4 -3
  289. datahub/ingestion/source/vertexai/vertexai.py +1 -1
  290. datahub/ingestion/source_config/pulsar.py +3 -1
  291. datahub/ingestion/source_report/ingestion_stage.py +50 -11
  292. datahub/ingestion/transformer/add_dataset_ownership.py +18 -2
  293. datahub/ingestion/transformer/base_transformer.py +8 -5
  294. datahub/ingestion/transformer/set_browse_path.py +112 -0
  295. datahub/integrations/assertion/snowflake/compiler.py +4 -3
  296. datahub/metadata/_internal_schema_classes.py +6806 -4871
  297. datahub/metadata/_urns/urn_defs.py +1767 -1539
  298. datahub/metadata/com/linkedin/pegasus2avro/application/__init__.py +19 -0
  299. datahub/metadata/com/linkedin/pegasus2avro/common/__init__.py +2 -0
  300. datahub/metadata/com/linkedin/pegasus2avro/file/__init__.py +19 -0
  301. datahub/metadata/com/linkedin/pegasus2avro/identity/__init__.py +2 -0
  302. datahub/metadata/com/linkedin/pegasus2avro/logical/__init__.py +15 -0
  303. datahub/metadata/com/linkedin/pegasus2avro/metadata/key/__init__.py +6 -0
  304. datahub/metadata/com/linkedin/pegasus2avro/module/__init__.py +31 -0
  305. datahub/metadata/com/linkedin/pegasus2avro/platform/event/v1/__init__.py +4 -0
  306. datahub/metadata/com/linkedin/pegasus2avro/role/__init__.py +2 -0
  307. datahub/metadata/com/linkedin/pegasus2avro/settings/asset/__init__.py +19 -0
  308. datahub/metadata/com/linkedin/pegasus2avro/settings/global/__init__.py +8 -0
  309. datahub/metadata/com/linkedin/pegasus2avro/template/__init__.py +31 -0
  310. datahub/metadata/schema.avsc +18395 -16979
  311. datahub/metadata/schemas/Actors.avsc +38 -1
  312. datahub/metadata/schemas/ApplicationKey.avsc +31 -0
  313. datahub/metadata/schemas/ApplicationProperties.avsc +72 -0
  314. datahub/metadata/schemas/Applications.avsc +38 -0
  315. datahub/metadata/schemas/AssetSettings.avsc +63 -0
  316. datahub/metadata/schemas/ChartInfo.avsc +2 -1
  317. datahub/metadata/schemas/ChartKey.avsc +1 -0
  318. datahub/metadata/schemas/ContainerKey.avsc +1 -0
  319. datahub/metadata/schemas/ContainerProperties.avsc +8 -0
  320. datahub/metadata/schemas/CorpUserEditableInfo.avsc +1 -1
  321. datahub/metadata/schemas/CorpUserSettings.avsc +50 -0
  322. datahub/metadata/schemas/DashboardKey.avsc +1 -0
  323. datahub/metadata/schemas/DataFlowInfo.avsc +8 -0
  324. datahub/metadata/schemas/DataFlowKey.avsc +1 -0
  325. datahub/metadata/schemas/DataHubFileInfo.avsc +230 -0
  326. datahub/metadata/schemas/DataHubFileKey.avsc +21 -0
  327. datahub/metadata/schemas/DataHubPageModuleKey.avsc +21 -0
  328. datahub/metadata/schemas/DataHubPageModuleProperties.avsc +298 -0
  329. datahub/metadata/schemas/DataHubPageTemplateKey.avsc +21 -0
  330. datahub/metadata/schemas/DataHubPageTemplateProperties.avsc +251 -0
  331. datahub/metadata/schemas/DataHubPolicyInfo.avsc +12 -1
  332. datahub/metadata/schemas/DataJobInfo.avsc +8 -0
  333. datahub/metadata/schemas/DataJobInputOutput.avsc +8 -0
  334. datahub/metadata/schemas/DataJobKey.avsc +1 -0
  335. datahub/metadata/schemas/DataProcessKey.avsc +8 -0
  336. datahub/metadata/schemas/DataProductKey.avsc +3 -1
  337. datahub/metadata/schemas/DataProductProperties.avsc +1 -1
  338. datahub/metadata/schemas/DatasetKey.avsc +11 -1
  339. datahub/metadata/schemas/DatasetUsageStatistics.avsc +8 -0
  340. datahub/metadata/schemas/DomainKey.avsc +2 -1
  341. datahub/metadata/schemas/GlobalSettingsInfo.avsc +134 -0
  342. datahub/metadata/schemas/GlossaryNodeKey.avsc +2 -1
  343. datahub/metadata/schemas/GlossaryTermKey.avsc +3 -1
  344. datahub/metadata/schemas/IcebergWarehouseInfo.avsc +8 -0
  345. datahub/metadata/schemas/IncidentInfo.avsc +3 -3
  346. datahub/metadata/schemas/InstitutionalMemory.avsc +31 -0
  347. datahub/metadata/schemas/LogicalParent.avsc +145 -0
  348. datahub/metadata/schemas/MLFeatureKey.avsc +1 -0
  349. datahub/metadata/schemas/MLFeatureTableKey.avsc +1 -0
  350. datahub/metadata/schemas/MLModelDeploymentKey.avsc +8 -0
  351. datahub/metadata/schemas/MLModelGroupKey.avsc +11 -1
  352. datahub/metadata/schemas/MLModelKey.avsc +9 -0
  353. datahub/metadata/schemas/MLPrimaryKeyKey.avsc +1 -0
  354. datahub/metadata/schemas/MetadataChangeEvent.avsc +151 -47
  355. datahub/metadata/schemas/MetadataChangeLog.avsc +62 -44
  356. datahub/metadata/schemas/MetadataChangeProposal.avsc +61 -0
  357. datahub/metadata/schemas/NotebookKey.avsc +1 -0
  358. datahub/metadata/schemas/Operation.avsc +4 -2
  359. datahub/metadata/schemas/Ownership.avsc +69 -0
  360. datahub/metadata/schemas/QuerySubjects.avsc +1 -12
  361. datahub/metadata/schemas/RelationshipChangeEvent.avsc +215 -0
  362. datahub/metadata/schemas/SchemaFieldKey.avsc +4 -1
  363. datahub/metadata/schemas/StructuredProperties.avsc +69 -0
  364. datahub/metadata/schemas/StructuredPropertySettings.avsc +9 -0
  365. datahub/metadata/schemas/SystemMetadata.avsc +61 -0
  366. datahub/metadata/schemas/UpstreamLineage.avsc +9 -0
  367. datahub/sdk/__init__.py +2 -0
  368. datahub/sdk/_all_entities.py +7 -0
  369. datahub/sdk/_shared.py +249 -5
  370. datahub/sdk/chart.py +386 -0
  371. datahub/sdk/container.py +7 -0
  372. datahub/sdk/dashboard.py +453 -0
  373. datahub/sdk/dataflow.py +7 -0
  374. datahub/sdk/datajob.py +45 -13
  375. datahub/sdk/dataset.py +56 -2
  376. datahub/sdk/entity_client.py +111 -9
  377. datahub/sdk/lineage_client.py +663 -82
  378. datahub/sdk/main_client.py +50 -16
  379. datahub/sdk/mlmodel.py +120 -38
  380. datahub/sdk/mlmodelgroup.py +7 -0
  381. datahub/sdk/search_client.py +7 -3
  382. datahub/sdk/search_filters.py +304 -36
  383. datahub/secret/datahub_secret_store.py +3 -0
  384. datahub/secret/environment_secret_store.py +29 -0
  385. datahub/secret/file_secret_store.py +49 -0
  386. datahub/specific/aspect_helpers/fine_grained_lineage.py +76 -0
  387. datahub/specific/aspect_helpers/siblings.py +73 -0
  388. datahub/specific/aspect_helpers/structured_properties.py +27 -0
  389. datahub/specific/chart.py +1 -1
  390. datahub/specific/datajob.py +15 -1
  391. datahub/specific/dataproduct.py +4 -0
  392. datahub/specific/dataset.py +39 -59
  393. datahub/sql_parsing/split_statements.py +13 -0
  394. datahub/sql_parsing/sql_parsing_aggregator.py +70 -26
  395. datahub/sql_parsing/sqlglot_lineage.py +196 -42
  396. datahub/sql_parsing/sqlglot_utils.py +12 -4
  397. datahub/sql_parsing/tool_meta_extractor.py +1 -3
  398. datahub/telemetry/telemetry.py +28 -14
  399. datahub/testing/sdk_v2_helpers.py +7 -1
  400. datahub/upgrade/upgrade.py +73 -17
  401. datahub/utilities/file_backed_collections.py +8 -9
  402. datahub/utilities/is_pytest.py +3 -2
  403. datahub/utilities/logging_manager.py +22 -6
  404. datahub/utilities/mapping.py +29 -2
  405. datahub/utilities/sample_data.py +5 -4
  406. datahub/utilities/server_config_util.py +10 -1
  407. datahub/utilities/sqlalchemy_query_combiner.py +5 -2
  408. datahub/utilities/stats_collections.py +4 -0
  409. datahub/utilities/urns/urn.py +41 -2
  410. datahub/emitter/sql_parsing_builder.py +0 -306
  411. datahub/ingestion/source/redshift/lineage_v2.py +0 -466
  412. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/WHEEL +0 -0
  413. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/licenses/LICENSE +0 -0
  414. {acryl_datahub-1.1.1rc4.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,21 @@
1
+ {
2
+ "type": "record",
3
+ "Aspect": {
4
+ "name": "dataHubPageModuleKey",
5
+ "keyForEntity": "dataHubPageModule",
6
+ "entityCategory": "core",
7
+ "entityAspects": [
8
+ "dataHubPageModuleProperties"
9
+ ]
10
+ },
11
+ "name": "DataHubPageModuleKey",
12
+ "namespace": "com.linkedin.pegasus2avro.metadata.key",
13
+ "fields": [
14
+ {
15
+ "type": "string",
16
+ "name": "id",
17
+ "doc": "Unique id for the module."
18
+ }
19
+ ],
20
+ "doc": "Key for a DataHubPageModule"
21
+ }
@@ -0,0 +1,298 @@
1
+ {
2
+ "type": "record",
3
+ "Aspect": {
4
+ "name": "dataHubPageModuleProperties"
5
+ },
6
+ "name": "DataHubPageModuleProperties",
7
+ "namespace": "com.linkedin.pegasus2avro.module",
8
+ "fields": [
9
+ {
10
+ "type": "string",
11
+ "name": "name",
12
+ "doc": "The display name of this module"
13
+ },
14
+ {
15
+ "Searchable": {
16
+ "fieldType": "KEYWORD"
17
+ },
18
+ "type": {
19
+ "type": "enum",
20
+ "symbolDocs": {
21
+ "ASSETS": "Module displaying the assets of parent entity",
22
+ "ASSET_COLLECTION": "A module with a collection of assets",
23
+ "CHILD_HIERARCHY": "Module displaying the hierarchy of the children of a given entity. Glossary or Domains.",
24
+ "DATA_PRODUCTS": "Module displaying child data products of a given domain",
25
+ "DOMAINS": "Module displaying the top domains",
26
+ "HIERARCHY": "A module displaying a hierarchy to navigate",
27
+ "LINK": "Link type module",
28
+ "OWNED_ASSETS": "Module displaying assets owned by a user",
29
+ "PLATFORMS": "Module displaying the platforms in an instance",
30
+ "RELATED_TERMS": "Module displaying the related terms of a given glossary term",
31
+ "RICH_TEXT": "Module containing rich text to be rendered"
32
+ },
33
+ "name": "DataHubPageModuleType",
34
+ "namespace": "com.linkedin.pegasus2avro.module",
35
+ "symbols": [
36
+ "LINK",
37
+ "RICH_TEXT",
38
+ "ASSET_COLLECTION",
39
+ "HIERARCHY",
40
+ "OWNED_ASSETS",
41
+ "DOMAINS",
42
+ "ASSETS",
43
+ "CHILD_HIERARCHY",
44
+ "DATA_PRODUCTS",
45
+ "RELATED_TERMS",
46
+ "PLATFORMS"
47
+ ],
48
+ "doc": "Enum containing the types of page modules that there are"
49
+ },
50
+ "name": "type",
51
+ "doc": "The type of this module - the purpose it serves"
52
+ },
53
+ {
54
+ "type": {
55
+ "type": "record",
56
+ "name": "DataHubPageModuleVisibility",
57
+ "namespace": "com.linkedin.pegasus2avro.module",
58
+ "fields": [
59
+ {
60
+ "Searchable": {
61
+ "fieldType": "KEYWORD"
62
+ },
63
+ "type": {
64
+ "type": "enum",
65
+ "symbolDocs": {
66
+ "GLOBAL": "This module is discoverable and can be used by any user on the platform",
67
+ "PERSONAL": "This module is used for individual use only"
68
+ },
69
+ "name": "PageModuleScope",
70
+ "namespace": "com.linkedin.pegasus2avro.module",
71
+ "symbols": [
72
+ "PERSONAL",
73
+ "GLOBAL"
74
+ ]
75
+ },
76
+ "name": "scope",
77
+ "doc": "Audit stamp for when and by whom this module was created"
78
+ }
79
+ ],
80
+ "doc": "Info about the visibility of this module"
81
+ },
82
+ "name": "visibility",
83
+ "doc": "Info about the visibility of this module"
84
+ },
85
+ {
86
+ "type": {
87
+ "type": "record",
88
+ "name": "DataHubPageModuleParams",
89
+ "namespace": "com.linkedin.pegasus2avro.module",
90
+ "fields": [
91
+ {
92
+ "type": [
93
+ "null",
94
+ {
95
+ "type": "record",
96
+ "name": "LinkModuleParams",
97
+ "namespace": "com.linkedin.pegasus2avro.module",
98
+ "fields": [
99
+ {
100
+ "type": "string",
101
+ "name": "linkUrl"
102
+ },
103
+ {
104
+ "type": [
105
+ "null",
106
+ "string"
107
+ ],
108
+ "name": "imageUrl",
109
+ "default": null
110
+ },
111
+ {
112
+ "type": [
113
+ "null",
114
+ "string"
115
+ ],
116
+ "name": "description",
117
+ "default": null
118
+ }
119
+ ]
120
+ }
121
+ ],
122
+ "name": "linkParams",
123
+ "default": null,
124
+ "doc": "The params required if the module is type LINK"
125
+ },
126
+ {
127
+ "type": [
128
+ "null",
129
+ {
130
+ "type": "record",
131
+ "name": "RichTextModuleParams",
132
+ "namespace": "com.linkedin.pegasus2avro.module",
133
+ "fields": [
134
+ {
135
+ "type": "string",
136
+ "name": "content"
137
+ }
138
+ ]
139
+ }
140
+ ],
141
+ "name": "richTextParams",
142
+ "default": null,
143
+ "doc": "The params required if the module is type RICH_TEXT"
144
+ },
145
+ {
146
+ "type": [
147
+ "null",
148
+ {
149
+ "type": "record",
150
+ "name": "AssetCollectionModuleParams",
151
+ "namespace": "com.linkedin.pegasus2avro.module",
152
+ "fields": [
153
+ {
154
+ "type": {
155
+ "type": "array",
156
+ "items": "string"
157
+ },
158
+ "name": "assetUrns",
159
+ "Urn": "Urn",
160
+ "urn_is_array": true
161
+ },
162
+ {
163
+ "type": [
164
+ "null",
165
+ "string"
166
+ ],
167
+ "name": "dynamicFilterJson",
168
+ "default": null,
169
+ "doc": "Optional dynamic filters\n\nThe stringified json representing the logical predicate built in the UI to select assets.\nThis predicate is turned into orFilters to send through graphql since graphql doesn't support\narbitrary nesting. This string is used to restore the UI for this logical predicate."
170
+ }
171
+ ],
172
+ "doc": "The params required if the module is type ASSET_COLLECTION"
173
+ }
174
+ ],
175
+ "name": "assetCollectionParams",
176
+ "default": null,
177
+ "doc": "The params required if the module is type ASSET_COLLECTION"
178
+ },
179
+ {
180
+ "type": [
181
+ "null",
182
+ {
183
+ "type": "record",
184
+ "name": "HierarchyModuleParams",
185
+ "namespace": "com.linkedin.pegasus2avro.module",
186
+ "fields": [
187
+ {
188
+ "type": [
189
+ "null",
190
+ {
191
+ "type": "array",
192
+ "items": "string"
193
+ }
194
+ ],
195
+ "name": "assetUrns",
196
+ "default": null,
197
+ "Urn": "Urn",
198
+ "urn_is_array": true
199
+ },
200
+ {
201
+ "type": "boolean",
202
+ "name": "showRelatedEntities"
203
+ },
204
+ {
205
+ "type": [
206
+ "null",
207
+ "string"
208
+ ],
209
+ "name": "relatedEntitiesFilterJson",
210
+ "default": null,
211
+ "doc": "Optional filters to filter relatedEntities (assetUrns) out\n\nThe stringified json representing the logical predicate built in the UI to select assets.\nThis predicate is turned into orFilters to send through graphql since graphql doesn't support\narbitrary nesting. This string is used to restore the UI for this logical predicate."
212
+ }
213
+ ],
214
+ "doc": "The params required if the module is type HIERARCHY_VIEW"
215
+ }
216
+ ],
217
+ "name": "hierarchyViewParams",
218
+ "default": null,
219
+ "doc": "The params required if the module is type HIERARCHY_VIEW"
220
+ }
221
+ ],
222
+ "doc": "The specific parameters stored for a module"
223
+ },
224
+ "name": "params",
225
+ "doc": "The specific parameters stored for this module"
226
+ },
227
+ {
228
+ "Searchable": {
229
+ "/actor": {
230
+ "fieldName": "createdBy",
231
+ "fieldType": "URN"
232
+ },
233
+ "/time": {
234
+ "fieldName": "createdAt",
235
+ "fieldType": "DATETIME"
236
+ }
237
+ },
238
+ "type": {
239
+ "type": "record",
240
+ "name": "AuditStamp",
241
+ "namespace": "com.linkedin.pegasus2avro.common",
242
+ "fields": [
243
+ {
244
+ "type": "long",
245
+ "name": "time",
246
+ "doc": "When did the resource/association/sub-resource move into the specific lifecycle stage represented by this AuditEvent."
247
+ },
248
+ {
249
+ "java": {
250
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
251
+ },
252
+ "type": "string",
253
+ "name": "actor",
254
+ "doc": "The entity (e.g. a member URN) which will be credited for moving the resource/association/sub-resource into the specific lifecycle stage. It is also the one used to authorize the change.",
255
+ "Urn": "Urn"
256
+ },
257
+ {
258
+ "java": {
259
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
260
+ },
261
+ "type": [
262
+ "null",
263
+ "string"
264
+ ],
265
+ "name": "impersonator",
266
+ "default": null,
267
+ "doc": "The entity (e.g. a service URN) which performs the change on behalf of the Actor and must be authorized to act as the Actor.",
268
+ "Urn": "Urn"
269
+ },
270
+ {
271
+ "type": [
272
+ "null",
273
+ "string"
274
+ ],
275
+ "name": "message",
276
+ "default": null,
277
+ "doc": "Additional context around how DataHub was informed of the particular change. For example: was the change created by an automated process, or manually."
278
+ }
279
+ ],
280
+ "doc": "Data captured on a resource/association/sub-resource level giving insight into when that resource/association/sub-resource moved into a particular lifecycle stage, and who acted to move it into that specific lifecycle stage."
281
+ },
282
+ "name": "created",
283
+ "doc": "Audit stamp for when and by whom this template was created"
284
+ },
285
+ {
286
+ "Searchable": {
287
+ "/time": {
288
+ "fieldName": "lastModifiedAt",
289
+ "fieldType": "DATETIME"
290
+ }
291
+ },
292
+ "type": "com.linkedin.pegasus2avro.common.AuditStamp",
293
+ "name": "lastModified",
294
+ "doc": "Audit stamp for when and by whom this template was last updated"
295
+ }
296
+ ],
297
+ "doc": "The main properties of a DataHub page module"
298
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "type": "record",
3
+ "Aspect": {
4
+ "name": "dataHubPageTemplateKey",
5
+ "keyForEntity": "dataHubPageTemplate",
6
+ "entityCategory": "core",
7
+ "entityAspects": [
8
+ "dataHubPageTemplateProperties"
9
+ ]
10
+ },
11
+ "name": "DataHubPageTemplateKey",
12
+ "namespace": "com.linkedin.pegasus2avro.metadata.key",
13
+ "fields": [
14
+ {
15
+ "type": "string",
16
+ "name": "id",
17
+ "doc": "Unique id for the template."
18
+ }
19
+ ],
20
+ "doc": "Key for a DataHubPageTemplate"
21
+ }
@@ -0,0 +1,251 @@
1
+ {
2
+ "type": "record",
3
+ "Aspect": {
4
+ "name": "dataHubPageTemplateProperties"
5
+ },
6
+ "name": "DataHubPageTemplateProperties",
7
+ "namespace": "com.linkedin.pegasus2avro.template",
8
+ "fields": [
9
+ {
10
+ "Relationship": {
11
+ "/*/modules/*": {
12
+ "entityTypes": [
13
+ "dataHubPageModule"
14
+ ],
15
+ "name": "ContainedIn"
16
+ }
17
+ },
18
+ "type": {
19
+ "type": "array",
20
+ "items": {
21
+ "type": "record",
22
+ "name": "DataHubPageTemplateRow",
23
+ "namespace": "com.linkedin.pegasus2avro.template",
24
+ "fields": [
25
+ {
26
+ "type": {
27
+ "type": "array",
28
+ "items": "string"
29
+ },
30
+ "name": "modules",
31
+ "doc": "The modules that exist in this template row",
32
+ "Urn": "Urn",
33
+ "urn_is_array": true
34
+ }
35
+ ],
36
+ "doc": "A row of modules contained in a template"
37
+ }
38
+ },
39
+ "name": "rows",
40
+ "doc": "The rows of modules contained in this template"
41
+ },
42
+ {
43
+ "type": [
44
+ "null",
45
+ {
46
+ "type": "record",
47
+ "name": "DataHubPageTemplateAssetSummary",
48
+ "namespace": "com.linkedin.pegasus2avro.template",
49
+ "fields": [
50
+ {
51
+ "type": [
52
+ "null",
53
+ {
54
+ "type": "array",
55
+ "items": {
56
+ "type": "record",
57
+ "name": "SummaryElement",
58
+ "namespace": "com.linkedin.pegasus2avro.template",
59
+ "fields": [
60
+ {
61
+ "type": {
62
+ "type": "enum",
63
+ "name": "SummaryElementType",
64
+ "namespace": "com.linkedin.pegasus2avro.template",
65
+ "symbols": [
66
+ "CREATED",
67
+ "TAGS",
68
+ "GLOSSARY_TERMS",
69
+ "OWNERS",
70
+ "DOMAIN",
71
+ "STRUCTURED_PROPERTY"
72
+ ]
73
+ },
74
+ "name": "elementType",
75
+ "doc": "The type of element/property"
76
+ },
77
+ {
78
+ "Relationship": {
79
+ "entityTypes": [
80
+ "structuredProperty"
81
+ ],
82
+ "name": "ContainsStructuredProperty"
83
+ },
84
+ "java": {
85
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
86
+ },
87
+ "type": [
88
+ "null",
89
+ "string"
90
+ ],
91
+ "name": "structuredPropertyUrn",
92
+ "default": null,
93
+ "doc": "The urn of the structured property shown. Required if propertyType is STRUCTURED_PROPERTY",
94
+ "Urn": "Urn",
95
+ "entityTypes": [
96
+ "structuredProperty"
97
+ ]
98
+ }
99
+ ],
100
+ "doc": "Info for a given asset summary element"
101
+ }
102
+ }
103
+ ],
104
+ "name": "summaryElements",
105
+ "default": null,
106
+ "doc": "The optional list of properties shown on an asset summary page header."
107
+ }
108
+ ],
109
+ "doc": "The page template info for asset summaries"
110
+ }
111
+ ],
112
+ "name": "assetSummary",
113
+ "default": null,
114
+ "doc": "The optional info for asset summaries. Should be populated if surfaceType is ASSET_SUMMARY"
115
+ },
116
+ {
117
+ "type": {
118
+ "type": "record",
119
+ "name": "DataHubPageTemplateSurface",
120
+ "namespace": "com.linkedin.pegasus2avro.template",
121
+ "fields": [
122
+ {
123
+ "Searchable": {
124
+ "fieldType": "KEYWORD"
125
+ },
126
+ "type": {
127
+ "type": "enum",
128
+ "symbolDocs": {
129
+ "ASSET_SUMMARY": "This template applies to what to display on asset summary pages",
130
+ "HOME_PAGE": "This template applies to what to display on the home page for users."
131
+ },
132
+ "name": "PageTemplateSurfaceType",
133
+ "namespace": "com.linkedin.pegasus2avro.template",
134
+ "symbols": [
135
+ "HOME_PAGE",
136
+ "ASSET_SUMMARY"
137
+ ]
138
+ },
139
+ "name": "surfaceType",
140
+ "doc": "Where exactly is this template being used"
141
+ }
142
+ ],
143
+ "doc": "Info about the surface area of the product that this template is deployed in"
144
+ },
145
+ "name": "surface",
146
+ "doc": "Info about the surface area of the product that this template is deployed in"
147
+ },
148
+ {
149
+ "type": {
150
+ "type": "record",
151
+ "name": "DataHubPageTemplateVisibility",
152
+ "namespace": "com.linkedin.pegasus2avro.template",
153
+ "fields": [
154
+ {
155
+ "Searchable": {
156
+ "fieldType": "KEYWORD"
157
+ },
158
+ "type": {
159
+ "type": "enum",
160
+ "symbolDocs": {
161
+ "GLOBAL": "This template is used across users",
162
+ "PERSONAL": "This template is used for individual use only"
163
+ },
164
+ "name": "PageTemplateScope",
165
+ "namespace": "com.linkedin.pegasus2avro.template",
166
+ "symbols": [
167
+ "PERSONAL",
168
+ "GLOBAL"
169
+ ]
170
+ },
171
+ "name": "scope",
172
+ "doc": "The scope of this template and who can use/see it"
173
+ }
174
+ ],
175
+ "doc": "Info about the visibility of this template"
176
+ },
177
+ "name": "visibility",
178
+ "doc": "Info about the visibility of this template"
179
+ },
180
+ {
181
+ "Searchable": {
182
+ "/actor": {
183
+ "fieldName": "createdBy",
184
+ "fieldType": "URN"
185
+ },
186
+ "/time": {
187
+ "fieldName": "createdAt",
188
+ "fieldType": "DATETIME"
189
+ }
190
+ },
191
+ "type": {
192
+ "type": "record",
193
+ "name": "AuditStamp",
194
+ "namespace": "com.linkedin.pegasus2avro.common",
195
+ "fields": [
196
+ {
197
+ "type": "long",
198
+ "name": "time",
199
+ "doc": "When did the resource/association/sub-resource move into the specific lifecycle stage represented by this AuditEvent."
200
+ },
201
+ {
202
+ "java": {
203
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
204
+ },
205
+ "type": "string",
206
+ "name": "actor",
207
+ "doc": "The entity (e.g. a member URN) which will be credited for moving the resource/association/sub-resource into the specific lifecycle stage. It is also the one used to authorize the change.",
208
+ "Urn": "Urn"
209
+ },
210
+ {
211
+ "java": {
212
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
213
+ },
214
+ "type": [
215
+ "null",
216
+ "string"
217
+ ],
218
+ "name": "impersonator",
219
+ "default": null,
220
+ "doc": "The entity (e.g. a service URN) which performs the change on behalf of the Actor and must be authorized to act as the Actor.",
221
+ "Urn": "Urn"
222
+ },
223
+ {
224
+ "type": [
225
+ "null",
226
+ "string"
227
+ ],
228
+ "name": "message",
229
+ "default": null,
230
+ "doc": "Additional context around how DataHub was informed of the particular change. For example: was the change created by an automated process, or manually."
231
+ }
232
+ ],
233
+ "doc": "Data captured on a resource/association/sub-resource level giving insight into when that resource/association/sub-resource moved into a particular lifecycle stage, and who acted to move it into that specific lifecycle stage."
234
+ },
235
+ "name": "created",
236
+ "doc": "Audit stamp for when and by whom this template was created"
237
+ },
238
+ {
239
+ "Searchable": {
240
+ "/time": {
241
+ "fieldName": "lastModifiedAt",
242
+ "fieldType": "DATETIME"
243
+ }
244
+ },
245
+ "type": "com.linkedin.pegasus2avro.common.AuditStamp",
246
+ "name": "lastModified",
247
+ "doc": "Audit stamp for when and by whom this template was last updated"
248
+ }
249
+ ],
250
+ "doc": "The main properties of a DataHub page template"
251
+ }
@@ -110,13 +110,15 @@
110
110
  "type": "enum",
111
111
  "symbolDocs": {
112
112
  "EQUALS": "Whether the field matches the value",
113
+ "NOT_EQUALS": "Whether the field does not match the value",
113
114
  "STARTS_WITH": "Whether the field value starts with the value"
114
115
  },
115
116
  "name": "PolicyMatchCondition",
116
117
  "namespace": "com.linkedin.pegasus2avro.policy",
117
118
  "symbols": [
118
119
  "EQUALS",
119
- "STARTS_WITH"
120
+ "STARTS_WITH",
121
+ "NOT_EQUALS"
120
122
  ],
121
123
  "doc": "The matching condition in a filter criterion"
122
124
  },
@@ -138,6 +140,15 @@
138
140
  "name": "filter",
139
141
  "default": null,
140
142
  "doc": "Filter to apply privileges to"
143
+ },
144
+ {
145
+ "type": [
146
+ "null",
147
+ "com.linkedin.pegasus2avro.policy.PolicyMatchFilter"
148
+ ],
149
+ "name": "privilegeConstraints",
150
+ "default": null,
151
+ "doc": "Constraints around what sub-resources operations are allowed to modify, i.e. NOT_EQUALS - cannot modify a particular defined tag, EQUALS - can only modify a particular defined tag, STARTS_WITH - can only modify a tag starting with xyz"
141
152
  }
142
153
  ],
143
154
  "doc": "Information used to filter DataHub resource."
@@ -213,13 +213,17 @@
213
213
  "DEV": "Designates development fabrics",
214
214
  "EI": "Designates early-integration fabrics",
215
215
  "NON_PROD": "Designates non-production fabrics",
216
+ "PRD": "Alternative Prod spelling",
216
217
  "PRE": "Designates pre-production fabrics",
217
218
  "PROD": "Designates production fabrics",
218
219
  "QA": "Designates quality assurance fabrics",
219
220
  "RVW": "Designates review fabrics",
220
221
  "SANDBOX": "Designates sandbox fabrics",
222
+ "SBX": "Alternative spelling for sandbox",
223
+ "SIT": "System Integration Testing",
221
224
  "STG": "Designates staging fabrics",
222
225
  "TEST": "Designates testing fabrics",
226
+ "TST": "Alternative Test spelling",
223
227
  "UAT": "Designates user acceptance testing fabrics"
224
228
  },
225
229
  "name": "FabricType",
@@ -236,6 +240,10 @@
236
240
  "PROD",
237
241
  "CORP",
238
242
  "RVW",
243
+ "PRD",
244
+ "TST",
245
+ "SIT",
246
+ "SBX",
239
247
  "SANDBOX"
240
248
  ],
241
249
  "doc": "Fabric group type"
@@ -375,6 +375,14 @@
375
375
  "doc": "The type of upstream entity"
376
376
  },
377
377
  {
378
+ "Searchable": {
379
+ "/*": {
380
+ "fieldName": "fineGrainedUpstreams",
381
+ "fieldType": "URN",
382
+ "hasValuesFieldName": "hasFineGrainedUpstreams",
383
+ "queryByDefault": false
384
+ }
385
+ },
378
386
  "type": [
379
387
  "null",
380
388
  {
@@ -8,6 +8,7 @@
8
8
  "datahubIngestionRunSummary",
9
9
  "datahubIngestionCheckpoint",
10
10
  "domains",
11
+ "applications",
11
12
  "deprecation",
12
13
  "versionInfo",
13
14
  "dataJobInfo",