Databricks Sdk Py Versions Save

Databricks SDK for Python (Beta)

v0.19.0

3 months ago

Improvements and Bug Fixes

  • Construct workspace client from account client (#527).
  • Enabled Databricks OAuth also for Azure and GCP (#526).
  • Do not terminate listing for token-based pagination resources on empty response (#530).
  • Renamed databricks.sdk.errors.mapping to databricks.sdk.errors.platform (#522).
  • Added Union to content (2nd) parameter in upload function (#493).
  • Fixed WorkspaceConf.get_status and WorkspaceConf.set_status (#525).

Documentation

  • Make docs useful again (#519).
  • Show undocumented fields in dataclasses (#520).

API Changes

Additions:

  • Added the following dataclasses:
    • databricks.sdk.service.catalog.CancelRefreshRequest
    • databricks.sdk.service.catalog.GetRefreshRequest
    • databricks.sdk.service.catalog.ListRefreshesRequest
    • databricks.sdk.service.catalog.MonitorRefreshInfo
    • databricks.sdk.service.catalog.MonitorRefreshInfoState
    • databricks.sdk.service.catalog.RunRefreshRequest
    • databricks.sdk.service.compute.Adlsgen2Info
    • databricks.sdk.service.compute.GcsStorageInfo
    • databricks.sdk.service.files.CreateDirectoryRequest
    • databricks.sdk.service.files.DeleteDirectoryRequest
    • databricks.sdk.service.files.DirectoryEntry
    • databricks.sdk.service.files.ListDirectoryContentsRequest
    • databricks.sdk.service.files.ListDirectoryResponse
    • databricks.sdk.service.files.PageToken
    • databricks.sdk.service.jobs.ForEachStats
    • databricks.sdk.service.jobs.ForEachTask
    • databricks.sdk.service.jobs.ForEachTaskErrorMessageStats
    • databricks.sdk.service.jobs.ForEachTaskTaskRunStats
    • databricks.sdk.service.jobs.RunForEachTask
    • databricks.sdk.service.pipelines.PipelineClusterAutoscale
    • databricks.sdk.service.pipelines.PipelineClusterAutoscaleMode
    • databricks.sdk.service.settings.DeleteDefaultNamespaceSettingRequest
    • databricks.sdk.service.settings.DeleteDefaultNamespaceSettingResponse
    • databricks.sdk.service.settings.DeleteRestrictWorkspaceAdminsSettingRequest
    • databricks.sdk.service.settings.DeleteRestrictWorkspaceAdminsSettingResponse
    • databricks.sdk.service.settings.GetDefaultNamespaceSettingRequest
    • databricks.sdk.service.settings.GetPersonalComputeSettingRequest
    • databricks.sdk.service.settings.GetRestrictWorkspaceAdminsSettingRequest
    • databricks.sdk.service.settings.RestrictWorkspaceAdminsMessage
    • databricks.sdk.service.settings.RestrictWorkspaceAdminsMessageStatus
    • databricks.sdk.service.settings.RestrictWorkspaceAdminsSetting
    • databricks.sdk.service.settings.UpdateDefaultNamespaceSettingRequest
    • databricks.sdk.service.settings.UpdateRestrictWorkspaceAdminsSettingRequest
  • Added cancel_refresh(), get_refresh(), list_refreshes() and run_refresh() method for w.lakehouse_monitors workspace-level service.
  • Added use_preemptible_executors field for databricks.sdk.service.compute.GcpAttributes.
  • Added zone_id field for databricks.sdk.service.compute.GcpAttributes.
  • Added abfss and gcs field for databricks.sdk.service.compute.InitScriptInfo.
  • Added create_directory(), delete_directory() and list_directory_contents() method for w.files workspace-level service.
  • Added source field for databricks.sdk.service.jobs.DbtTask and databricks.sdk.service.jobs.SqlTaskFile.
  • Added for_each_task field for databricks.sdk.service.jobs.RunTask, databricks.sdk.service.jobs.SubmitTask and databricks.sdk.service.jobs.Task.
  • Added field_mask field for databricks.sdk.service.settings.UpdatePersonalComputeSettingRequest.
  • Added delta_sync_index_spec field for databricks.sdk.service.vectorsearch.CreateVectorIndexRequest.
  • Added file_type field for databricks.sdk.service.workspace.ExportResponse.
  • Added resource_id field for databricks.sdk.service.workspace.ObjectInfo.
  • Added delete_default_namespace_setting(), delete_restrict_workspace_admins_setting(), get_default_namespace_setting(), get_restrict_workspace_admins_setting(), update_default_namespace_setting() and update_restrict_workspace_admins_setting() method for w.settings workspace-level service.
  • Added get_personal_compute_setting() method for a.account_settings account-level service.

Removals:

  • Removed the following dataclasses:
    • databricks.sdk.service.settings.ReadDefaultWorkspaceNamespaceRequest
    • databricks.sdk.service.settings.ReadPersonalComputeSettingRequest
    • databricks.sdk.service.settings.UpdateDefaultWorkspaceNamespaceRequest
    • databricks.sdk.service.settings.DeleteDefaultWorkspaceNamespaceRequest
    • databricks.sdk.service.settings.DeleteDefaultWorkspaceNamespaceResponse
    • databricks.sdk.service.pipelines.ResetRequest
  • Removed the following methods:
    • get_status() for w.files workspace-level service.
    • reset() for w.pipelines workspace-level service.
    • delete_default_workspace_namespace() for w.settings workspace-level service.
    • read_default_workspace_namespace() for w.settings workspace-level service.
    • update_default_workspace_namespace() for w.settings workspace-level service.
    • read_personal_compute_setting() for a.account_settings account-level service.
  • Removed name field for databricks.sdk.service.catalog.UpdateConnection, databricks.sdk.service.catalog.UpdateMetastore, databricks.sdk.service.catalog.UpdateRegisteredModelRequest. databricks.sdk.service.catalog.UpdateSchemaand databricks.sdk.service.catalog.UpdateVolumeRequestContent.
  • Removed delta_sync_vector_index_spec field for databricks.sdk.service.vectorsearch.CreateVectorIndexRequest.

Changes:

  • Changed max_workers and min_workers field for databricks.sdk.service.compute.AutoScale to no longer be required.
  • Changed destination field for databricks.sdk.service.compute.DbfsStorageInfo, databricks.sdk.service.compute.LocalFileInfo, databricks.sdk.service.compute.S3StorageInfo, databricks.sdk.service.compute.VolumesStorageInfo and databricks.sdk.service.compute.WorkspaceStorageInfo to be required.
  • Changed clients field for databricks.sdk.service.compute.WorkloadType to be required.
  • Changed allow_missing and setting field for databricks.sdk.service.settings.UpdatePersonalComputeSettingRequest to be required.
  • Changed etag field for databricks.sdk.service.settings.DeletePersonalComputeSettingRequest to no longer be required.
  • Changed autoscale field for databricks.sdk.service.pipelines.PipelineCluster to databricks.sdk.service.pipelines.PipelineClusterAutoscale dataclass.
  • Changed delete_personal_compute_setting() and update_personal_compute_setting() method for a.account_settings account-level service with new required argument order.

Internal Changes

  • Generate SDK (#536).
  • Use fake clock for faster unit tests (#533).
  • Skip test_get_workspace_client in Azure and GCP (#531).
  • Regenerate from the tip of main (#524).
  • Search for both databricks.exe and databricks binaries in windows (#517).

OpenAPI SHA: 6b897bc95b23abed8b9f5eff0e6b8ec034046180, Date: 2024-02-08

v0.18.0

4 months ago

Bugfixes:

  • Fix Databricks OAuth M2M on Azure (#513).

Other noteworthy changes:

  • Use [] instead of None as default list value for deserialising responses (#361).
  • Support dev and staging workspaces (#514).

API Changes:

  • Added exists() method for w.tables workspace-level service.
  • Added w.lakehouse_monitors workspace-level service.
  • Added the following dataclasses: databricks.sdk.service.catalog.CreateMonitor, databricks.sdk.service.catalog.DeleteLakehouseMonitorRequest, databricks.sdk.service.catalog.ExistsRequest, databricks.sdk.service.catalog.GetLakehouseMonitorRequest, databricks.sdk.service.catalog.MonitorCronSchedule, databricks.sdk.service.catalog.MonitorCronSchedulePauseStatus, databricks.sdk.service.catalog.MonitorCustomMetric, databricks.sdk.service.catalog.MonitorCustomMetricType, databricks.sdk.service.catalog.MonitorDataClassificationConfig, databricks.sdk.service.catalog.MonitorDestinations, databricks.sdk.service.catalog.MonitorInferenceLogProfileType,
    databricks.sdk.service.catalog.MonitorInferenceLogProfileTypeProblemType, databricks.sdk.service.catalog.MonitorInfo, databricks.sdk.service.catalog.MonitorInfoStatus, databricks.sdk.service.catalog.MonitorNotificationsConfig, databricks.sdk.service.catalog.MonitorTimeSeriesProfileType, databricks.sdk.service.catalog.TableExistsResponse and databricks.sdk.service.catalog.UpdateMonitor.
  • Changed create_obo_token() method for w.token_management workspace-level service with new required argument order.
  • Changed get() method for w.token_management workspace-level service to return databricks.sdk.service.settings.GetTokenResponse dataclass.
  • Changed lifetime_seconds field for databricks.sdk.service.settings.CreateOboTokenRequest to no longer be required.
  • Added databricks.sdk.service.settings.GetTokenResponse dataclass.

OpenAPI SHA: e05401ed5dd4974c5333d737ec308a7d451f749f, Date: 2024-01-23

v0.17.0

4 months ago
  • Use covariant type for @retried(on=[...]) (#486).
  • Configure request timeout using existing parameter from Config (#489).
  • Make contents of __init__.py equal across projects (#488).
  • Update SDK to Latest OpenAPI Specification (#501).

Note: This release contains breaking changes, please see below for more details.

API Changes:

  • [Breaking] Changed list() method for w.tokens workspace-level service to return databricks.sdk.service.settings.ListPublicTokensResponse dataclass.
  • Changed list() method for w.external_locations workspace-level service to require request of databricks.sdk.service.catalog.ListExternalLocationsRequest dataclass and w.storage_credentials workspace-level service to require request of databricks.sdk.service.catalog.ListStorageCredentialsRequest dataclass.
  • Added next_page_token field for databricks.sdk.service.catalog.ListExternalLocationsResponse, databricks.sdk.service.catalog.ListFunctionsResponse, databricks.sdk.service.catalog.ListSchemasResponse and databricks.sdk.service.catalog.ListStorageCredentialsResponse.
  • Added max_results field for databricks.sdk.service.catalog.ListFunctionsRequest and databricks.sdk.service.catalog.ListSchemasRequest.
  • Added page_token field for databricks.sdk.service.catalog.ListFunctionsRequest and databricks.sdk.service.catalog.ListSchemasRequest.
  • Added omit_columns field for databricks.sdk.service.catalog.ListTablesRequest.
  • Added omit_properties field for databricks.sdk.service.catalog.ListTablesRequest.
  • Added init_scripts field for databricks.sdk.service.pipelines.PipelineCluster.
  • Added validate_only field for databricks.sdk.service.pipelines.StartUpdate and databricks.sdk.service.pipelines.UpdateInfo.
  • Changed create() method for w.dashboards workspace-level service . New request type is databricks.sdk.service.sql.DashboardPostContent dataclass.
  • Added update() method for w.dashboards workspace-level service.
  • Added http_headers field for databricks.sdk.service.sql.ExternalLink.
  • Added run_as_role field for databricks.sdk.service.sql.QueryEditContent.
  • Added package: databricks.sdk.service.dashboards and databricks.sdk.service.vectorsearch.
  • Added dataclass: databricks.sdk.service.catalog.ListExternalLocationsRequest, databricks.sdk.service.catalog.ListStorageCredentialsRequest, databricks.sdk.service.settings.ListPublicTokensResponse, databricks.sdk.service.sql.DashboardEditContent and databricks.sdk.service.sql.DashboardPostContent.
  • Removed dataclass: databricks.sdk.service.catalog.TableConstraintList and databricks.sdk.service.sql.CreateDashboardRequest.

OpenAPI SHA: 0e0d4cbe87193e36c73b8b2be3b0dd0f1b013e00, Date: 2024-01-10

v0.16.0

5 months ago
  • Sort imports in service template (#479).
  • Add py.typed to support PEP-561 (#483).
  • Fixed bug in @retried when exception subtypes were not respected (#484).
  • Make WorkspaceClient and AccountClient more friendly with autospeccing (#480).

API Changes:

  • Added azure_workspace_info field for databricks.sdk.service.provisioning.Workspace.
  • Added databricks.sdk.service.provisioning.AzureWorkspaceInfo dataclass.
  • Changed update_config() method for w.serving_endpoints workspace-level service with new required argument order.
  • Changed served_entities field for databricks.sdk.service.serving.EndpointCoreConfigInput to no longer be required.
  • Changed create() method for a.account_ip_access_lists account-level service with new required argument order.
  • Changed replace() method for a.account_ip_access_lists account-level service with new required argument order.
  • Changed update() method for a.account_ip_access_lists account-level service with new required argument order.
  • Changed create() method for w.ip_access_lists workspace-level service with new required argument order.
  • Changed replace() method for w.ip_access_lists workspace-level service with new required argument order.
  • Changed update() method for w.ip_access_lists workspace-level service with new required argument order.
  • Changed ip_addresses field for databricks.sdk.service.settings.CreateIpAccessList to no longer be required.
  • Changed ip_addresses field for databricks.sdk.service.settings.ReplaceIpAccessList to no longer be required.
  • Removed list_id field for databricks.sdk.service.settings.ReplaceIpAccessList.
  • Changed enabled field for databricks.sdk.service.settings.UpdateIpAccessList to no longer be required.
  • Changed ip_addresses field for databricks.sdk.service.settings.UpdateIpAccessList to no longer be required.
  • Changed label field for databricks.sdk.service.settings.UpdateIpAccessList to no longer be required.
  • Removed list_id field for databricks.sdk.service.settings.UpdateIpAccessList.
  • Changed list_type field for databricks.sdk.service.settings.UpdateIpAccessList to no longer be required.

OpenAPI SHA: d3853c8dee5806d04da2ae8910f273ffb35719a5, Date: 2023-12-14

v0.15.0

5 months ago

Bugfixes:

  • Fixed accidental rename (#471).
  • Fixed parsing of ISO date strings (#473).

Other changes:

  • Updated GCP OAuth Readme (#464).
  • Reference Documentation Refactoring (#467).
  • Installed local library when generating docs (#469).
  • Fixed readme links in pypi (#472).
  • Updated a note for installing Python SDK on Databricks Runtime 13.1+ (#474).
  • Updated GCP auth readme (#470).

API Changes:

  • Changed update() method for w.connections workspace-level service with new required argument order.
  • Added cloudflare_api_token field for databricks.sdk.service.catalog.CreateStorageCredential.
  • Added cloudflare_api_token field for databricks.sdk.service.catalog.StorageCredentialInfo.
  • Changed name field for databricks.sdk.service.catalog.UpdateCatalog to be required.
  • Added new_name field for databricks.sdk.service.catalog.UpdateCatalog.
  • Changed name field for databricks.sdk.service.catalog.UpdateConnection to no longer be required.
  • Added new_name field for databricks.sdk.service.catalog.UpdateConnection.
  • Changed name field for databricks.sdk.service.catalog.UpdateExternalLocation to be required.
  • Added new_name field for databricks.sdk.service.catalog.UpdateExternalLocation.
  • Added new_name field for databricks.sdk.service.catalog.UpdateMetastore.
  • Added new_name field for databricks.sdk.service.catalog.UpdateRegisteredModelRequest.
  • Added new_name field for databricks.sdk.service.catalog.UpdateSchema.
  • Changed name field for databricks.sdk.service.catalog.UpdateStorageCredential to be required.
  • Added cloudflare_api_token field for databricks.sdk.service.catalog.UpdateStorageCredential.
  • Added new_name field for databricks.sdk.service.catalog.UpdateStorageCredential.
  • Added new_name field for databricks.sdk.service.catalog.UpdateVolumeRequestContent.
  • Added cloudflare_api_token field for databricks.sdk.service.catalog.ValidateStorageCredential.
  • Added databricks.sdk.service.catalog.CloudflareApiToken dataclass.
  • Removed continuous field for databricks.sdk.service.jobs.BaseRun.
  • Removed continuous field for databricks.sdk.service.jobs.Run.
  • Changed job_parameters field for databricks.sdk.service.jobs.RunJobTask to databricks.sdk.service.jobs.ParamPairs dataclass.
  • Added run_if field for databricks.sdk.service.jobs.SubmitTask.
  • Added run_job_task field for databricks.sdk.service.jobs.SubmitTask.
  • Changed update_config() method for w.serving_endpoints workspace-level service with new required argument order.
  • Added put() method for w.serving_endpoints workspace-level service.
  • Added rate_limits field for databricks.sdk.service.serving.CreateServingEndpoint.
  • Changed served_models field for databricks.sdk.service.serving.EndpointCoreConfigInput to no longer be required.
  • Added auto_capture_config field for databricks.sdk.service.serving.EndpointCoreConfigInput.
  • Added served_entities field for databricks.sdk.service.serving.EndpointCoreConfigInput.
  • Added auto_capture_config field for databricks.sdk.service.serving.EndpointCoreConfigOutput.
  • Added served_entities field for databricks.sdk.service.serving.EndpointCoreConfigOutput.
  • Added served_entities field for databricks.sdk.service.serving.EndpointCoreConfigSummary.
  • Added served_entities field for databricks.sdk.service.serving.EndpointPendingConfig.
  • Added extra_params field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added input field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added max_tokens field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added messages field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added n field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added prompt field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added stop field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added stream field for databricks.sdk.service.serving.QueryEndpointInput.
  • Added temperature field for databricks.sdk.service.serving.QueryEndpointInput.
  • Changed predictions field for databricks.sdk.service.serving.QueryEndpointResponse to no longer be required.
  • Added choices field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added created field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added data field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added id field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added model field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added object field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Added usage field for databricks.sdk.service.serving.QueryEndpointResponse.
  • Changed workload_size field for databricks.sdk.service.serving.ServedModelInput to databricks.sdk.service.serving.ServedModelInputWorkloadSize dataclass.
  • Changed workload_type field for databricks.sdk.service.serving.ServedModelInput to databricks.sdk.service.serving.ServedModelInputWorkloadType dataclass.
  • Added task field for databricks.sdk.service.serving.ServingEndpoint.
  • Added task field for databricks.sdk.service.serving.ServingEndpointDetailed.
  • Added databricks.sdk.service.serving.Ai21LabsConfig dataclass.
  • Added databricks.sdk.service.serving.AnthropicConfig dataclass.
  • Added databricks.sdk.service.serving.AutoCaptureConfigInput dataclass.
  • Added databricks.sdk.service.serving.AutoCaptureConfigOutput dataclass.
  • Added databricks.sdk.service.serving.AutoCaptureState dataclass.
  • Added databricks.sdk.service.serving.AwsBedrockConfig dataclass.
  • Added databricks.sdk.service.serving.AwsBedrockConfigBedrockProvider dataclass.
  • Added databricks.sdk.service.serving.ChatMessage dataclass.
  • Added databricks.sdk.service.serving.ChatMessageRole dataclass.
  • Added databricks.sdk.service.serving.CohereConfig dataclass.
  • Added databricks.sdk.service.serving.DatabricksModelServingConfig dataclass.
  • Added databricks.sdk.service.serving.EmbeddingsV1ResponseEmbeddingElement dataclass.
  • Added databricks.sdk.service.serving.EmbeddingsV1ResponseEmbeddingElementObject dataclass.
  • Added databricks.sdk.service.serving.ExternalModel dataclass.
  • Added databricks.sdk.service.serving.ExternalModelConfig dataclass.
  • Added databricks.sdk.service.serving.ExternalModelProvider dataclass.
  • Added databricks.sdk.service.serving.ExternalModelUsageElement dataclass.
  • Added databricks.sdk.service.serving.FoundationModel dataclass.
  • Added databricks.sdk.service.serving.OpenAiConfig dataclass.
  • Added databricks.sdk.service.serving.PaLmConfig dataclass.
  • Added databricks.sdk.service.serving.PayloadTable dataclass.
  • Added databricks.sdk.service.serving.PutRequest dataclass.
  • Added databricks.sdk.service.serving.PutResponse dataclass.
  • Added databricks.sdk.service.serving.QueryEndpointResponseObject dataclass.
  • Added databricks.sdk.service.serving.RateLimit dataclass.
  • Added databricks.sdk.service.serving.RateLimitKey dataclass.
  • Added databricks.sdk.service.serving.RateLimitRenewalPeriod dataclass.
  • Added databricks.sdk.service.serving.ServedEntityInput dataclass.
  • Added databricks.sdk.service.serving.ServedEntityOutput dataclass.
  • Added databricks.sdk.service.serving.ServedEntitySpec dataclass.
  • Added databricks.sdk.service.serving.ServedModelInputWorkloadSize dataclass.
  • Added databricks.sdk.service.serving.ServedModelInputWorkloadType dataclass.
  • Added databricks.sdk.service.serving.V1ResponseChoiceElement dataclass.
  • Removed a.account_network_policy account-level service.
  • Removed databricks.sdk.service.settings.AccountNetworkPolicyMessage dataclass.
  • Removed databricks.sdk.service.settings.DeleteAccountNetworkPolicyRequest dataclass.
  • Removed databricks.sdk.service.settings.DeleteAccountNetworkPolicyResponse dataclass.
  • Removed databricks.sdk.service.settings.ReadAccountNetworkPolicyRequest dataclass.
  • Removed databricks.sdk.service.settings.UpdateAccountNetworkPolicyRequest dataclass.
  • Removed name field for databricks.sdk.service.sharing.UpdateCleanRoom.
  • Changed name field for databricks.sdk.service.sharing.UpdateProvider to be required.
  • Added new_name field for databricks.sdk.service.sharing.UpdateProvider.
  • Changed name field for databricks.sdk.service.sharing.UpdateRecipient to be required.
  • Added new_name field for databricks.sdk.service.sharing.UpdateRecipient.
  • Changed name field for databricks.sdk.service.sharing.UpdateShare to be required.
  • Added new_name field for databricks.sdk.service.sharing.UpdateShare.
  • Added statement_ids field for databricks.sdk.service.sql.QueryFilter.
  • Added databricks.sdk.service.sql.StatementId dataclass.

OpenAPI SHA: 63caa3cb0c05045e81d3dcf2451fa990d8670f36, Date: 2023-12-12

v0.14.0

6 months ago

Major changes:

  • GCP Auth is now supported in the Python SDK. To use Google credentials-based authentication, specify your Default Application Credentials in the GOOGLE_CREDENTIALS environment variable or corresponding google_credentials parameter in Config or the client constructors. You may provide either the path to the file containing your credentials or the credentials themselves serialized as JSON. To use Google impersonation, specify the service principal to impersonate in the DATABRICKS_GOOGLE_SERVICE_ACCOUNT environment variable or the corresponding google_service_account parameter in Config or the client constructors. See #444 for the changes.

Bug fixes:

  • Fix flask app example (#445).
  • Fix deserialization of repeated enums (#450, #452).
  • Capture stdout and stderr separately when calling Azure CLI (#460).

Other changes:

  • Change the name of retries logger to databricks.sdk.retries (#453).

API Changes:

  • Added pipeline_id field for databricks.sdk.service.catalog.TableInfo.
  • Added enable_predictive_optimization field for databricks.sdk.service.catalog.UpdateCatalog and databricks.sdk.service.catalog.UpdateSchema.
  • Removed databricks.sdk.service.catalog.UpdatePredictiveOptimization and databricks.sdk.service.catalog.UpdatePredictiveOptimizationResponse dataclasses.
  • Removed enable_optimization() method for w.metastores workspace-level service.
  • Added description field for databricks.sdk.service.jobs.CreateJob and databricks.sdk.service.jobs.JobSettings.
  • Added list_network_connectivity_configurations() and list_private_endpoint_rules() methods for a.network_connectivity account-level service.
  • Added databricks.sdk.service.settings.ListNccAzurePrivateEndpointRulesResponse, databricks.sdk.service.settings.ListNetworkConnectivityConfigurationsRequest, databricks.sdk.service.settings.ListNetworkConnectivityConfigurationsResponse, and databricks.sdk.service.settings.ListPrivateEndpointRulesRequest dataclasses.

Internal changes:

  • Make ucws tests skipped when DATABRICKS_ACCOUNT_ID is present (#448).

OpenAPI SHA: 22f09783eb8a84d52026f856be3b2068f9498db3, Date: 2023-11-23 Dependency updates:

  • Introduced "google-auth" dependency to support Google authentication.

v0.13.0

6 months ago
  • Introduce more specific exceptions, like NotFound, AlreadyExists, BadRequest, PermissionDenied, InternalError, and others (#376). This makes it easier to handle errors thrown by the Databricks API. Instead of catching DatabricksError and checking the error_code field, you can catch one of these subtypes of DatabricksError, which is more ergonomic and removes the need to rethrow exceptions that you don't want to catch. For example:
try:
  return (self._ws
    .permissions
    .get(object_type, object_id))
except DatabricksError as e:
  if e.error_code in [
    "RESOURCE_DOES_NOT_EXIST",
    "RESOURCE_NOT_FOUND",
    "PERMISSION_DENIED",
    "FEATURE_DISABLED",
    "BAD_REQUEST"]:
    logger.warning(...)
    return None
  raise RetryableError(...) from e

can be replaced with

try:
  return (self._ws
    .permissions
    .get(object_type, object_id))
except PermissionDenied, FeatureDisabled:
  logger.warning(...)
  return None
except NotFound:
  raise RetryableError(...)
  • Paginate all SCIM list requests in the SDK (#440). This change ensures that SCIM list() APIs use a default limit of 100 resources, leveraging SCIM's offset + limit pagination to batch requests to the Databricks API.
  • Added taskValues support in remoteDbUtils (#406).
  • Added more detailed error message on default credentials not found error (#419).
  • Request management token via Azure CLI only for Service Principals and not human users (#408).

API Changes:

  • Fixed create() method for w.functions workspace-level service and corresponding databricks.sdk.service.catalog.CreateFunction and databricks.sdk.service.catalog.FunctionInfo dataclasses.
  • Changed create() method for w.metastores workspace-level service with new required argument order.
  • Changed storage_root field for databricks.sdk.service.catalog.CreateMetastore to be optional.
  • Added skip_validation field for databricks.sdk.service.catalog.UpdateExternalLocation.
  • Added libraries field for databricks.sdk.service.compute.CreatePolicy, databricks.sdk.service.compute.EditPolicy and databricks.sdk.service.compute.Policy.
  • Added init_scripts field for databricks.sdk.service.compute.EventDetails.
  • Added file field for databricks.sdk.service.compute.InitScriptInfo.
  • Added zone_id field for databricks.sdk.service.compute.InstancePoolGcpAttributes.
  • Added several dataclasses related to init scripts.
  • Added databricks.sdk.service.compute.LocalFileInfo dataclass.
  • Replaced ui_state field with edit_mode for databricks.sdk.service.jobs.CreateJob and databricks.sdk.service.jobs.JobSettings.
  • Replaced databricks.sdk.service.jobs.CreateJobUiState dataclass with databricks.sdk.service.jobs.CreateJobEditMode.
  • Added include_resolved_values field for databricks.sdk.service.jobs.GetRunRequest.
  • Replaced databricks.sdk.service.jobs.JobSettingsUiState dataclass with databricks.sdk.service.jobs.JobSettingsEditMode.
  • Removed a.o_auth_enrollment account-level service. This was only used to aid in OAuth enablement during the public preview of OAuth. OAuth is now enabled for all AWS E2 accounts, so usage of this API is no longer needed.
  • Added network_connectivity_config_id field for databricks.sdk.service.provisioning.UpdateWorkspaceRequest.
  • Added a.network_connectivity account-level service.
  • Added string_shared_as field for databricks.sdk.service.sharing.SharedDataObject.

Internal changes:

  • Added regression question to issue template (#414).
  • Made test_auth no longer fail if you have a default profile setup (#426).

OpenAPI SHA: d136ad0541f036372601bad9a4382db06c3c912d, Date: 2023-11-14

v0.12.0

7 months ago
  • Retry on all 429 and 503, even when missing Retry-After header (#402).
  • Add support for tokenless authentication for GitHub Actions configured with OpenID Connect with Azure User Managed Identity (or Service Principal) (#385).
  • Reduce redundant warning messages in azure-cli credential provider (#410).

API Changes:

  • Added attributes, count, excluded_attributes, filter, sort_by, sort_order, and start_index fields for databricks.sdk.service.iam.GetAccountUserRequest and databricks.sdk.service.iam.GetUserRequest.
  • Added schemas field for databricks.sdk.service.iam.Group, databricks.sdk.service.iam.ListGroupsResponse, databricks.sdk.service.iam.ListServicePrincipalResponse, databricks.sdk.service.iam.ListUsersResponse, databricks.sdk.service.iam.ServicePrincipal, and databricks.sdk.service.iam.User.
  • Added databricks.sdk.service.iam.GetSortOrder, databricks.sdk.service.iam.GroupSchema, databricks.sdk.service.iam.ListResponseSchema, databricks.sdk.service.iam.ServicePrincipalSchema, and databricks.sdk.service.iam.UserSchema dataclasses.
  • Added webhook_notifications field for databricks.sdk.service.jobs.SubmitTask.
  • Added w.apps workspace-level service and related dataclasses
  • Added a.account_network_policy account-level service and related dataclasses.

OpenAPI SHA: 5903bb39137fd76ac384b2044e425f9c56840e00, Date: 2023-10-23

v0.11.0

7 months ago
  • Added Python 3.12 to project classifiers (#381).
  • Fix serialization issues for generated resources (#382).
  • Fix select spark version in staging (#388).
  • Adjust token expiry window to 40 seconds because of Azure (#392).
  • Add retries on RPC token bucket limit has been exceeded (#395).
  • Regenerate to fix template drift (#398).
  • Update OpenAPI spec to 12 Oct 2023 (#399).

Internal:

  • GitHub OIDC publishing (#386).
  • Move Release Pipeline to OIDC (#387).

API Changes:

  • Changed download() method for a.billable_usage account-level service to start returning databricks.sdk.service.billing.DownloadResponse dataclass.
  • Added databricks.sdk.service.billing.DownloadResponse dataclass.
  • Changed delete() method for a.account_storage_credentials account-level service with new required argument order.
  • Changed get() method for a.account_storage_credentials account-level service with new required argument order.
  • Changed update() method for a.account_storage_credentials account-level service with new required argument order.
  • Added get_bindings() method for w.workspace_bindings workspace-level service.
  • Added update_bindings() method for w.workspace_bindings workspace-level service.
  • Removed name field for databricks.sdk.service.catalog.AccountsUpdateStorageCredential.
  • Added storage_credential_name field for databricks.sdk.service.catalog.AccountsUpdateStorageCredential.
  • Removed name field for databricks.sdk.service.catalog.DeleteAccountStorageCredentialRequest.
  • Added storage_credential_name field for databricks.sdk.service.catalog.DeleteAccountStorageCredentialRequest.
  • Removed name field for databricks.sdk.service.catalog.GetAccountStorageCredentialRequest.
  • Added storage_credential_name field for databricks.sdk.service.catalog.GetAccountStorageCredentialRequest.
  • Added owner field for databricks.sdk.service.catalog.UpdateConnection.
  • Added databricks.sdk.service.catalog.GetBindingsRequest dataclass.
  • Added databricks.sdk.service.catalog.UpdateWorkspaceBindingsParameters dataclass.
  • Added databricks.sdk.service.catalog.WorkspaceBinding dataclass.
  • Added databricks.sdk.service.catalog.WorkspaceBindingBindingType dataclass.
  • Added databricks.sdk.service.catalog.WorkspaceBindingsResponse dataclass.
  • Added spec field for databricks.sdk.service.compute.ClusterDetails.
  • Added apply_policy_default_values field for databricks.sdk.service.compute.ClusterSpec.
  • Removed aws_attributes field for databricks.sdk.service.compute.EditInstancePool.
  • Removed azure_attributes field for databricks.sdk.service.compute.EditInstancePool.
  • Removed disk_spec field for databricks.sdk.service.compute.EditInstancePool.
  • Removed enable_elastic_disk field for databricks.sdk.service.compute.EditInstancePool.
  • Removed gcp_attributes field for databricks.sdk.service.compute.EditInstancePool.
  • Removed preloaded_docker_images field for databricks.sdk.service.compute.EditInstancePool.
  • Removed preloaded_spark_versions field for databricks.sdk.service.compute.EditInstancePool.
  • Added deployment field for databricks.sdk.service.jobs.CreateJob.
  • Added ui_state field for databricks.sdk.service.jobs.CreateJob.
  • Added deployment field for databricks.sdk.service.jobs.JobSettings.
  • Added ui_state field for databricks.sdk.service.jobs.JobSettings.
  • Removed condition_task field for databricks.sdk.service.jobs.RunOutput.
  • Added webhook_notifications field for databricks.sdk.service.jobs.Task.
  • Added databricks.sdk.service.jobs.CreateJobUiState dataclass.
  • Added databricks.sdk.service.jobs.JobDeployment dataclass.
  • Added databricks.sdk.service.jobs.JobDeploymentKind dataclass.
  • Added databricks.sdk.service.jobs.JobSettingsUiState dataclass.
  • Added workload_type field for databricks.sdk.service.serving.ServedModelInput.
  • Added workload_type field for databricks.sdk.service.serving.ServedModelOutput.
  • Removed a.account_network_policy account-level service.
  • Changed list() method for w.ip_access_lists workspace-level service to return databricks.sdk.service.settings.ListIpAccessListResponse dataclass.
  • Removed databricks.sdk.service.settings.AccountNetworkPolicyMessage dataclass.
  • Removed databricks.sdk.service.settings.DeleteAccountNetworkPolicyRequest dataclass.
  • Removed databricks.sdk.service.settings.DeleteAccountNetworkPolicyResponse dataclass.
  • Removed ip_access_lists field for databricks.sdk.service.settings.GetIpAccessListResponse.
  • Added ip_access_list field for databricks.sdk.service.settings.GetIpAccessListResponse.
  • Removed databricks.sdk.service.settings.ReadAccountNetworkPolicyRequest dataclass.
  • Removed databricks.sdk.service.settings.UpdateAccountNetworkPolicyRequest dataclass.
  • Added databricks.sdk.service.settings.ListIpAccessListResponse dataclass.

OpenAPI SHA: 493a76554afd3afdd15dc858773d01643f80352a, Date: 2023-10-12

v0.10.0

7 months ago
  • Respect retry_timeout_seconds config setting and align retry implementation with Go SDK (#337).

Breaking API Changes:

  • Changed list() method for a.account_metastore_assignments account-level service to return databricks.sdk.service.catalog.ListAccountMetastoreAssignmentsResponse dataclass.
  • Removed owner field for databricks.sdk.service.catalog.CreateConnection. Instead, use the owner field of UpdateConnection.
  • Removed options field for databricks.sdk.service.catalog.UpdateCatalog.
  • Changed job_parameters field for databricks.sdk.service.jobs.RunNow to databricks.sdk.service.jobs.ParamPairs dataclass.
  • Changed query() method for w.serving_endpoints workspace-level service . New request type is databricks.sdk.service.serving.QueryEndpointInput dataclass.
  • Renamed databricks.sdk.service.serving.QueryRequest dataclass to QueryEndpointInput.
  • Changed list() method for w.clean_rooms workspace-level service to require request of databricks.sdk.service.sharing.ListCleanRoomsRequest dataclass.

API Changes:

  • Added databricks.sdk.service.catalog.ListAccountMetastoreAssignmentsResponse dataclass.
  • Added job_parameters field for databricks.sdk.service.jobs.RepairRun.
  • Added job_parameters field for databricks.sdk.service.jobs.RunParameters.
  • Added notifications field for databricks.sdk.service.pipelines.CreatePipeline.
  • Added notifications field for databricks.sdk.service.pipelines.EditPipeline.
  • Added notifications field for databricks.sdk.service.pipelines.PipelineSpec.
  • Added databricks.sdk.service.pipelines.Notifications dataclass.
  • Added databricks.sdk.service.serving.DataframeSplitInput dataclass.
  • Added w.settings workspace-level service.
  • Added databricks.sdk.service.settings.DefaultNamespaceSetting dataclass.
  • Added databricks.sdk.service.settings.DeleteDefaultWorkspaceNamespaceRequest dataclass.
  • Added databricks.sdk.service.settings.DeleteDefaultWorkspaceNamespaceResponse dataclass.
  • Added databricks.sdk.service.settings.ReadDefaultWorkspaceNamespaceRequest dataclass.
  • Added databricks.sdk.service.settings.StringMessage dataclass.
  • Added databricks.sdk.service.settings.UpdateDefaultWorkspaceNamespaceRequest dataclass.
  • Added next_page_token field for databricks.sdk.service.sharing.ListCleanRoomsResponse.
  • Added databricks.sdk.service.sharing.ListCleanRoomsRequest dataclass.

OpenAPI SHA: bcbf6e851e3d82fd910940910dd31c10c059746c, Date: 2023-10-02