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

Files changed (26) hide show
  1. acryl_datahub_cloud/_codegen_config.json +1 -1
  2. acryl_datahub_cloud/metadata/com/linkedin/pegasus2avro/assertion/__init__.py +2 -0
  3. acryl_datahub_cloud/metadata/com/linkedin/pegasus2avro/logical/__init__.py +15 -0
  4. acryl_datahub_cloud/metadata/com/linkedin/pegasus2avro/module/__init__.py +4 -0
  5. acryl_datahub_cloud/metadata/schema.avsc +210 -18
  6. acryl_datahub_cloud/metadata/schema_classes.py +289 -10
  7. acryl_datahub_cloud/metadata/schemas/AssertionAnalyticsRunEvent.avsc +46 -0
  8. acryl_datahub_cloud/metadata/schemas/AssertionInfo.avsc +25 -0
  9. acryl_datahub_cloud/metadata/schemas/AssertionRunEvent.avsc +25 -0
  10. acryl_datahub_cloud/metadata/schemas/CorpUserSettings.avsc +10 -1
  11. acryl_datahub_cloud/metadata/schemas/DataHubPageModuleProperties.avsc +88 -7
  12. acryl_datahub_cloud/metadata/schemas/DatasetKey.avsc +1 -0
  13. acryl_datahub_cloud/metadata/schemas/GlobalSettingsInfo.avsc +9 -0
  14. acryl_datahub_cloud/metadata/schemas/LogicalParent.avsc +140 -0
  15. acryl_datahub_cloud/metadata/schemas/MetadataChangeEvent.avsc +18 -0
  16. acryl_datahub_cloud/metadata/schemas/MetadataChangeLog.avsc +62 -44
  17. acryl_datahub_cloud/metadata/schemas/MetadataChangeProposal.avsc +61 -0
  18. acryl_datahub_cloud/metadata/schemas/MonitorInfo.avsc +25 -0
  19. acryl_datahub_cloud/metadata/schemas/QuerySubjects.avsc +1 -12
  20. acryl_datahub_cloud/metadata/schemas/SchemaFieldKey.avsc +1 -0
  21. acryl_datahub_cloud/metadata/schemas/SystemMetadata.avsc +61 -0
  22. {acryl_datahub_cloud-0.3.13rc2.dist-info → acryl_datahub_cloud-0.3.13rc3.dist-info}/METADATA +43 -43
  23. {acryl_datahub_cloud-0.3.13rc2.dist-info → acryl_datahub_cloud-0.3.13rc3.dist-info}/RECORD +26 -24
  24. {acryl_datahub_cloud-0.3.13rc2.dist-info → acryl_datahub_cloud-0.3.13rc3.dist-info}/WHEEL +0 -0
  25. {acryl_datahub_cloud-0.3.13rc2.dist-info → acryl_datahub_cloud-0.3.13rc3.dist-info}/entry_points.txt +0 -0
  26. {acryl_datahub_cloud-0.3.13rc2.dist-info → acryl_datahub_cloud-0.3.13rc3.dist-info}/top_level.txt +0 -0
@@ -2288,6 +2288,7 @@ class AssertionAnalyticsRunEventClass(_Aspect):
2288
2288
  asserteeGlossaryTerms: Union[None, List[str]]=None,
2289
2289
  asserteeOwners: Union[None, List[str]]=None,
2290
2290
  asserteeDataPlatform: Union[None, str]=None,
2291
+ asserteeContainer: Union[None, str]=None,
2291
2292
  asserteeDataPlatformInstance: Union[None, str]=None,
2292
2293
  asserteeSchemaFieldGlossaryTerms: Union[None, List[str]]=None,
2293
2294
  asserteeSchemaFieldTags: Union[None, List[str]]=None,
@@ -2306,6 +2307,7 @@ class AssertionAnalyticsRunEventClass(_Aspect):
2306
2307
  self.asserteeGlossaryTerms = asserteeGlossaryTerms
2307
2308
  self.asserteeOwners = asserteeOwners
2308
2309
  self.asserteeDataPlatform = asserteeDataPlatform
2310
+ self.asserteeContainer = asserteeContainer
2309
2311
  self.asserteeDataPlatformInstance = asserteeDataPlatformInstance
2310
2312
  self.asserteeSchemaFieldGlossaryTerms = asserteeSchemaFieldGlossaryTerms
2311
2313
  self.asserteeSchemaFieldTags = asserteeSchemaFieldTags
@@ -2332,6 +2334,7 @@ class AssertionAnalyticsRunEventClass(_Aspect):
2332
2334
  self.asserteeGlossaryTerms = self.RECORD_SCHEMA.fields_dict["asserteeGlossaryTerms"].default
2333
2335
  self.asserteeOwners = self.RECORD_SCHEMA.fields_dict["asserteeOwners"].default
2334
2336
  self.asserteeDataPlatform = self.RECORD_SCHEMA.fields_dict["asserteeDataPlatform"].default
2337
+ self.asserteeContainer = self.RECORD_SCHEMA.fields_dict["asserteeContainer"].default
2335
2338
  self.asserteeDataPlatformInstance = self.RECORD_SCHEMA.fields_dict["asserteeDataPlatformInstance"].default
2336
2339
  self.asserteeSchemaFieldGlossaryTerms = self.RECORD_SCHEMA.fields_dict["asserteeSchemaFieldGlossaryTerms"].default
