Semantic-link-labs

Latest version: v0.9.3

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.8.9

Improvements

* New Functions
* sempy_labs
* [get_semantic_model_definition](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_semantic_model_definition) (300)
* sempy_labs
* [get_capacity_assignment_status](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.get_capacity_assignment_status)
* Updated Functions
* sempy_labs
* [get_dax_query_dependencies](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_dax_query_dependencies) Added the 'show_vertipaq_stats' parameter. The 'dax_string' parameter now accepts either a single DAX query or a list of DAX queries.
* sempy_labs.report.ReportWrapper
* [list_visual_objects](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.report.html#sempy_labs.report.ReportWrapper.list_visual_objects) now shows the Object Display Name (if it was customized within the visual).
Bug Fixes

* sempy_labs.admin
* [assign_workspaces_to_capacity](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.assign_workspaces_to_capacity) Fixed issue where the function didn't resolve if workspace was set to None.
* 186
* 314
* 317
* 326

0.8.8

Bug Fixes

* 254
* 280

0.8.7

Improvements

* New Functions
* sempy_labs
* Connections
* [create_cloud_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_cloud_connection)
* [create_vnet_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_vnet_connection)
* [create_on_prem_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_on_prem_connection)
* [list_connection_role_assignments](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_connection_role_assignments)
* [delete_connection_role_assignment](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_connection_role_assignment)
* [delete_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_connection)
* Gateways
* [list_gateways](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_gateways)
* [delete_gateway](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_gateway)
* [list_gateway_role_assigments](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_gateway_role_assigments)
* [delete_gateway_role_assignment](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_gateway_role_assignment)
* [list_gateway_members](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_gateway_members)
* [create_vnet_gateway](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_vnet_gateway)
* [delete_gateway_member](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_gateway_member)
* [update_on_premises_gateway](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_on_premises_gateway)
* [update_vnet_gateway](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_vnet_gateway)
* Authentication
* [ServicePrincipalTokenProvider](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.ServicePrincipalTokenProvider) Class which generates a token provider via Azure Key Vault or Service Principal keys. This is the foundation for authenticating relevant functions via Service Principal. Thanks ecotte!
* [ServicePrincipalTokenProvider.from_azure_key_vault](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.ServicePrincipalTokenProvider.from_azure_key_vault) Obtains a token provider using Azure Key Vault credentials.
* [ServicePrincipalTokenProvider.from_aad_application_key_authentication](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.ServicePrincipalTokenProvider.from_aad_application_key_authentication) Obtains a token provider using Service Principal keys.
* sempy_labs.admin
* [list_git_connections](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_git_connections)
* [list_reports](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_reports)

* Updated Functions
* sempy_labs
* [list_connections](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_connections) Now supports pagination.
* [initialize_git_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.initialize_git_connection) Now returns commit hash. Thanks hurtn!
* [refresh_semantic_model](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.refresh_semantic_model) Added 'commit_mode' parameter. Thanks gbrueckl!
* sempy_labs.report
* [get_report_definition](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.report.html#sempy_labs.report.get_report_definition) Added the 'return_dataframe' parameter which defaults to True. If set to False, the function returns the json dictionary output.
* sempy_labs.report.ReportWrapper
* [list_visuals](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.report.html#sempy_labs.report.ReportWrapper.list_visuals) Title, SubTitle, AltText now support non-literal values (218) Thanks stephbruno!
* sempy_labs.admin Thanks ecotte!
* [list_workspaces](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_workspaces) Now uses the Fabric API and defaults to returning all workspaces. 'filter' parameter is no longer supported. New parameters available: capacity, workspace, workspace_state, workspace_type.
* [list_capacities](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_capacities) Now supports capacity name or Id.
* [assign_workspaces_to_capacity](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.assign_workspaces_to_capacity) Now supports workspace name or Ids.
* [unassign_workspaces_from_capacity](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.unassign_workspaces_from_capacity) Now supports capacity name or Id.
* [revoke_external_data_share](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.revoke_external_data_share) Supports workspace name or Id.
* [list_items](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_items) Supports capacity name or Id, workspace name or Id.
* [list_item_access_details](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_item_access_details) Supports Item Id or name & type. Supports workspace Id or Name.
* [list_activity_events](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_activity_events) Added the 'return_dataframe' parameter, allowing for returning the json dictionary output (if set to False).

Bug Fixes
* sempy_labs
* [update_from_git](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_from_git)
* [update_semantic_model_from_bim](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_semantic_model_from_bim)
* 288
* 290

0.8.6

Bug Fixes
* 274
* 277
* sempy_labs.migration
* [create_pqt_file](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.migration.html#sempy_labs.migration.create_pqt_file) Fixed the file naming convention when multiple pqt files are generated.

0.8.5

Improvements

* New Functions
* sempy_labs
* DAX
* [get_dax_query_dependencies](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_dax_query_dependencies) Obtains the columns on which a DAX query depends, including model dependencies (inspired by [Chris Webb's blog post](https://blog.crossjoin.co.uk/2024/10/20/finding-the-columns-touched-by-a-dax-query/)).
* [get_dax_query_memory_size](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_dax_query_memory_size) Obtains the total size, in bytes, used by all columns that a DAX query depends on (inspired by [Chris Webb's blog post](https://blog.crossjoin.co.uk/2024/10/20/finding-the-columns-touched-by-a-dax-query/)).
* Dataflows
* [list_upstream_dataflows](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_upstream_dataflows) Thanks to Alex Powers, this shows all dataflows upstream of a given dataflow.
* Mirroring
* [list_mirrored_databases](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_mirrored_databases)
* [start_mirroring](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.start_mirroring)
* [stop_mirroring](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.stop_mirroring)
* [create_mirrored_database](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_mirrored_database)
* [delete_mirrored_database](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_mirrored_database)
* [get_mirroring_status](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_mirroring_status)
* [get_tables_mirroring_status](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_tables_mirroring_status)
* [get_mirrored_database_definition](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_mirrored_database_definition)
* [update_mirrored_database_definition](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_mirrored_database_definition)
* sempy_labs.admin
* [list_modified_workspaces](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_modified_workspaces)
* sempy_labs.report
* [download_report](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.report.html#sempy_labs.report.download_report) Downloads a Power BI report and saves it as a .pbix file in the Files within the Lakehouse attached to the notebook.
* sempy_labs.tom
* [set_value_filter_behavior](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.tom.html#sempy_labs.tom.TOMWrapper.set_value_filter_behavior) ([learn more here](https://learn.microsoft.com/en-us/power-bi/transform-model/value-filter-behavior))
* Updated Functions
* sempy_labs.tom
* [add_calculation_group](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.tom.html#sempy_labs.tom.TOMWrapper.add_calculation_group) Added the 'column_name' parameter (261).

Bug Fixes
* 163
* 235
* 244
* 246
* 259
* 260
* 261
* 266
* 267
* 273
* 275
* 276

Notebooks
* Embedded videos within notebooks for easier learning.

0.8.4

* New Functions
* sempy_labs
* Semantic Models
* [get_semantic_model_refresh_history](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_semantic_model_refresh_history)
* Warehouses
* [get_warehouse_tables](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_warehouse_tables)
* [get_warehouse_columns](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_warehouse_columns)
* Notebooks
* [create_notebook](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_notebook)
* [update_notebook_definition](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_notebook_definition)
* Workloads
* [get_workloads](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.get_workloads)
* [patch_workload](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.patch_workload)
* Managed Private Endpoints
* [create_managed_private_endpoint](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.create_managed_private_endpoint)
* [delete_managed_private_endpoint](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.delete_managed_private_endpoint)
* [list_managed_private_endpoints](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.list_managed_private_endpoints)
* sempy_labs.report
* [get_report_datasources](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.report.html#sempy_labs.report.get_report_datasources)
* sempy_labs.directlake
* [update_direct_lake_model_connection](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.directlake.html#sempy_labs.directlake.update_direct_lake_model_connection)
* Updated Functions
* sempy_labs
* [refresh_semantic_model](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.refresh_semantic_model) If the refresh fails, this function now prints out the failure message(s). Added the 'visualize' parameter which if set to True shows a real-time visual of the refresh statistics per [Phil Seamark's blog](https://dax.tips/2023/12/05/visualize-power-bi-refresh-using-sempy/).
* [import_notebook_from_web](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.import_notebook_from_web) Added the 'overwrite' parameter.
* [model_bpa_rules](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.model_bpa_rules) Ensure all rules have descriptions.
* sempy_labs.admin
* [list_activity_events](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_activity_events) Updated 'Creation Time' column to be of datatype 'DateTime'.
* [list_workspaces](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.admin.html#sempy_labs.admin.list_workspaces) Added the 'filter' parameter (204).
* Updated the 'admin' functions which reference workspaces to leverage the admin version of list_workspaces.

General updates
* Direct Lake migration now supports relationships based on datetime (243).

* Bug fixes
* 86
* 212
* 225
* 226
* 229
* 232
* 239
* sempy_labs
* [update_fabric_capacity](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.html#sempy_labs.update_fabric_capacity)
* sempy_labs.tom
* [set_sort_by_column](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.tom.html#sempy_labs.tom.TOMWrapper.set_sort_by_column)
* [mark_as_date_table](https://semantic-link-labs.readthedocs.io/en/stable/sempy_labs.tom.html#sempy_labs.tom.TOMWrapper.mark_as_date_table)

Notebook updates
* [SQL](https://github.com/microsoft/semantic-link-labs/blob/main/notebooks/SQL.ipynb) Added the get_warehouse_tables, get_warehouse_columns functions.
* [Semantic Model Refresh](https://github.com/microsoft/semantic-link-labs/blob/main/notebooks/Semantic%20Model%20Refresh.ipynb) Added cells for visualizing a refresh and getting the refresh history for a semantic model.

Page 2 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.