Databricks SDK for Python v0.117.0
Databricks SDK for Python version 0.117.0 introduces new fields for Synced Tables and makes a breaking change to the `resource_id` field in `Operation`. It also includes significant bug fixes for token caching and lazy initialization of `WorkspaceClient.dbutils` to improve performance and stability, particularly in Spark Connect environments. The release also declares `urllib3` as an explicit dependency.
- →Change resource_id field for databricks.sdk.service.bundledeployments.Operation to no longer be required
- →Add type_overrides field for databricks.sdk.service.database.SyncedTableSpec
- →Add type_overrides field for databricks.sdk.service.postgres.SyncedTableSyncedTableSpec
Breaking changes (1) ›
- Change resource_id field for databricks.sdk.service.bundledeployments.Operation to no longer be required
Enhancements (3) ›
- Add type_overrides field for databricks.sdk.service.database.SyncedTableSpec
- Add type_overrides field for databricks.sdk.service.postgres.SyncedTableSyncedTableSpec
- Change resource_id field for databricks.sdk.service.bundledeployments.Operation to no longer be required
Fixes (3) ›
Cache tokens minted by DatabricksOidcTokenSource (Workload Identity Federation / account-wide token federation). Previously a fresh /oidc/v1/token exchange was performed on every authenticated API call, adding latency, amplifying transient federation-policy errors, and hitting OIDC token-endpoint rate limits. The token source now reuses the cached token until it is stale or expired, fetching a fresh ID token on each refresh to support rotation
Make WorkspaceClient.dbutils lazy (functools.cached_property). The constructor no longer imports databricks.sdk.runtime eagerly, so on Spark Connect (shared-access-mode) clusters, consumers that never read .dbutils — such as dbt-databricks Python models — no longer crash with CONTEXT_UNAVAILABLE_FOR_REMOTE_CLIENT during client construction
Fall back to the remote runtime implementation when the legacy user namespace cannot be materialized. On Spark Connect runtimes (e.g. shared-access-mode clusters), importing databricks.sdk.runtime — which happens when constructing a WorkspaceClient on such a cluster — tried to build a legacy SparkContext and raised CONTEXT_UNAVAILABLE_FOR_REMOTE_CLIENT at import time. It now logs a warning and falls back to the Spark Connect-compatible remote implementation instead of crashing
Maintenance (1) ›
Declare urllib3 as an explicit dependency. The SDK imports it directly; previously it was only available transitively through requests. No resolution change for users
https://github.com/databricks/databricks-sdk-py/releases/tag/v0.117.0
Related releases
- Building an AI-Forward Healthcare Organization on Data and Governance Databricks Blog ·
- Databricks Accelerates Agentic Media Buying with New Reference Implementation Databricks Blog ·
- NBCUniversal Migrates to Databricks Lakehouse for Scalable Analytics Databricks Blog ·
- Databricks SDK for Python v0.123.0: API changes and breaking updates Databricks Python SDK Releases ·
- Databricks Go SDK v0.167.0 Adds Cloud Provider Auth Fields Databricks Go SDK Releases ·
- Databricks SDK Java v0.138.0 Adds Model Provider Config Fields Databricks Java SDK Releases ·