2337
2340
  self.asserteeSchemaFieldTags = self.RECORD_SCHEMA.fields_dict["asserteeSchemaFieldTags"].default
@@ -2427,6 +2430,16 @@ class AssertionAnalyticsRunEventClass(_Aspect):
2427
2430
  self._inner_dict['asserteeDataPlatform'] = value
2428
2431
 
2429
2432
 
2433
+ @property
2434
+ def asserteeContainer(self) -> Union[None, str]:
2435
+ """The Container attached to the entity's parent Asset"""
2436
+ return self._inner_dict.get('asserteeContainer') # type: ignore
2437
+
2438
+ @asserteeContainer.setter
2439
+ def asserteeContainer(self, value: Union[None, str]) -> None:
2440
+ self._inner_dict['asserteeContainer'] = value
2441
+
2442
+
2430
2443
  @property
2431
2444
  def asserteeDataPlatformInstance(self) -> Union[None, str]:
2432
2445
  """Instance of the parent's data platform (e.g. db instance)"""
@@ -2986,6 +2999,7 @@ class AssertionInfoClass(_Aspect):
2986
2999
  source: Union[None, "AssertionSourceClass"]=None,
2987
3000
  lastUpdated: Union[None, "AuditStampClass"]=None,
2988
3001
  description: Union[None, str]=None,
3002
+ note: Union[None, "AssertionNoteClass"]=None,
2989
3003
  ):
2990
3004
  super().__init__()
2991
3005
 
@@ -3006,6 +3020,7 @@ class AssertionInfoClass(_Aspect):
3006
3020
  self.source = source
3007
3021
  self.lastUpdated = lastUpdated
3008
3022
  self.description = description
3023
+ self.note = note
3009
3024
 
3010
3025
  def _restore_defaults(self) -> None:
3011
3026
  self.customProperties = dict()
@@ -3021,6 +3036,7 @@ class AssertionInfoClass(_Aspect):
3021
3036
  self.source = self.RECORD_SCHEMA.fields_dict["source"].default
3022
3037
  self.lastUpdated = self.RECORD_SCHEMA.fields_dict["lastUpdated"].default
3023
3038
  self.description = self.RECORD_SCHEMA.fields_dict["description"].default
3039
+ self.note = self.RECORD_SCHEMA.fields_dict["note"].default
3024
3040
 
3025
3041
 
3026
3042
  @property
@@ -3157,6 +3173,17 @@ class AssertionInfoClass(_Aspect):
3157
3173
  self._inner_dict['description'] = value
3158
3174
 
3159
3175
 
3176
+ @property
3177
+ def note(self) -> Union[None, "AssertionNoteClass"]:
3178
+ """An optional note to give technical owners more context about the assertion, and how to troubleshoot it.
3179
+ The UI will render this in markdown format."""
3180
+ return self._inner_dict.get('note') # type: ignore
3181
+
3182
+ @note.setter
3183
+ def note(self, value: Union[None, "AssertionNoteClass"]) -> None:
3184
+ self._inner_dict['note'] = value
3185
+
3186
+
3160
3187
  class AssertionMetricClass(DictWrapper):
3161
3188
  # No docs available.
3162
3189
 
@@ -3220,6 +3247,44 @@ class AssertionMonitorSensitivityClass(DictWrapper):
3220
3247
  self._inner_dict['level'] = value
3221
3248
 
3222
3249
 
3250
+ class AssertionNoteClass(DictWrapper):
3251
+ # No docs available.
3252
+
3253
+ RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.assertion.AssertionNote")
3254
+ def __init__(self,
3255
+ content: str,
3256
+ lastModified: "AuditStampClass",
3257
+ ):
3258
+ super().__init__()
3259
+
3260
+ self.content = content
3261
+ self.lastModified = lastModified
3262
+
3263
+ def _restore_defaults(self) -> None:
3264
+ self.content = str()
3265
+ self.lastModified = AuditStampClass._construct_with_defaults()
3266
+
3267
+
3268
+ @property
3269
+ def content(self) -> str:
3270
+ """The note to give technical owners more context about the assertion, and how to troubleshoot it."""
3271
+ return self._inner_dict.get('content') # type: ignore
3272
+
3273
+ @content.setter
3274
+ def content(self, value: str) -> None:
3275
+ self._inner_dict['content'] = value
3276
+
3277
+
3278
+ @property
3279
+ def lastModified(self) -> "AuditStampClass":
3280
+ """The time at which the note was last modified."""
3281
+ return self._inner_dict.get('lastModified') # type: ignore
3282
+
3283
+ @lastModified.setter
3284
+ def lastModified(self, value: "AuditStampClass") -> None:
3285
+ self._inner_dict['lastModified'] = value
3286
+
3287
+
3223
3288
  class AssertionResultClass(DictWrapper):
3224
3289
  """The result of running an assertion"""
3225
3290
 
@@ -21990,6 +22055,35 @@ class LinkPreviewTypeClass(object):
21990
22055
 
21991
22056
 
21992
22057
 
