Releases: microsoft/semantic-link-labs
Releases · microsoft/semantic-link-labs
semantic-link-labs 0.9.2
Improvements
-
New Functions
- sempy_labs
- delta_analyzer Provides statistics about delta tables, specifically relevant regarding their use in Direct Lake semantic models. This code is based on the work of @dax-tips! More info can be found here.
- list_synonyms Lists the synonyms from a semantic model's linguistic schema
- GraphQL
- sempy_labs.admin
-
$${\color{green}NEW!}$$ sempy_labs.graph functions to support Microsoft Graph) - sempy_labs.lakehouse
- sempy_labs.migration
- migrate_direct_lake_to_import In-place migration of a semantic model from Direct Lake mode to Import mode.
- sempy_labs
-
Updated Functions
- sempy_labs
- list_deployment_pipeline_stages parameters now accept either name or ID.
- list_deployment_pipeline_stage_items parameters now accept either name or ID. Changed parameter 'stage_name' to 'stage' as it can be either name or ID.
- sempy_labs.admin
- All 'domain' functions accept either name or ID. The parameter is now 'domain' instead of 'domain_name'.
- sempy_labs.lakehouse
- lakehouse_attached No longer uses Spark to determine if a lakehouse is attached to the notebook.
- sempy_labs
Bug Fixes
Maintenance
- Functions which query Microsoft APIs now use an internal function (in Semantic Link Labs) to reduce and simplify code.
- Functions which return pandas dataframes and specify data types have been refactored to reduce and simplify code.
Notebooks
- Delta Analyzer Shows how to use the new delta_analyzer function.
- Service Principal Added examples for using the new wrapper functions for Microsoft Graph which were released in this version.
semantic-link-labs 0.9.1
Bug Fixes
- Fixed minor critical issue with service principal authentication.
semantic-link-labs 0.9.0
Improvements
- Authentication via Service Principal is now supported for the admin and tom (connect_semantic_model) subpackages. For connect_semantic_model, Service Principal Authentication is also supported for connecting to semantic models hosted on Azure Analysis Services.
To see code examples for authenticating via Service Principal, click here.
New Functions
- sempy_labs
- Authentication
- service_principal_authentication Context manager to support Service Principal authentication.
- Capacities
- Job Scheduler
- Subscriptions
- Tenants
- Resource Groups
- Storage Accounts
- Authentication
Updated Functions
- sempy_labs
- run_model_bpa added the 'check_dependencies' parameter. Set this to False for semantic models which are in shared workspaces so that the dependencies DMV check is not done and the remainder of the BPA rules can run (#189).
- The following functions now leverage the Service Principal Authentication context manager: create_fabric_capacity, suspend_fabric_capacity, resume_fabric_capacity, delete_fabric_capacity, delete_embedded_capacity, update_fabric_capacity, check_fabric_capacity_name_availablility, create_resource_group, list_skus_for_capacity, list_skus, list_subscriptions, get_subscription, list_tenants, create_or_update_resource_group, create_storage_account, list_storage_accounts, check_resource_group_existence, list_resource_groups, get_resource_group
- sempy_labs.admin
- All relevant functions now support authentication via Service Principal.
- sempy_labs.tom
- connect_semantic_model Now supports Service Principal authentication via the service_principal_authencation context manager. This method also supports connecting to Azure Analysis Services (AAS) semantic models (simply enter the Azure AS server name in the the 'workspace' parameter and make sure to use the service principal authentication).
Dependencies
- Removed dependency on the azure.mgmt.resource python SDK. Removing this dependency will improve pip install times for Semantic Link Labs while maintaining all existing functionality.
- Updated semantic-link-sempy to 0.8.5
Removed Functionality
Important
If you are impacted by any of the aforementioned changes, please raise an issue on GitHub with your concern (and ideally your company name as well)
- The P->F sku migration capability no longer migrates capacity settings. This is due to a restriction on certain APIs which are no longer accessible.
- Getting the source of a Direct Lake semantic model (lakehouse/warehouse & workspace) now only works when the source exists in the same workspace as the semantic model. This is due to a restriction on an API which is no longer accessible.
- Getting all downstream reports from a semantic model (cross-workspace) is no longer possible. This functionality is limited to reports which are in the same workspace as the semantic model. This is due to a restriction on an API which is no longer accessible.
Bug Fixes
Notebooks
- Service Principal Contains instructions on how to use functions while authenticating via Service Principal.
- Semantic Model Management Contains instructions for backing up, copying and restoring semantic models.
semantic-link-labs 0.8.11
Improvements
-
New Functions
- sempy_labs
- Job Scheduler
- Git (the following functions replace the 'connect_workspace_to_git' function.
- sempy_labs.tom
- sempy_labs
-
Updated Functions
- sempy_labs
- Most (relevant) functions now accept dataset ID or Name; workspace ID or Name.
- sempy_labs.directlake
- Cache warming functions leverage updated DAX which yields better performance.
- sempy_labs
Bug Fixes
- #363
- #370
- Fixed list_dataflows
- Fixed get_capacity_id
- Fixed get_model_calc_dependencies issue which could result in an infinite loop.
- Fixed unqualified_columns logic.
- Fixed qualified_measures logic.
semantic-link-labs 0.8.10
Improvements
-
New Functions
- sempy_labs
- list_server_properties Shows the server properties for a given workspace.
- list_semantic_model_errors Shows if the model has any errors and their error messages.
- get_tenant_id
- bind_semantic_model_to_gateway
- sempy_labs.tom
- sempy_labs.admin
- scan_workspaces Wrapper function for the Scanner API.
- sempy_labs
-
Updated Functions
- sempy_labs
- run_model_bpa Setting 'extended=True' no longer requires annotations to be saved to the model.
- list_dashboards Bug fixed in resolving the workspace.
- run_model_bpa, get_model_calc_dependencies, refresh_semantic_model The 'dataset' parameter now takes either the name or ID of the semantic model.
- get_notebook_definition now works for any type of notebook (.py, .sql etc.)
- create_notebook Added the 'type' parameter so you can create other types of notebooks ('py, 'sql').
- sempy_labs.admin
- list_activity_events Additional columns added (#340).
- sempy_labs.directlake
- check_fallback_reason The 'dataset' parameter now takes either the name or ID of the semantic model.
- sempy_labs.tom
- TOMWrapper The 'dataset' parameter now takes either the name or ID of the semantic model. Same for connect_semantic_model.
- sempy_labs
Bug Fixes
semantic-link-labs 0.8.9
Improvements
- New Functions
- sempy_labs
- sempy_labs
- Updated Functions
- 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 now shows the Object Display Name (if it was customized within the visual).
- sempy_labs
Bug Fixes
- 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
semantic-link-labs 0.8.8
semantic-link-labs 0.8.7
Improvements
-
New Functions
- sempy_labs
- Connections
- Gateways
- Authentication
- 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 Obtains a token provider using Azure Key Vault credentials.
- ServicePrincipalTokenProvider.from_aad_application_key_authentication Obtains a token provider using Service Principal keys.
- sempy_labs.admin
- sempy_labs
-
Updated Functions
- sempy_labs
- list_connections Now supports pagination.
- initialize_git_connection Now returns commit hash. Thanks @hurtn!
- refresh_semantic_model Added 'commit_mode' parameter. Thanks @gbrueckl!
- 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 Title, SubTitle, AltText now support non-literal values (#218) Thanks @stephbruno!
- sempy_labs.admin Thanks @ecotte!
- 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 Now supports capacity name or Id.
- assign_workspaces_to_capacity Now supports workspace name or Ids.
- unassign_workspaces_from_capacity Now supports capacity name or Id.
- revoke_external_data_share Supports workspace name or Id.
- list_items Supports capacity name or Id, workspace name or Id.
- list_item_access_details Supports Item Id or name & type. Supports workspace Id or Name.
- list_activity_events Added the 'return_dataframe' parameter, allowing for returning the json dictionary output (if set to False).
- sempy_labs
Bug Fixes
- sempy_labs
semantic-link-labs 0.8.6
Bug Fixes
- #274
- #277
- sempy_labs.migration
- create_pqt_file Fixed the file naming convention when multiple pqt files are generated.
semantic-link-labs 0.8.5
Improvements
- New Functions
- sempy_labs
- DAX
- get_dax_query_dependencies Obtains the columns on which a DAX query depends, including model dependencies (inspired by Chris Webb's blog post).
- 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).
- Dataflows
- list_upstream_dataflows Thanks to Alex Powers, this shows all dataflows upstream of a given dataflow.
- Mirroring
- DAX
- sempy_labs.admin
- 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
- sempy_labs
- Updated Functions
- sempy_labs.tom
- add_calculation_group Added the 'column_name' parameter (#261).
- sempy_labs.tom
Bug Fixes
Notebooks
- Embedded videos within notebooks for easier learning.