22058
+ class LogicalParentClass(_Aspect):
22059
+ # No docs available.
22060
+
22061
+
22062
+ ASPECT_NAME = 'logicalParent'
22063
+ ASPECT_INFO = {}
22064
+ RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.logical.LogicalParent")
22065
+
22066
+ def __init__(self,
22067
+ parent: "EdgeClass",
22068
+ ):
22069
+ super().__init__()
22070
+
22071
+ self.parent = parent
22072
+
22073
+ def _restore_defaults(self) -> None:
22074
+ self.parent = EdgeClass._construct_with_defaults()
22075
+
22076
+
22077
+ @property
22078
+ def parent(self) -> "EdgeClass":
22079
+ # No docs available.
22080
+ return self._inner_dict.get('parent') # type: ignore
22081
+
22082
+ @parent.setter
22083
+ def parent(self, value: "EdgeClass") -> None:
22084
+ self._inner_dict['parent'] = value
22085
+
22086
+
21993
22087
  class ActionRequestKeyClass(_Aspect):
21994
22088
  """Key for an ActionRequest"""
21995
22089
 
@@ -23041,7 +23135,7 @@ class DatasetKeyClass(_Aspect):
23041
23135
 
23042
23136
 
23043
23137
  ASPECT_NAME = 'datasetKey'
23044
- ASPECT_INFO = {'keyForEntity': 'dataset', 'entityCategory': 'core', 'entityAspects': ['viewProperties', 'subTypes', 'datasetProfile', 'datasetUsageStatistics', 'operation', 'domains', 'applications', 'schemaMetadata', 'status', 'container', 'deprecation', 'testResults', 'siblings', 'embed', 'incidentsSummary', 'datasetProperties', 'editableDatasetProperties', 'datasetDeprecation', 'datasetUpstreamLineage', 'upstreamLineage', 'institutionalMemory', 'ownership', 'editableSchemaMetadata', 'globalTags', 'glossaryTerms', 'browsePaths', 'dataPlatformInstance', 'browsePathsV2', 'access', 'structuredProperties', 'forms', 'partitionsSummary', 'versionProperties', 'icebergCatalogInfo', 'inferredNeighbors', 'inferredMetadata', 'schemaFieldsInferredMetadata', 'schemaFieldsInferredNeighbors', 'assertionsSummary', 'usageFeatures', 'storageFeatures', 'lineageFeatures', 'proposals', 'schemaProposals', 'anomaliesSummary', 'share', 'origin', 'documentation', 'entityInferenceMetadata'], 'entityDoc': 'Datasets represent logical or physical data assets stored or represented in various data platforms. Tables, Views, Streams are all instances of datasets.'}
23138
+ ASPECT_INFO = {'keyForEntity': 'dataset', 'entityCategory': 'core', 'entityAspects': ['viewProperties', 'subTypes', 'datasetProfile', 'datasetUsageStatistics', 'operation', 'domains', 'applications', 'schemaMetadata', 'status', 'container', 'deprecation', 'testResults', 'siblings', 'embed', 'incidentsSummary', 'datasetProperties', 'editableDatasetProperties', 'datasetDeprecation', 'datasetUpstreamLineage', 'upstreamLineage', 'institutionalMemory', 'ownership', 'editableSchemaMetadata', 'globalTags', 'glossaryTerms', 'browsePaths', 'dataPlatformInstance', 'browsePathsV2', 'access', 'structuredProperties', 'forms', 'partitionsSummary', 'versionProperties', 'icebergCatalogInfo', 'logicalParent', 'inferredNeighbors', 'inferredMetadata', 'schemaFieldsInferredMetadata', 'schemaFieldsInferredNeighbors', 'assertionsSummary', 'usageFeatures', 'storageFeatures', 'lineageFeatures', 'proposals', 'schemaProposals', 'anomaliesSummary', 'share', 'origin', 'documentation', 'entityInferenceMetadata'], 'entityDoc': 'Datasets represent logical or physical data assets stored or represented in various data platforms. Tables, Views, Streams are all instances of datasets.'}
23045
23139
  RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.metadata.key.DatasetKey")
23046
23140
 
23047
23141
  def __init__(self,
@@ -24069,7 +24163,7 @@ class SchemaFieldKeyClass(_Aspect):
24069
24163
 
24070
24164
 
24071
24165
  ASPECT_NAME = 'schemaFieldKey'
24072
- ASPECT_INFO = {'keyForEntity': 'schemaField', 'entityCategory': 'core', 'entityAspects': ['schemafieldInfo', 'structuredProperties', 'forms', 'businessAttributes', 'status', 'schemaFieldAliases', 'documentation', 'testResults', 'deprecation', 'subTypes', 'schemaFieldProfile', 'lineageFeatures']}
24166
+ ASPECT_INFO = {'keyForEntity': 'schemaField', 'entityCategory': 'core', 'entityAspects': ['schemafieldInfo', 'structuredProperties', 'forms', 'businessAttributes', 'status', 'schemaFieldAliases', 'documentation', 'testResults', 'deprecation', 'subTypes', 'logicalParent', 'schemaFieldProfile', 'lineageFeatures']}
24073
24167
  RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.metadata.key.SchemaFieldKey")
24074
24168
 
24075
24169
  def __init__(self,
@@ -28318,6 +28412,31 @@ class TrainingDataClass(_Aspect):
28318
28412
  self._inner_dict['trainingData'] = value
28319
28413
 
28320
28414
 
28415
+ class AssetCollectionModuleParamsClass(DictWrapper):
28416
+ """The params required if the module is type ASSET_COLLECTION"""
28417
+
28418
+ RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.module.AssetCollectionModuleParams")
28419
+ def __init__(self,
28420
+ assetUrns: List[str],
28421
+ ):
28422
+ super().__init__()
28423
+
28424
+ self.assetUrns = assetUrns
28425
+
28426
+ def _restore_defaults(self) -> None:
28427
+ self.assetUrns = list()
28428
+
28429
+
28430
+ @property
28431
+ def assetUrns(self) -> List[str]:
28432
+ # No docs available.
28433
+ return self._inner_dict.get('assetUrns') # type: ignore
28434
+
28435
+ @assetUrns.setter
28436
+ def assetUrns(self, value: List[str]) -> None:
28437
+ self._inner_dict['assetUrns'] = value
28438
+
28439
+
28321
28440
  class DataHubPageModuleParamsClass(DictWrapper):
28322
28441
  """The specific parameters stored for a module"""
28323
28442
 
@@ -28325,15 +28444,21 @@ class DataHubPageModuleParamsClass(DictWrapper):
28325
28444
  def __init__(self,
28326
28445
  linkParams: Union[None, "LinkModuleParamsClass"]=None,
28327
28446
  richTextParams: Union[None, "RichTextModuleParamsClass"]=None,
28447
+ assetCollectionParams: Union[None, "AssetCollectionModuleParamsClass"]=None,
28448
+ hierarchyViewParams: Union[None, "HierarchyModuleParamsClass"]=None,
28328
28449
  ):
28329
28450
  super().__init__()
28330
28451
 
28331
28452
  self.linkParams = linkParams
28332
28453
  self.richTextParams = richTextParams
28454
+ self.assetCollectionParams = assetCollectionParams
28455
+ self.hierarchyViewParams = hierarchyViewParams
28333
28456
 
28334
28457
  def _restore_defaults(self) -> None:
28335
28458
  self.linkParams = self.RECORD_SCHEMA.fields_dict["linkParams"].default
28336
28459
  self.richTextParams = self.RECORD_SCHEMA.fields_dict["richTextParams"].default
28460
+ self.assetCollectionParams = self.RECORD_SCHEMA.fields_dict["assetCollectionParams"].default
28461
+ self.hierarchyViewParams = self.RECORD_SCHEMA.fields_dict["hierarchyViewParams"].default
28337
28462
 
28338
28463
 
28339
28464
  @property
@@ -28356,6 +28481,26 @@ class DataHubPageModuleParamsClass(DictWrapper):
28356
28481
  self._inner_dict['richTextParams'] = value
28357
28482
 
28358
28483
 
28484
+ @property
28485
+ def assetCollectionParams(self) -> Union[None, "AssetCollectionModuleParamsClass"]:
28486
+ """The params required if the module is type ASSET_COLLECTION"""
28487
+ return self._inner_dict.get('assetCollectionParams') # type: ignore
28488
+
28489
+ @assetCollectionParams.setter
28490
+ def assetCollectionParams(self, value: Union[None, "AssetCollectionModuleParamsClass"]) -> None:
28491
+ self._inner_dict['assetCollectionParams'] = value
28492
+
28493
+
28494
+ @property
28495
+ def hierarchyViewParams(self) -> Union[None, "HierarchyModuleParamsClass"]:
28496
+ """The params required if the module is type HIERARCHY_VIEW"""
28497
+ return self._inner_dict.get('hierarchyViewParams') # type: ignore
28498
+
28499
+ @hierarchyViewParams.setter
28500
+ def hierarchyViewParams(self, value: Union[None, "HierarchyModuleParamsClass"]) -> None:
28501
+ self._inner_dict['hierarchyViewParams'] = value
28502
+
28503
+
28359
28504
  class DataHubPageModulePropertiesClass(_Aspect):
28360
28505
  """The main properties of a DataHub page module"""
28361
28506
 
@@ -28471,6 +28616,9 @@ class DataHubPageModuleTypeClass(object):
28471
28616
  DOMAINS = "DOMAINS"
28472
28617
  """Module displaying the top domains"""
28473
28618
 
28619
+ SUBSCRIBED_ASSETS = "SUBSCRIBED_ASSETS"
28620
+ """Module displaying assets subscribed to by a given user"""
28621
+
28474
28622
 
28475
28623
 
28476
28624
  class DataHubPageModuleVisibilityClass(DictWrapper):
@@ -28498,29 +28646,110 @@ class DataHubPageModuleVisibilityClass(DictWrapper):
28498
28646
  self._inner_dict['scope'] = value
28499
28647
 
28500
28648
 
28649
+ class HierarchyModuleParamsClass(DictWrapper):
28650
+ """The params required if the module is type HIERARCHY_VIEW"""
28651
+
28652
+ RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.module.HierarchyModuleParams")
28653
+ def __init__(self,
28654
+ showRelatedEntities: bool,
28655
+ assetUrns: Union[None, List[str]]=None,
28656
+ relatedEntitiesFilterJson: Union[None, str]=None,
28657
+ ):
28658
+ super().__init__()
28659
+
28660
+ self.assetUrns = assetUrns
28661
+ self.showRelatedEntities = showRelatedEntities
28662
+ self.relatedEntitiesFilterJson = relatedEntitiesFilterJson
28663
+
28664
+ def _restore_defaults(self) -> None:
28665
+ self.assetUrns = self.RECORD_SCHEMA.fields_dict["assetUrns"].default
28666
+ self.showRelatedEntities = bool()
28667
+ self.relatedEntitiesFilterJson = self.RECORD_SCHEMA.fields_dict["relatedEntitiesFilterJson"].default
28668
+
28669
+
28670
+ @property
28671
+ def assetUrns(self) -> Union[None, List[str]]:
28672
+ # No docs available.
28673
+ return self._inner_dict.get('assetUrns') # type: ignore
28674
+
28675
+ @assetUrns.setter
28676
+ def assetUrns(self, value: Union[None, List[str]]) -> None:
28677
+ self._inner_dict['assetUrns'] = value
28678
+
28679
+
28680
+ @property
28681
+ def showRelatedEntities(self) -> bool:
28682
+ # No docs available.
28683
+ return self._inner_dict.get('showRelatedEntities') # type: ignore
28684
+
28685
+ @showRelatedEntities.setter
28686
+ def showRelatedEntities(self, value: bool) -> None:
28687
+ self._inner_dict['showRelatedEntities'] = value
28688
+
28689
+
28690
+ @property
28691
+ def relatedEntitiesFilterJson(self) -> Union[None, str]:
28692
+ """Optional filters to filter relatedEntities (assetUrns) out
28693
+
28694
+ The stringified json representing the logical predicate built in the UI to select assets.
28695
+ This predicate is turned into orFilters to send through graphql since graphql doesn't support
28696
+ arbitrary nesting. This string is used to restore the UI for this logical predicate."""
28697
+ return self._inner_dict.get('relatedEntitiesFilterJson') # type: ignore
28698
+
28699
+ @relatedEntitiesFilterJson.setter
28700
+ def relatedEntitiesFilterJson(self, value: Union[None, str]) -> None:
28701
+ self._inner_dict['relatedEntitiesFilterJson'] = value
28702
+
28703
+
28501
28704
  class LinkModuleParamsClass(DictWrapper):
28502
28705
  # No docs available.
28503
28706
 
28504
28707
  RECORD_SCHEMA = get_schema_type("com.linkedin.pegasus2avro.module.LinkModuleParams")
28505
28708
  def __init__(self,
28506
- linkUrn: str,
28709
+ linkUrl: str,
28710
+ imageUrl: Union[None, str]=None,
28711
+ description: Union[None, str]=None,
28507
28712
  ):
28508
28713
  super().__init__()
28509
28714
 
28510
- self.linkUrn = linkUrn
28715
+ self.linkUrl = linkUrl
28716
+ self.imageUrl = imageUrl
28717
+ self.description = description
28511
28718
 
28512
28719
  def _restore_defaults(self) -> None:
28513
- self.linkUrn = str()
28720
+ self.linkUrl = str()
28721
+ self.imageUrl = self.RECORD_SCHEMA.fields_dict["imageUrl"].default
28722
+ self.description = self.RECORD_SCHEMA.fields_dict["description"].default
28514
28723
 
28515
28724
 
28516
28725
  @property
28517
- def linkUrn(self) -> str:
28726
+ def linkUrl(self) -> str:
28518
28727
  # No docs available.
28519
- return self._inner_dict.get('linkUrn') # type: ignore
28728
+ return self._inner_dict.get('linkUrl') # type: ignore
28520
28729
 
28521
- @linkUrn.setter
28522
- def linkUrn(self, value: str) -> None:
28523
- self._inner_dict['linkUrn'] = value
28730
+ @linkUrl.setter
28731
+ def linkUrl(self, value: str) -> None:
28732
+ self._inner_dict['linkUrl'] = value
28733
+
28734
+
28735
+ @property
28736
+ def imageUrl(self) -> Union[None, str]:
28737
+ # No docs available.
28738
+ return self._inner_dict.get('imageUrl') # type: ignore
28739
+
28740
+ @imageUrl.setter
28741
+ def imageUrl(self, value: Union[None, str]) -> None:
28742
+ self._inner_dict['imageUrl'] = value
28743
+
28744
+
28745
+ @property
28746
+ def description(self) -> Union[None, str]:
28747
+ # No docs available.
28748
+ return self._inner_dict.get('description') # type: ignore
28749
+
28750
+ @description.setter
28751
+ def description(self, value: Union[None, str]) -> None:
28752
+ self._inner_dict['description'] = value
28524
28753
 
28525
28754
 
28526
28755
  class PageModuleScopeClass(object):
@@ -30457,6 +30686,8 @@ class SystemMetadataClass(_Aspect):
30457
30686
  registryVersion: Union[None, str]=None,
30458
30687
  properties: Union[None, Dict[str, str]]=None,
30459
30688
  version: Union[None, str]=None,
30689
+ aspectCreated: Union[None, "AuditStampClass"]=None,
30690
+ aspectModified: Union[None, "AuditStampClass"]=None,
30460
30691
  ):
30461
30692
  super().__init__()
30462
30693
 
@@ -30480,6 +30711,8 @@ class SystemMetadataClass(_Aspect):
30480
30711
  self.registryVersion = registryVersion
30481
30712
  self.properties = properties
30482
30713
  self.version = version
30714
+ self.aspectCreated = aspectCreated
30715
+ self.aspectModified = aspectModified
30483
30716
 
30484
30717
  def _restore_defaults(self) -> None:
30485
30718
  self.lastObserved = self.RECORD_SCHEMA.fields_dict["lastObserved"].default
@@ -30490,6 +30723,8 @@ class SystemMetadataClass(_Aspect):
30490
30723
  self.registryVersion = self.RECORD_SCHEMA.fields_dict["registryVersion"].default
30491
30724
  self.properties = self.RECORD_SCHEMA.fields_dict["properties"].default
30492
30725
  self.version = self.RECORD_SCHEMA.fields_dict["version"].default
30726
+ self.aspectCreated = self.RECORD_SCHEMA.fields_dict["aspectCreated"].default
30727
+ self.aspectModified = self.RECORD_SCHEMA.fields_dict["aspectModified"].default
30493
30728
 
30494
30729
 
30495
30730
  @property
@@ -30574,6 +30809,26 @@ class SystemMetadataClass(_Aspect):
30574
30809
  self._inner_dict['version'] = value
30575
30810
 
30576
30811
 
30812
+ @property
30813
+ def aspectCreated(self) -> Union[None, "AuditStampClass"]:
30814
+ """When the aspect was initially created and who created it, detected by version 0 -> 1 change"""
30815
+ return self._inner_dict.get('aspectCreated') # type: ignore
30816
+
30817
+ @aspectCreated.setter
30818
+ def aspectCreated(self, value: Union[None, "AuditStampClass"]) -> None:
30819
+ self._inner_dict['aspectCreated'] = value
30820
+
30821
+
30822
+ @property
30823
+ def aspectModified(self) -> Union[None, "AuditStampClass"]:
30824
+ """When the aspect was last modified and the actor that performed the modification"""
30825
+ return self._inner_dict.get('aspectModified') # type: ignore
30826
+
30827
+ @aspectModified.setter
30828
+ def aspectModified(self, value: Union[None, "AuditStampClass"]) -> None:
30829
+ self._inner_dict['aspectModified'] = value
30830
+
30831
+
30577
30832
  class ChartCellClass(DictWrapper):
30578
30833
  """Chart cell in a notebook, which will present content in chart format"""
30579
30834
 
@@ -35386,6 +35641,7 @@ class SlackIntegrationSettingsClass(DictWrapper):
35386
35641
  enabled: Optional[bool]=None,
35387
35642
  encryptedBotToken: Union[None, str]=None,
35388
35643
  defaultChannelName: Union[None, str]=None,
35644
+ datahubAtMentionEnabled: Union[None, bool]=None,
35389
35645
  ):
35390
35646
  super().__init__()
35391
35647
 
@@ -35396,11 +35652,13 @@ class SlackIntegrationSettingsClass(DictWrapper):
35396
35652
  self.enabled = enabled
35397
35653
  self.encryptedBotToken = encryptedBotToken
35398
35654
  self.defaultChannelName = defaultChannelName
35655
+ self.datahubAtMentionEnabled = datahubAtMentionEnabled
35399
35656
 
35400
35657
  def _restore_defaults(self) -> None:
35401
35658
  self.enabled = self.RECORD_SCHEMA.fields_dict["enabled"].default
35402
35659
  self.encryptedBotToken = self.RECORD_SCHEMA.fields_dict["encryptedBotToken"].default
35403
35660
  self.defaultChannelName = self.RECORD_SCHEMA.fields_dict["defaultChannelName"].default
35661
+ self.datahubAtMentionEnabled = self.RECORD_SCHEMA.fields_dict["datahubAtMentionEnabled"].default
35404
35662
 
35405
35663
 
35406
35664
  @property
@@ -35436,6 +35694,17 @@ class SlackIntegrationSettingsClass(DictWrapper):
35436
35694
  self._inner_dict['defaultChannelName'] = value
35437
35695
 
35438
35696
 
35697
+ @property
35698
+ def datahubAtMentionEnabled(self) -> Union[None, bool]:
35699
+ """Whether the Slack @DataHub bot mention functionality is enabled.
35700
+ If null, use the default value from feature flags."""
35701
+ return self._inner_dict.get('datahubAtMentionEnabled') # type: ignore
35702
+
35703
+ @datahubAtMentionEnabled.setter
35704
+ def datahubAtMentionEnabled(self, value: Union[None, bool]) -> None:
35705
+ self._inner_dict['datahubAtMentionEnabled'] = value
35706
+
35707
+
35439
35708
  class SsoSettingsClass(DictWrapper):
35440
35709
  """SSO Integrations, supported on the UI."""
35441
35710
 
@@ -38303,6 +38572,7 @@ __SCHEMA_TYPES = {
38303
38572
  'com.linkedin.pegasus2avro.assertion.AssertionInfo': AssertionInfoClass,
38304
38573
  'com.linkedin.pegasus2avro.assertion.AssertionMetric': AssertionMetricClass,
38305
38574
  'com.linkedin.pegasus2avro.assertion.AssertionMonitorSensitivity': AssertionMonitorSensitivityClass,
38575
+ 'com.linkedin.pegasus2avro.assertion.AssertionNote': AssertionNoteClass,
38306
38576
  'com.linkedin.pegasus2avro.assertion.AssertionResult': AssertionResultClass,
38307
38577
  'com.linkedin.pegasus2avro.assertion.AssertionResultError': AssertionResultErrorClass,
38308
38578
  'com.linkedin.pegasus2avro.assertion.AssertionResultErrorType': AssertionResultErrorTypeClass,
@@ -38634,6 +38904,7 @@ __SCHEMA_TYPES = {
38634
38904
  'com.linkedin.pegasus2avro.ingestion.DataHubIngestionSourceSourceType': DataHubIngestionSourceSourceTypeClass,
38635
38905
  'com.linkedin.pegasus2avro.link.LinkPreviewInfo': LinkPreviewInfoClass,
38636
38906
  'com.linkedin.pegasus2avro.link.LinkPreviewType': LinkPreviewTypeClass,
38907
+ 'com.linkedin.pegasus2avro.logical.LogicalParent': LogicalParentClass,
38637
38908
  'com.linkedin.pegasus2avro.metadata.key.ActionRequestKey': ActionRequestKeyClass,
38638
38909
  'com.linkedin.pegasus2avro.metadata.key.AnomalyKey': AnomalyKeyClass,
38639
38910
  'com.linkedin.pegasus2avro.metadata.key.AssertionKey': AssertionKeyClass,
@@ -38777,10 +39048,12 @@ __SCHEMA_TYPES = {
38777
39048
  'com.linkedin.pegasus2avro.ml.metadata.SourceCodeUrl': SourceCodeUrlClass,
38778
39049
  'com.linkedin.pegasus2avro.ml.metadata.SourceCodeUrlType': SourceCodeUrlTypeClass,
38779
39050
  'com.linkedin.pegasus2avro.ml.metadata.TrainingData': TrainingDataClass,
39051
+ 'com.linkedin.pegasus2avro.module.AssetCollectionModuleParams': AssetCollectionModuleParamsClass,
38780
39052
  'com.linkedin.pegasus2avro.module.DataHubPageModuleParams': DataHubPageModuleParamsClass,
38781
39053
  'com.linkedin.pegasus2avro.module.DataHubPageModuleProperties': DataHubPageModulePropertiesClass,
38782
39054
  'com.linkedin.pegasus2avro.module.DataHubPageModuleType': DataHubPageModuleTypeClass,
38783
39055
  'com.linkedin.pegasus2avro.module.DataHubPageModuleVisibility': DataHubPageModuleVisibilityClass,
39056
+ 'com.linkedin.pegasus2avro.module.HierarchyModuleParams': HierarchyModuleParamsClass,
38784
39057
  'com.linkedin.pegasus2avro.module.LinkModuleParams': LinkModuleParamsClass,
38785
39058
  'com.linkedin.pegasus2avro.module.PageModuleScope': PageModuleScopeClass,
38786
39059
  'com.linkedin.pegasus2avro.module.RichTextModuleParams': RichTextModuleParamsClass,
@@ -39038,6 +39311,7 @@ __SCHEMA_TYPES = {
39038
39311
  'AssertionInfo': AssertionInfoClass,
39039
39312
  'AssertionMetric': AssertionMetricClass,
39040
39313
  'AssertionMonitorSensitivity': AssertionMonitorSensitivityClass,
39314
+ 'AssertionNote': AssertionNoteClass,
39041
39315
  'AssertionResult': AssertionResultClass,
39042
39316
  'AssertionResultError': AssertionResultErrorClass,
39043
39317
  'AssertionResultErrorType': AssertionResultErrorTypeClass,
@@ -39369,6 +39643,7 @@ __SCHEMA_TYPES = {
39369
39643
  'DataHubIngestionSourceSourceType': DataHubIngestionSourceSourceTypeClass,
39370
39644
  'LinkPreviewInfo': LinkPreviewInfoClass,
39371
39645
  'LinkPreviewType': LinkPreviewTypeClass,
39646
+ 'LogicalParent': LogicalParentClass,
39372
39647
  'ActionRequestKey': ActionRequestKeyClass,
39373
39648
  'AnomalyKey': AnomalyKeyClass,
39374
39649
  'AssertionKey': AssertionKeyClass,
@@ -39512,10 +39787,12 @@ __SCHEMA_TYPES = {
39512
39787
  'SourceCodeUrl': SourceCodeUrlClass,
39513
39788
  'SourceCodeUrlType': SourceCodeUrlTypeClass,
39514
39789
  'TrainingData': TrainingDataClass,
39790
+ 'AssetCollectionModuleParams': AssetCollectionModuleParamsClass,
39515
39791
  'DataHubPageModuleParams': DataHubPageModuleParamsClass,
39516
39792
  'DataHubPageModuleProperties': DataHubPageModulePropertiesClass,
39517
39793
  'DataHubPageModuleType': DataHubPageModuleTypeClass,
39518
39794
  'DataHubPageModuleVisibility': DataHubPageModuleVisibilityClass,
39795
+ 'HierarchyModuleParams': HierarchyModuleParamsClass,
39519
39796
  'LinkModuleParams': LinkModuleParamsClass,
39520
39797
  'PageModuleScope': PageModuleScopeClass,
39521
39798
  'RichTextModuleParams': RichTextModuleParamsClass,
@@ -39891,6 +40168,7 @@ ASPECT_CLASSES: List[Type[_Aspect]] = [
39891
40168
  BusinessAttributeInfoClass,
39892
40169
  BusinessAttributeKeyClass,
39893
40170
  BusinessAttributesClass,
40171
+ LogicalParentClass,
39894
40172
  LinkPreviewInfoClass,
39895
40173
  GlobalSettingsInfoClass,
39896
40174
  TelemetryClientIdClass,
@@ -40182,6 +40460,7 @@ class AspectBag(TypedDict, total=False):
40182
40460
  businessAttributeInfo: BusinessAttributeInfoClass
40183
40461
  businessAttributeKey: BusinessAttributeKeyClass
40184
40462
  businessAttributes: BusinessAttributesClass
40463
+ logicalParent: LogicalParentClass
40185
40464
  linkPreviewInfo: LinkPreviewInfoClass
40186
40465
  globalSettingsInfo: GlobalSettingsInfoClass
40187
40466
  telemetryClientId: TelemetryClientIdClass
@@ -167,6 +167,27 @@
167
167
  "doc": "Data Platform for parent",
168
168
  "Urn": "Urn"
169
169
  },
170
+ {
171
+ "Searchable": {
172
+ "/*": {
173
+ "addToFilters": true,
174
+ "fieldType": "URN",
175
+ "hasValuesFieldName": "hasAsserteeContainer"
176
+ }
177
+ },
178
+ "TimeseriesField": {},
179
+ "java": {
180
+ "class": "com.linkedin.pegasus2avro.common.urn.Urn"
181
+ },
182
+ "type": [
183
+ "null",
184
+ "string"
185
+ ],
186
+ "name": "asserteeContainer",
187
+ "default": null,
188
+ "doc": "The Container attached to the entity's parent Asset",
189
+ "Urn": "Urn"
190
+ },
170
191
  {
171
192
  "Searchable": {
172
193
  "addToFilters": true,
@@ -2960,6 +2981,31 @@
2960
2981
  "name": "description",
2961
2982
  "default": null,
2962
2983
  "doc": "An optional human-readable description of the assertion"
2984
+ },
2985
+ {
2986
+ "type": [
2987
+ "null",
2988
+ {
2989
+ "type": "record",
2990
+ "name": "AssertionNote",
2991
+ "namespace": "com.linkedin.pegasus2avro.assertion",
2992
+ "fields": [
2993
+ {
2994
+ "type": "string",
2995
+ "name": "content",
2996
+ "doc": "The note to give technical owners more context about the assertion, and how to troubleshoot it."
2997
+ },
2998
+ {
2999
+ "type": "com.linkedin.pegasus2avro.common.AuditStamp",
3000
+ "name": "lastModified",
3001
+ "doc": "The time at which the note was last modified."
3002
+ }
3003
+ ]
3004
+ }
3005
+ ],
3006
+ "name": "note",
3007
+ "default": null,
3008
+ "doc": "An optional note to give technical owners more context about the assertion, and how to troubleshoot it.\nThe UI will render this in markdown format."
2963
3009
  }
2964
3010
  ],
2965
3011
  "doc": "Information about an assertion\n\nAcryl Only: Did you update AssertionWithoutAnnotations.pdl? If not, please update it."
@@ -2669,6 +2669,31 @@
2669
2669
  "name": "description",
2670
2670
  "default": null,
2671
2671
  "doc": "An optional human-readable description of the assertion"
2672
+ },
2673
+ {
2674
+ "type": [
2675
+ "null",
2676
+ {
2677
+ "type": "record",
2678
+ "name": "AssertionNote",
2679
+ "namespace": "com.linkedin.pegasus2avro.assertion",
2680
+ "fields": [
2681
+ {
2682
+ "type": "string",
2683
+ "name": "content",
2684
+ "doc": "The note to give technical owners more context about the assertion, and how to troubleshoot it."
2685
+ },
2686
+ {
2687
+ "type": "com.linkedin.pegasus2avro.common.AuditStamp",
2688
+ "name": "lastModified",
2689
+ "doc": "The time at which the note was last modified."
2690
+ }
2691
+ ]
2692
+ }
2693
+ ],
2694
+ "name": "note",
2695
+ "default": null,
2696
+ "doc": "An optional note to give technical owners more context about the assertion, and how to troubleshoot it.\nThe UI will render this in markdown format."
2672
2697
  }
2673
2698
  ],
2674
2699
  "doc": "Information about an assertion\n\nAcryl Only: Did you update AssertionWithoutAnnotations.pdl? If not, please update it."
@@ -2760,6 +2760,31 @@
2760
2760
  "name": "description",
2761
2761
  "default": null,
2762
2762
  "doc": "An optional human-readable description of the assertion"
2763
+ },
2764
+ {
2765
+ "type": [
2766
+ "null",
2767
+ {
2768
+ "type": "record",
2769
+ "name": "AssertionNote",
2770
+ "namespace": "com.linkedin.pegasus2avro.assertion",
2771
+ "fields": [
2772
+ {
2773
+ "type": "string",
2774
+ "name": "content",
2775
+ "doc": "The note to give technical owners more context about the assertion, and how to troubleshoot it."
2776
+ },
2777
+ {
2778
+ "type": "com.linkedin.pegasus2avro.common.AuditStamp",
2779
+ "name": "lastModified",
2780
+ "doc": "The time at which the note was last modified."
2781
+ }
2782
+ ]
2783
+ }
2784
+ ],
2785
+ "name": "note",
2786
+ "default": null,
2787
+ "doc": "An optional note to give technical owners more context about the assertion, and how to troubleshoot it.\nThe UI will render this in markdown format."
2763
2788
  }
2764
2789
  ],
2765
2790
  "doc": "Information about an assertion\n\nAcryl Only: Did you update AssertionWithoutAnnotations.pdl? If not, please update it."