Version changelog

July 30, 2026 ยท View on GitHub

Release v0.167.0 (2026-07-30)

API Changes

Release v0.166.0 (2026-07-29)

API Changes

Release v0.165.0 (2026-07-28)

API Changes

Release v0.164.0 (2026-07-27)

API Changes

Release v0.163.0 (2026-07-23)

API Changes

Release v0.162.0 (2026-07-22)

API Changes

Release v0.161.0 (2026-07-21)

API Changes

  • Add PerformanceTarget field for jobs.SubmitRun.
  • Add DataframeSchema and TransformationSql fields for ml.StreamSource.
  • Add Sawtooth field for ml.TimeWindow.
  • Add EffectiveTablePrefix field for ml.UcTraceLocation.
  • Add AwsVpcEndpointInfo and GcpPscEndpointInfo fields for networking.Endpoint.
  • Add RedditAdsOptions field for pipelines.ConnectorOptions.
  • Add TableNames and TelemetryProfileId fields for serving.TelemetryConfig.
  • Add GitCliEnabled field for workspace.GetRepoResponse.
  • Add KsaEccCccDcc enum value for settings.ComplianceStandard.
  • [Breaking] Change CreateWorkspaceAssignmentDetail, DeleteWorkspaceAssignmentDetail, GetWorkspaceAccessDetail, GetWorkspaceAssignmentDetail, ListWorkspaceAssignmentDetails, ResolveGroup, ResolveServicePrincipal, ResolveUser and UpdateWorkspaceAssignmentDetail methods for a.AccountIamV2 account-level service. Method path has changed.
  • [Breaking] Change CreateWorkspaceAssignmentDetailProxy, DeleteWorkspaceAssignmentDetailProxy, GetWorkspaceAccessDetailLocal, GetWorkspaceAssignmentDetailProxy, ListWorkspaceAssignmentDetailsProxy, ResolveGroupProxy, ResolveServicePrincipalProxy, ResolveUserProxy and UpdateWorkspaceAssignmentDetailProxy methods for w.WorkspaceIamV2 workspace-level service. Method path has changed.
  • [Breaking] Change WindowDuration field for ml.RollingWindow to no longer be required.
  • Change WindowDuration field for ml.RollingWindow to no longer be required.
  • Change WindowDuration field for ml.SlidingWindow to no longer be required.
  • [Breaking] Change WindowDuration field for ml.SlidingWindow to no longer be required.
  • [Breaking] Remove LongRolling field for ml.TimeWindow.

Release v0.160.0 (2026-07-16)

API Changes

Release v0.159.0 (2026-07-15)

API Changes

Release v0.158.0 (2026-07-14)

API Changes

Release v0.157.0 (2026-07-13)

API Changes

Release v0.156.0 (2026-07-09)

API Changes

Release v0.155.0 (2026-07-08)

API Changes

Release v0.154.0 (2026-07-07)

API Changes

Release v0.153.0 (2026-07-06)

API Changes

Release v0.152.0 (2026-06-29)

Breaking Changes

  • Query parameters listed in ForceSendFields are now sent on the wire when they hold a zero value. Previously ForceSendFields had no effect on query parameters (only JSON body fields were honored), so such a parameter was silently omitted; it is now serialized with its explicit value (for example cascade=false). Callers that unknowingly relied on the previous no-op behavior will now send the parameter.

Bug Fixes

  • Honor ForceSendFields for query parameters, including fields nested inside request sub-structs. A zero-valued scalar field (for example a false bool such as cascade on the pipelines Delete request) listed in ForceSendFields is now sent on the wire instead of being dropped by the url tag's omitempty, matching the existing behavior for JSON request bodies.

API Changes

Release v0.151.0 (2026-06-25)

API Changes

Release v0.150.0 (2026-06-24)

Bug Fixes

  • Deduplicate identical key/value pairs in the user agent builder (useragent), so repeatedly injecting the same dimension onto a reused context.Context no longer grows the User-Agent header without bound. Distinct values for the same key are still preserved.

API Changes

Release v0.149.0 (2026-06-23)

API Changes

Release v0.148.0 (2026-06-22)

New Features and Improvements

  • Added a meta-harness user-agent dimension that reports the omnigent meta-harness (detected via the OMNIGENT environment variable) independently of agent detection.

API Changes

Release v0.147.0 (2026-06-17)

API Changes

Release v0.146.0 (2026-06-16)

API Changes

  • Add CreateDataApi, DeleteDataApi, GetDataApi and UpdateDataApi methods for w.Postgres workspace-level service.
  • Add CapacityReservationGroup field for compute.AzureAttributes.

Release v0.145.0 (2026-06-15)

Bug Fixes

  • Encode the governed-tag key as a single path segment when it is sent as a URL path parameter, so hierarchical keys containing / route correctly instead of being split into extra path segments and resolving to no endpoint (404 / ENDPOINT_NOT_FOUND). Affects GetTagPolicy/DeleteTagPolicy/UpdateTagPolicy (tags.TagPoliciesAPI), GetTagAssignment/DeleteTagAssignment/UpdateTagAssignment (tags.WorkspaceEntityTagAssignmentsAPI), and Get/Delete/Update (catalog.EntityTagAssignmentsAPI).

API Changes

Release v0.144.0 (2026-06-11)

API Changes

Release v0.143.0 (2026-06-10)

API Changes

Release v0.142.0 (2026-06-09)

API Changes

Release v0.141.0 (2026-06-02)

API Changes

Release v0.140.0 (2026-06-01)

New Features and Improvements

  • Add u2m.WithDiscoveryAccountTarget() option that sets target=ACCOUNT on the login.databricks.com authorize URL, so the discovery flow lands the user on the account selector instead of the workspace selector.

Internal Changes

  • Switch workspace addressing header on workspace-scoped API calls from X-Databricks-Org-Id to X-Databricks-Workspace-Id. The value continues to come from Config.WorkspaceID (DATABRICKS_WORKSPACE_ID), and now accepts either a classic numeric workspace ID or a CPDR connection ID (server disambiguates). Part of the DECO + Unified Workspace Addressing initiative.

API Changes

Release v0.139.0 (2026-05-28)

API Changes

Release v0.138.0 (2026-05-27)

Bug Fixes

  • config: The config-file loader now sets cfg.Profile to "DEFAULT" on the legacy fallback (no profile requested, no [__settings__].default_profile set, [DEFAULT] section loaded). Previously the loader silently used [DEFAULT]'s values but left cfg.Profile empty. Consumers that derive a per-profile identifier from cfg.Profile (e.g. the Databricks CLI's U2M OAuth cache key) need the resolved name to match across the login and read flows; without this fix a write under "DEFAULT" could not be found by a no-flag read.

Release v0.137.0 (2026-05-25)

New Features and Improvements

  • Honor the Vercel AI_AGENT=<name> env var as a secondary fallback for AI agent detection in the User-Agent header (after the agents.md AGENT=<name> standard). Unrecognized fallback values now pass through the User-Agent sanitized and length-capped at 64 chars instead of being coerced to agent/unknown, so versioned variants such as claude-code_2-1-141_agent surface as-is.

Internal Changes

  • Pass excludedAttributes=entitlements on the SCIM /Me request made by WorkspaceClient.CurrentWorkspaceID (#1681).

    CurrentWorkspaceID only reads the X-Databricks-Org-Id response header and discards the body, so it has no use for the User.Entitlements field. Skipping that attribute avoids an expensive getEffectivePermissions scan on the SCIM backend, which has caused incidents on workspaces with large grant counts.

API Changes

Release v0.136.0 (2026-05-21)

API Changes

Release v0.135.0 (2026-05-20)

API Changes

Release v0.134.0 (2026-05-19)

API Changes

  • Add FullRefreshSelection, RefreshFlowSelection, RefreshSelection and ResetCheckpointSelection fields for jobs.PipelineParams.
  • Add FullRefreshSelection, RefreshFlowSelection, RefreshSelection and ResetCheckpointSelection fields for jobs.PipelineTask.
  • Add EffectiveOperationalEmailCustomRecipient and OperationalEmailCustomRecipient fields for settingsv2.Setting.

Release v0.133.0 (2026-05-18)

API Changes

Release v0.132.0 (2026-05-07)

API Changes

Release v0.131.0 (2026-04-28)

API Changes

Release v0.130.0 (2026-04-23)

Breaking Changes

  • Remove the Experimental_IsUnifiedHost field (and the DATABRICKS_EXPERIMENTAL_IS_UNIFIED_HOST environment variable) from Config. Unified host detection is now automatic via the /.well-known/databricks-config endpoint.
  • Remove the unused ErrWorkspaceIDInAccountClient exported variable. It was never returned from any production path, and its message contradicted the unified host workflow where a single profile with both AccountID and WorkspaceID produces both clients.
  • Remove the file-based OAuth token cache from credentials/u2m/cache. The removed symbols are cache.NewFileTokenCache, cache.FileTokenCacheOption, cache.WithFileLocation, and the private tokenCacheFile struct. The TokenCache interface, ErrNotFound sentinel, HostCacheKeyProvider, and DiscoveryOAuthArgument remain exported. NewPersistentAuth now defaults to a new in-memory cache (cache.NewInMemoryTokenCache) when no WithTokenCache option is passed; consumers that relied on the previous file-backed default must supply their own persistent cache. See databricks/cli#5056 for the companion CLI change that moves the file cache into the CLI.

New Features and Improvements

  • Add u2m.WithDiscoveryHost option to override the default https://login.databricks.com host used by the discovery login flow. Intended for testing and development against non-production environments.
  • Add support for unified hosts. A single configuration profile can now be used for both account-level and workspace-level operations when the host supports it and both AccountID and WorkspaceID are available.

Bug Fixes

  • Fix CLI token source --profile fallback: --profile is a global Cobra flag that old CLIs accept silently instead of reporting "unknown flag", making the previous error-based detection dead code. Now uses databricks version to detect CLI capabilities at init time (#1605).

Internal Changes

  • Pass --force-refresh to Databricks CLI auth token command to bypass the CLI's internal token cache (#1628).

API Changes

Release v0.129.0 (2026-04-22)

New Features and Improvements

  • Add u2m.WithDiscoveryHost option to override the default https://login.databricks.com host used by the discovery login flow. Intended for testing and development against non-production environments.

Internal Changes

  • Remove Experimental_IsUnifiedHost flag from HostType() resolution. The method is deprecated and the Terraform provider will use its own host type detection.
  • Expanded AI agent detection: added Goose, Amp, Augment, Copilot (VS Code), Kiro, Windsurf. Honors the AGENT=<name> standard and falls back to unknown for unrecognized values. When multiple agent env vars are present (e.g. a Cursor CLI subagent invoked from Claude Code), the user-agent reports agent/multiple.
  • Use resolved host type from host metadata in HostType() method, falling back to URL pattern matching when metadata is unavailable.

API Changes

Release v0.128.0 (2026-04-20)

New Features and Improvements

  • Add config.DefaultHostMetadataResolverFactory: a package-level variable consulted when Config.HostMetadataResolver is unset. Lets programs install a shared resolver (e.g. a caching one) once from an init() block (typically in a blank-imported package) instead of wiring per-Config. Experimental.

Bug Fixes

  • Add X-Databricks-Org-Id header to Workspace.Download() and Workspace.Upload() for SPOG host compatibility.
  • WorkspaceClient.CurrentWorkspaceID() now returns Config.WorkspaceID directly when set, instead of calling /api/2.0/preview/scim/v2/Me. This removes an API round-trip on every call where the workspace ID is already known (profile, ?o= query param, env var, or host metadata) and fixes a failure on SPOG hosts where the unauthenticated probe request was rejected with Unable to load OAuth Config.
  • Add X-Databricks-Org-Id header to SharesAPI.internalList() (service/sharing/ext_api.go) for SPOG host compatibility. Same class of bug as #1634 - a hand-written extension method was calling a.client.Do() without the header that the generated code paths set per-call.

Release v0.127.0 (2026-04-15)

Breaking Changes

  • Raise minimum Go version from 1.18 to 1.24 (#1558).

New Features and Improvements

  • Added HostMetadataResolver hook to allow callers to customize host metadata resolution, e.g. with caching (#1572).
  • Added NewLimitIterator to listing package for lazy iteration with a cap on output items (#1555).
  • Resolve TokenAudience from token_federation_default_oidc_audiences in host metadata discovery endpoint.

Bug Fixes

  • Add X-Databricks-Org-Id header to deprecated workspace SCIM APIs (Groups, ServicePrincipals, Users) for SPOG host compatibility.
  • Add retry logic to token acquisition for OIDC, M2M, and Azure client secret credentials (#1398, #1072).
  • Fix double-caching of OAuth tokens in Azure client secret credentials (#1549).
  • Disable async token refresh for GCP credential providers to avoid wasted refresh attempts caused by double-caching with Google's internal oauth2.ReuseTokenSource (#1549).
  • Fixed double-caching in M2M OAuth that prevented the proactive async token refresh from reaching the HTTP endpoint until ~10s before expiry, causing bursts of 401 errors at token rotation boundaries (#1549).
  • Fix data race in authenticateIfNeeded when lazily initializing credentialsProvider (#1310).

Internal Changes

  • Normalize internal token sources on auth.TokenSource for proper context propagation (#1577).
  • Fix TestAzureGithubOIDCCredentials hang caused by missing HTTPTransport stub: EnsureResolved now calls resolveHostMetadata, which makes a real network request when no transport is set (#1550).
  • Bump golang.org/x/crypto from 0.21.0 to 0.45.0 in /examples/slog (#1566).
  • Bump golang.org/x/net from 0.23.0 to 0.33.0 in /examples/slog (#1127).
  • Bump golang.org/x/oauth2 from 0.20.0 to 0.27.0 (#1563).
  • Bump golang.org/x/crypto from 0.21.0 to 0.45.0 in /examples/zerolog (#1568).
  • Bump golang.org/x/crypto from 0.31.0 to 0.45.0 (#1564).
  • Bump google.golang.org/grpc from 1.58.3 to 1.79.3 in /examples/zerolog (#1565).
  • Bump google.golang.org/grpc from 1.62.0 to 1.79.3 in /examples/slog (#1569).
  • Bump google.golang.org/grpc from 1.64.1 to 1.79.3 (#1557).

API Changes

Release v0.126.0 (2026-03-20)

New Features and Improvements

  • Add PersistentAuth.ForceRefreshToken() to force-refresh cached U2M OAuth tokens and return an error instead of falling back to an existing token when refresh fails.
  • Add ErrMissingRefreshToken, returned when a token refresh is requested but the cached token has no refresh token (i.e. Token() or ForceRefreshToken()).

Release v0.125.0 (2026-03-19)

New Features and Improvements

  • Add automatic detection of AI coding agents (Claude Code, Cursor, Cline, Codex, Copilot CLI, Gemini CLI, OpenCode, Antigravity, Openclaw) in the user-agent string. The SDK now appends agent/<name> to HTTP request headers when running inside a known AI agent environment.

API Changes

Release v0.124.0 (2026-03-18)

Internal Changes

  • Proactively attempt to refresh OAuth tokens expiring within 5 minutes in PersistentAuth.Token() to reduce the chance of callers receiving near-expired tokens. If the refresh fails and the token is still valid, the existing token is returned.

API Changes

Release v0.123.0 (2026-03-17)

New Features and Improvements

  • Support default_profile in [__settings__] section of .databrickscfg (#1534).

Release v0.122.0 (2026-03-16)

API Changes

Release v0.121.0 (2026-03-12)

API Changes

  • Add UpdateRole method for w.Postgres workspace-level service.
  • Add Entities and TimeseriesColumn fields for ml.Feature.
  • Add AggregationFunction field for ml.Function.
  • Add FilterCondition field for ml.KafkaSource.
  • Add ConnectorType and DataStagingOptions fields for pipelines.IngestionPipelineDefinition.
  • Add IngestionSourceCatalogName, IngestionSourceConnectionName, IngestionSourceSchemaName, IngestionSourceTableName and IngestionSourceTableVersion fields for pipelines.Origin.
  • Add Attributes field for postgres.RoleRoleStatus.
  • Add SubDomain field for serving.ExternalFunctionRequest.
  • [Breaking] Change EntityColumns and TimeseriesColumn fields for ml.DeltaTableSource to no longer be required.
  • Change EntityColumns and TimeseriesColumn fields for ml.DeltaTableSource to no longer be required.
  • [Breaking] Change Inputs field for ml.Feature to no longer be required.
  • Change Inputs field for ml.Feature to no longer be required.
  • [Breaking] Change FunctionType field for ml.Function to no longer be required.
  • Change FunctionType field for ml.Function to no longer be required.
  • Change EntityColumnIdentifiers and TimeseriesColumnIdentifier fields for ml.KafkaSource to no longer be required.
  • [Breaking] Change EntityColumnIdentifiers and TimeseriesColumnIdentifier fields for ml.KafkaSource to no longer be required.

Release v0.120.0 (2026-03-10)

New Features and Improvements

  • Added discovery login flow for login.databricks.com to the U2M OAuth infrastructure. This enables the CLI to authenticate users without requiring a workspace URL upfront.

Internal Changes

  • Auth cache: Simplify experimental auth token refresh scheduling by replacing stale-duration/token-state tracking with an asyncRefreshAllowedAfter timestamp. Async refreshes now start based on a per-token dynamic lead time and, after a failed async refresh, are deferred by 1 minute before retrying while expiry still forces a blocking refresh.

Release v0.119.0 (2026-03-09)

API Changes

Release v0.118.0 (2026-03-05)

Internal Changes

  • Fix GetWorkspaceClient for unified account hosts (#1517).
  • Add test for GetWorkspaceClient with SPOG host (#1518).

Release v0.117.0 (2026-03-04)

Internal Changes

  • Move cloud-based credential filtering from individual strategies into DefaultCredentials. Azure strategies are skipped on GCP/AWS hosts in auto-detect mode; GCP strategies are skipped on Azure/AWS hosts. When auth_type is explicitly set (e.g. azure-cli), cloud filtering is bypassed so the named strategy is always attempted regardless of host cloud.

Release v0.116.0 (2026-03-03)

Bug Fixes

  • Fix HostType() misclassifying account hosts when the scheme is missing (#1510).

Release v0.115.0 (2026-03-02)

Internal Changes

  • Implement dynamic auth token stale period based on initial token lifetime. Increased up to 20 mins for standard OAuth with proportionally shorter periods for short-lived tokens.

API Changes

Release v0.114.0 (2026-02-26)

API Changes

Release v0.113.0 (2026-02-25)

New Features and Improvements

  • Add DisableAsyncTokenRefresh field to Config to allow disabling asynchronous token refresh for short-lived processes like the Databricks CLI.

Release v0.112.0 (2026-02-24)

Bug Fixes

  • Pass --profile to CLI token source when profile is set, and add read-fallback to migrate legacy host-keyed tokens to profile keys (#1497).

API Changes

Release v0.111.0 (2026-02-24)

New Features and Improvements

  • Add DefaultCredentialStrategyProvider package-level variable to allow overriding the default authentication strategy for all Config instances.

Documentation

  • Added "Retries" section to README.

Internal Changes

  • Add NewCredentialsChain to allow internal tools to configure a custom credentials chain that differs from the SDK's default chain. This is not intended for end-user consumption.
  • Export OIDC credential types (GitHubOIDCCredentials, AzureDevOpsOIDCCredentials, EnvOIDCCredentials, FileOIDCCredentials) so they can be used as building blocks in custom credentials chains.
  • Make clusters creation in AWS not depend on cloud parsed from host. Changed default AWS availability for auto-created utility clusters from SPOT to SPOT_WITH_FALLBACK (API default).

API Changes

Release v0.110.0 (2026-02-19)

API Changes

Release v0.109.0 (2026-02-18)

New Features and Improvements

  • Use profile name as OAuth token cache key instead of host URL, so two profiles on the same host store separate tokens.

Release v0.108.0 (2026-02-16)

API Changes

Release v0.107.0 (2026-02-12)

API Changes

Release v0.106.0 (2026-02-10)

API Changes

Release v0.105.0 (2026-02-09)

Breaking Changes

  • WorkspaceId in Config is changed to WorkspaceID

Release v0.104.0 (2026-02-03)

New Features and Improvements

  • Add support for single Profile for Account and Workspace operations in Unified Mode.

API Changes

Release v0.103.0 (2026-01-29)

Internal Changes

  • Add integration test support for unified host infrastructure (#1445)

Release v0.102.0 (2026-01-28)

API Changes

Release v0.101.0 (2026-01-27)

API Changes

Release v0.100.0 (2026-01-22)

API Changes

Release v0.99.0 (2026-01-20)

Breaking Changes

  • [workspace] Updated Git Credentials List methods to require ListCredentialsRequest parameter. The following methods now require a workspace.ListCredentialsRequest parameter instead of no parameters:

    • GitCredentialsAPI.List(ctx, request)
    • GitCredentialsAPI.ListAll(ctx, request)
    • GitCredentialsAPI.CredentialInfoGitProviderToCredentialIdMap(ctx, request)

    Migration Guide:

    // Before
    credentials, err := w.GitCredentials.ListAll(ctx)
    
    // After
    credentials, err := w.GitCredentials.ListAll(ctx, workspace.ListCredentialsRequest{})
    

API Changes

Release v0.98.0 (2026-01-20)

API Changes

Release v0.97.0 (2026-01-15)

New Features and Improvements

  • Increase async cache stale period from 3 to 5 minutes to cover the maximum monthly downtime of a 99.99% uptime SLA.

API Changes

Release v0.96.0 (2026-01-06)

API Changes

Release v0.95.0 (2025-12-17)

API Changes

Release v0.94.0 (2025-12-11)

Bug Fixes

  • Fixed U2M OAuth token caching issue that caused tokens to be read from disk on every request instead of being cached in memory.

API Changes

Release v0.93.0 (2025-12-03)

Bug Fixes

  • Support for Spark versions with multiple Scala versions (#1331).

API Changes

Release v0.92.0 (2025-11-20)

API Changes

Release v0.91.0 (2025-11-13)

Internal Changes

  • Add experimental core framework to replace existing API call execution.

Release v0.90.0 (2025-11-03)

New Features and Improvements

  • Add support for unified hosts, i.e. hosts that support both workspace-level and account-level operations
  • Deprecate Config.IsAccountClient, which will not work for unified hosts, and replace it with Config.HostType and Config.ConfigType methods.

API Changes

Release v0.89.0 (2025-10-30)

API Changes

Release v0.88.0 (2025-10-23)

API Changes

  • Add CreateMaterializedFeature, DeleteMaterializedFeature, GetMaterializedFeature, ListMaterializedFeatures and UpdateMaterializedFeature methods for w.FeatureEngineering workspace-level service.
  • Add FilterCondition field for ml.Feature.
  • [Breaking] Change DisplayName, Evaluation, QueryText, Schedule and WarehouseId fields for sql.AlertV2 to be required.
  • Change DisplayName, Evaluation, QueryText, Schedule and WarehouseId fields for sql.AlertV2 to be required.
  • [Breaking] Change ComparisonOperator and Source fields for sql.AlertV2Evaluation to be required.
  • Change ComparisonOperator and Source fields for sql.AlertV2Evaluation to be required.
  • [Breaking] Change Name field for sql.AlertV2OperandColumn to be required.
  • Change Name field for sql.AlertV2OperandColumn to be required.
  • [Breaking] Change QuartzCronSchedule and TimezoneId fields for sql.CronSchedule to be required.
  • Change QuartzCronSchedule and TimezoneId fields for sql.CronSchedule to be required.
  • [Breaking] Remove Results field for sql.ListAlertsV2Response.

Release v0.87.0 (2025-10-20)

API Changes

Release v0.86.0 (2025-10-13)

API Changes

Release v0.85.0 (2025-09-23)

New Features and Improvements

  • Add native support for authentication through Azure DevOps OIDC.

Release v0.84.0 (2025-09-18)

New Features and Improvements

  • Increased rate limiter burst setting from 1 to rate_limit value.

API Changes

Release v0.83.0 (2025-09-08)

API Changes

Release v0.82.0 (2025-08-31)

Bug Fixes

  • Fixed Azure CLI authentication for federated token service principals in AKS workload identity environments. The SDK now properly detects service principals with GUID-like names as federated tokens and skips tenant ID parameters that cause authentication failures.

API Changes

Release v0.81.0 (2025-08-20)

Bug Fixes

  • Update the U2M port selection mechanism to try port 8020 first and fall back incrementally (to port 8021, 8022, and so on...) if a port is not available. This fixes an issue with the Databricks CLI which is only allowlisted on port 8020.

API Changes

Release v0.80.0 (2025-08-13)

API Changes

Release v0.79.0 (2025-08-06)

API Changes

Release v0.78.0 (2025-07-31)

API Changes

Release v0.77.0 (2025-07-24)

New Features and Improvements

  • Add new error value ErrHTMLContent to differentiate parsing errors caused by HTML content from other parsing errors.
  • Return more detailed error messages when OAuth endpoints cannot be resolved.
  • Use a free port in u2m authentication flows rather than 8020.

API Changes

Release v0.76.0 (2025-07-17)

API Changes

Release v0.75.0 (2025-07-10)

Bug Fixes

  • Default values for ApiClient are now properly set in the type constructor rather than in the config constructor.

API Changes

Release v0.74.0 (2025-07-03)

API Changes

Release v0.73.1 (2025-06-20)

Bug Fixes

  • Revert custom serialization which introduced a bug impacting nested query paramters in v0.73.0

Release v0.73.0 (2025-06-19)

API Changes

Release v0.72.0 (2025-06-05)

New Features and Improvements

  • Enums now have a Values function that returns the list of all possible enum values (PR #1228)

API Changes

Release v0.71.0 (2025-05-26)

Bug Fixes

  • Properly cache tokens when using the metadata-service auth type (#1225).

Release v0.70.0 (2025-05-21)

Bug Fixes

  • Stop swallowing authentication errors when a non-default auth type is explicitly set (#1223)

API Changes

Release v0.69.0 (2025-05-12)

New Features and Improvements

  • Add support to authenticate with Account-wide token federation from the following auth methods: env-oidc, file-oidc, and github-oidc.

API Changes

Release v0.68.0 (2025-05-06)

New Features and Improvements

  • Add support for OIDC ID token authentication using a file (PR #1213).
  • Add support for OIDC ID token authentication using an environment variable (PR #1215).

Release v0.67.0 (2025-05-02)

Bug Fixes

  • Fixed the deserialization of responses in VectorSearchAPI's QueryIndex() method (#1214).

API Changes

Release v0.66.0 (2025-04-30)

Bug Fixes

  • Tolerate trailing slashes in hostnames in Config.

API Changes

Release v0.65.0 (2025-04-29)

New Features and Improvements

  • Introduce support for Databricks Workload Identity Federation in GitHub workflows (1177). See README.md for instructions.
  • [Breaking] Users running their worklows in GitHub Actions, which use Cloud native authentication and also have a DATABRICKS_CLIENT_ID and DATABRICKS_HOST environment variables set may see their authentication start failing due to the order in which the SDK tries different authentication methods. In such case, the DATABRICKS_AUTH_TYPE environment variable must be set to match the previously used authentication method.

Release v0.64.0 (2025-04-24)

New Features and Improvements

  • Enabled asynchronous token refreshes by default (#1208).

API Changes

Release v0.63.0 (2025-04-14)

API Changes

Release v0.62.0 (2025-04-10)

Internal Changes

  • Remove TestAccDashboards as legacy dashboard creation on has been discontinued (#1205).

Release v0.61.0 (2025-03-26)

New Features and Improvements

  • Support user-to-machine authentication in the SDK (#1108).
  • Instances of ApiClient now share the same connection pool by default (PR #1190).

Internal Changes

  • Stop recommending users to report an issue when the SDK encounters an unknown error (PR #1189).

API Changes

  • Added GenerateDownloadFullQueryResult method for w.Genie workspace-level service.
  • Added EffectiveUserApiScopes, Oauth2AppClientId, Oauth2AppIntegrationId and UserApiScopes fields for apps.App.
  • Added Abfss, Dbfs, ErrorMessage, ExecutionDurationSeconds, File, Gcs, S3, Status, Volumes and Workspace fields for compute.InitScriptInfoAndExecutionDetails.
  • [Breaking] Added ForecastGranularity field for ml.CreateForecastingExperimentRequest.
  • Added JwksUri field for oauth2.OidcFederationPolicy.
  • Added EventLog field for pipelines.CreatePipeline.
  • Added EventLog field for pipelines.EditPipeline.
  • Added EventLog field for pipelines.PipelineSpec.
  • Added FallbackConfig field for serving.AiGatewayConfig.
  • Added CustomProviderConfig field for serving.ExternalModel.
  • Added FallbackConfig field for serving.PutAiGatewayRequest.
  • Added FallbackConfig field for serving.PutAiGatewayResponse.
  • Added Aliases, Comment, DataType, DependencyList, FullDataType, Id, InputParams, Name, Properties, RoutineDefinition, Schema, SecurableKind, Share, ShareId, StorageLocation and Tags fields for sharing.DeltaSharingFunction.
  • Added QuerySource field for sql.QueryInfo.
  • Added ForeignCatalog enum value for catalog.CatalogType.
  • Added Browse enum value for catalog.Privilege.
  • Added AccessTokenFailure, AllocationTimeout, AllocationTimeoutNodeDaemonNotReady, AllocationTimeoutNoHealthyClusters, AllocationTimeoutNoMatchedClusters, AllocationTimeoutNoReadyClusters, AllocationTimeoutNoUnallocatedClusters, AllocationTimeoutNoWarmedUpClusters, AwsInaccessibleKmsKeyFailure, AwsInstanceProfileUpdateFailure, AwsInvalidKeyPair, AwsInvalidKmsKeyState, AwsResourceQuotaExceeded, AzurePackedDeploymentPartialFailure, BootstrapTimeoutDueToMisconfig, BudgetPolicyLimitEnforcementActivated, BudgetPolicyResolutionFailure, CloudAccountSetupFailure, CloudOperationCancelled, CloudProviderInstanceNotLaunched, CloudProviderLaunchFailureDueToMisconfig, CloudProviderResourceStockoutDueToMisconfig, ClusterOperationThrottled, ClusterOperationTimeout, ControlPlaneRequestFailureDueToMisconfig, DataAccessConfigChanged, DisasterRecoveryReplication, DriverEviction, DriverLaunchTimeout, DriverNodeUnreachable, DriverOutOfDisk, DriverOutOfMemory, DriverPodCreationFailure, DriverUnexpectedFailure, DynamicSparkConfSizeExceeded, EosSparkImage, ExecutorPodUnscheduled, GcpApiRateQuotaExceeded, GcpForbidden, GcpIamTimeout, GcpInaccessibleKmsKeyFailure, GcpInsufficientCapacity, GcpIpSpaceExhausted, GcpKmsKeyPermissionDenied, GcpNotFound, GcpResourceQuotaExceeded, GcpServiceAccountAccessDenied, GcpServiceAccountNotFound, GcpSubnetNotReady, GcpTrustedImageProjectsViolated, GkeBasedClusterTermination, InitContainerNotFinished, InstancePoolMaxCapacityReached, InstancePoolNotFound, InstanceUnreachableDueToMisconfig, InternalCapacityFailure, InvalidAwsParameter, InvalidInstancePlacementProtocol, InvalidWorkerImageFailure, InPenaltyBox, LazyAllocationTimeout, MaintenanceMode, NetvisorSetupTimeout, NoMatchedK8s, NoMatchedK8sTestingTag, PodAssignmentFailure, PodSchedulingFailure, ResourceUsageBlocked, SecretCreationFailure, ServerlessLongRunningTerminated, SparkImageDownloadThrottled, SparkImageNotFound, SshBootstrapFailure, StorageDownloadFailureDueToMisconfig, StorageDownloadFailureSlow, StorageDownloadFailureThrottled, UnexpectedPodRecreation, UserInitiatedVmTermination and WorkspaceUpdate enum values for compute.TerminationReasonCode.
  • Added GeneratedSqlQueryTooLongException and MissingSqlQueryException enum values for dashboards.MessageErrorType.
  • Added Balanced enum value for jobs.PerformanceTarget.
  • Added ListingResource enum value for marketplace.FileParentType.
  • Added App enum value for marketplace.MarketplaceFileType.
  • Added Custom enum value for serving.ExternalModelProvider.
  • Added ArclightMultiTenantAzureExchangeToken and ArclightMultiTenantAzureExchangeTokenWithUserDelegationKey enum values for settings.TokenType.
  • [Breaking] Changed CreateExperiment method for w.Forecasting workspace-level service with new required argument order.
  • Changed InstanceTypeId field for compute.NodeInstanceType to be required.
  • Changed Category field for compute.NodeType to be required.
  • [Breaking] Changed Functions field for sharing.ListProviderShareAssetsResponse to type sharing.DeltaSharingFunctionList.
  • [Breaking] Removed ExecutionDetails and Script fields for compute.InitScriptInfoAndExecutionDetails.
  • [Breaking] Removed SupportsElasticDisk field for compute.NodeType.
  • [Breaking] Removed DataGranularityQuantity and DataGranularityUnit fields for ml.CreateForecastingExperimentRequest.
  • [Breaking] Removed Aliases, Comment, DataType, DependencyList, FullDataType, Id, InputParams, Name, Properties, RoutineDefinition, Schema, SecurableKind, Share, ShareId, StorageLocation and Tags fields for sharing.Function.

Release v0.60.0 (2025-03-11)

API Changes

Release v0.59.0 (2025-03-03)

Bug Fixes

  • Fix unlikely issue due to conflicting error details in APIError.

Internal Changes

  • Update Jobs ListRuns API to support paginated responses (#1151)
  • Add poll.SimpleError to mock waiter objects returning errors (#1155)
  • Refactor APIError to expose different types of error details (#1153).
  • Update Jobs ListJobs API to support paginated responses (#1150)
  • Introduce automated tagging (#1148).
  • Update Jobs GetJob API to support paginated responses (#1133).
  • Update Jobs GetRun API to support paginated responses (#1132).

API Changes

Release v0.58.1 (2025-02-12)

Internal Changes

  • Do not send ForceSendFields as query parameters.

Release v0.58.0 (2025-02-11)

New Features and Improvements

  • Enable async refreshes for OAuth tokens (#1143).

Internal Changes

  • Add support for asynchronous data plane token refreshes (#1142).
  • Introduce new TokenSource interface that takes a context.Context (#1141).

API Changes:

OpenAPI SHA: 99f644e72261ef5ecf8d74db20f4b7a1e09723cc, Date: 2025-02-11

Release v0.57.0 (2025-02-03)

New Features and Improvements

  • Add support for async OAuth token refreshes (#1135).

API Changes:

OpenAPI SHA: c72c58f97b950fcb924a90ef164bcb10cfcd5ece, Date: 2025-02-03

Release v0.56.1 (2025-01-23)

Bug Fixes

  • Do not send query parameters when set to zero value (#1136).

Release v0.56.0 (2025-01-22)

Bug Fixes

  • Support Query parameters for all HTTP operations (#1124).

Internal Changes

  • Add download target to MakeFile (#1125).
  • Delete examples/mocking module (#1126).
  • Scope the traversing directory in the Recursive list workspace test (#1120).

API Changes:

OpenAPI SHA: 0be1b914249781b5e903b7676fd02255755bc851, Date: 2025-01-22

Release v0.55.0 (2025-01-13)

Internal Changes

  • Bump staticcheck to 0.5.1 and add go 1.23 test coverage (#1106).
  • Bump x/net, x/crypto dependencies (#1107).
  • Create custom codeql.yml (#1114).
  • Decouple serving and oauth2 package (#1110).
  • Migrate workflows that need write access to use hosted runners (#1112).
  • Move package credentials in config (#1115).
  • Update Queries test (#1104).

API Changes:

OpenAPI SHA: 779817ed8d63031f5ea761fbd25ee84f38feec0d, Date: 2025-01-08

Release v0.54.0 (2024-12-17)

API Changes:

OpenAPI SHA: a6a317df8327c9b1e5cb59a03a42ffa2aabeef6d, Date: 2024-12-16

Release v0.53.0 (2024-12-05)

Bug Fixes

  • Update Changelog file (#1091).

Internal Changes

  • Update to latest OpenAPI spec (#1098).

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

API Changes:

OpenAPI SHA: 7016dcbf2e011459416cf408ce21143bcc4b3a25, Date: 2024-12-05

Release v0.52.0 (2024-11-19)

Internal Changes

  • Update Jobs GetRun API to support paginated responses for jobs and ForEach tasks (#1089).

API Changes:

OpenAPI SHA: f2385add116e3716c8a90a0b68e204deb40f996c, Date: 2024-11-15

Release v0.51.0 (2024-11-07)

Internal Changes

  • Always write message for manual test execution (#1079).
  • Use error names instead of codes in errors.go (#1080).

API Changes:

OpenAPI SHA: d25296d2f4aa7bd6195c816fdf82e0f960f775da, Date: 2024-11-07

Release v0.50.0 (2024-10-31)

Internal Changes

  • Add DCO guidelines (#1047).
  • Add test instructions for external contributors (#1073).
  • Automatically trigger integration tests (#1067).
  • Move templates in the code generator (#1075).
  • Remove unnecessary test (#1071).

API Changes:

OpenAPI SHA: 25b2478e5a18c888f0d423249abde5499dc58424, Date: 2024-10-31

Release v0.49.0 (2024-10-14)

API Changes:

OpenAPI SHA: cf9c61453990df0f9453670f2fe68e1b128647a2, Date: 2024-10-14

Release v0.48.0 (2024-10-03)

Internal Changes

  • Update SDK to latest OpenAPI spec (#1057).

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

API Changes:

OpenAPI SHA: 0c86ea6dbd9a730c24ff0d4e509603e476955ac5, Date: 2024-10-02

Release v0.47.0 (2024-10-01)

Internal Changes

  • Update SDK to latest OpenAPI spec (#1042).

API Changes:

OpenAPI SHA: 6f6b1371e640f2dfeba72d365ac566368656f6b6, Date: 2024-09-19

Release v0.46.0 (2024-09-04)

Bug Fixes

  • Fail fast when authenticating if host is not configured (#1033).
  • Improve non-JSON error handling (#1031).

Internal Changes

  • Add TestAccCreateOboTokenOnAws to flaky test list (#1029).
  • Add workflows manage integration tests checks (#1032).
  • Fix TestMwsAccWorkspaces cleanup (#1028).
  • Improve integration test comment (#1035).
  • Temporary ignore Metastore test failures (#1027).
  • Update test to support new accounts (#1026).
  • Use statuses instead of checks (#1036).

API Changes:

OpenAPI SHA: d05898328669a3f8ab0c2ecee37db2673d3ea3f7, Date: 2024-09-04

Release v0.45.0 (2024-08-21)

Bug Fixes

  • Add INVALID_STATE to error code mapping (#1014).
  • Do not specify --tenant flag when fetching managed identity access token from the CLI (#1021).

Internal Changes

  • Add terraform aliases to Entity (#1017).
  • Added Service.NamedIdMap (#1016).
  • Fix billing test for budget configuration update (#1019).

API Changes:

OpenAPI SHA: 3eae49b444cac5a0118a3503e5b7ecef7f96527a, Date: 2024-08-21

Release v0.44.0 (2024-08-13)

New Features and Improvements

  • Remove deprecated WithImpl and Impl service methods (#1003).

Bug Fixes

  • Allowed filtering for graviton DBRs in ClusterAPI.SelectSparkVersion (#1004).
  • Avoid loading the response bodies twice in memory when parsing bytes.Buffer (#984).
  • Bump google.golang.org/grpc from 1.64.0 to 1.64.1 (#974).
  • Fix default-auth example when less than 10 clusters (#1012).
  • Infer Azure tenant ID if not set (#910).

Internal Changes

  • Add comment to validate workflow (#987).
  • Add error mapping for GetRun (#1006).
  • Add missing Package to Entity (#995).
  • Add prefix to Dependabot commit messages (#976).
  • Configure Dependabot for security updates only (#988).
  • Enable mixins via struct embedding (#1000).
  • Fix GetWorkspaceClient test & GCP SQL Warehouse Creation test (#1010).
  • Fix integration tests (#1008).
  • Fix processing of quoted titles (#989).
  • Generate SDK from Open API (#997).
  • Log a warning when declaring inline entities (#994).
  • Move PR message validation to a separate workflow (#983).
  • Pin jobs APIs to 2.1 in SDKs (#993).
  • Prefix all extension files with ext_ (#1001).
  • Trigger the validate workflow in the merge queue (#986).
  • Update OpenAPI spec (#991).
  • Use HTTP status text as message if the error response body is empty (#990).

API Changes:

OpenAPI SHA: f98c07f9c71f579de65d2587bb0292f83d10e55d, Date: 2024-08-12

Release v0.43.2 (2024-07-09)

Internal Changes

  • Enforce Tag on PRs (#969).
  • Generate SDK for apierr changes (#970).
  • Add Release tag and Workflow Fix (#972).

Release v0.43.1 (2024-07-08)

Major Changes and Improvements:

  • Add a credentials provider for Github Azure OIDC (#965).
  • Add DataPlane API Support (#936).
  • Added more error messages for retriable errors (timeouts, etc.) (#963).

Internal Changes

  • Add ChangelogConfig to Generator struct (#967).
  • Improve Changelog by grouping changes (#962).
  • Parse API Error messages with int error codes (#960).

Release v0.43.0 (2024-06-24)

Major Changes and Improvements:

  • Support partners in user agent for SDK (#925).
  • Add serverless_compute_id field to the config (#952).

Other Changes:

  • Generate from latest spec (#944) and (#947).

API Changes:

OpenAPI SHA: 7437dabb9dadee402c1fc060df4c1ce8cc5369f0, Date: 2024-06-25

Release v0.42.0 (2024-06-03)

  • Ignore additional flaky test (#930).
  • Ignore DataPlane Services during generation (#933).
  • Update OpenAPI spec (#934).

API Changes:

OpenAPI SHA: 37b925eba37dfb3d7e05b6ba2d458454ce62d3a0, Date: 2024-06-03

Dependency updates:

  • Bump golang.org/x/mod from 0.16.0 to 0.17.0 (#879).
  • Bump golang.org/x/oauth2 from 0.18.0 to 0.20.0 (#911).
  • Bump golang.org/x/net from 0.24.0 to 0.25.0 (#912).
  • Bump google.golang.org/api from 0.169.0 to 0.182.0 (#932).

Release v0.41.0 (2024-05-21)

Backward incompatible changes

  • Renamed CredentialsProvider to CredentialsStrategy.

Improvements and new features

  • Create a method to generate OAuth tokens (#886).
  • Better error message when private link enabled workspaces reject requests (#924).
  • Update OpenAPI spec (#926).

API Changes:

OpenAPI SHA: 7eb5ad9a2ed3e3f1055968a2d1014ac92c06fe92, Date: 2024-05-21

Release v0.40.1 (2024-05-14)

  • Fixed codecov for repository (#909).
  • Add traceparent header to enable distributed tracing. (#914).
  • Log cancelled and failed requests (#919).

Dependency updates:

  • Bump golang.org/x/net from 0.22.0 to 0.24.0 (#884).
  • Bump golang.org/x/net from 0.17.0 to 0.23.0 in /examples/zerolog (#896).
  • Bump golang.org/x/net from 0.21.0 to 0.23.0 in /examples/slog (#897).

Release v0.40.0 (2024-05-02)

  • Allow unlimited timeouts in retries (#904). By setting RETRY_TIMEOUT_SECONDS to a negative value, WorkspaceClient and AccountClient will retry retriable failures indefinitely. As a reminder, without setting this parameter, the default retry timeout is 5 minutes.

API Changes:

OpenAPI SHA: master, Date: 2024-05-02 Dependency updates:

  • Bump version of mockery (#907).

Release v0.39.0 (2024-04-24)

  • Ignored flaky integration tests (#894).
  • Added retries for "worker env WorkerEnvId(workerenv-XXXXX) not found" (#890).
  • Updated SDK to OpenAPI spec (#899).

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

API Changes:

OpenAPI SHA: 21f9f1482f9d0d15228da59f2cd9f0863d2a6d55, Date: 2024-04-23

Release v0.38.0 (2024-04-11)

Behavior Changes

  • Override INVALID_PARAMETER_VALUE on fetching non-existent job/cluster (#864). The error returned when fetching a non-existent job or cluster has been changed from INVALID_PARAMETER_VALUE to RESOURCE_DOES_NOT_EXIST. Update your error handling code to check for databricks.ErrResourceDoesNotExist instead of databricks.ErrInvalidParameterValue. For example, if you are using the Jobs.GetById method, you should update your error handling code to:
_, err := w.Jobs.GetById(ctx, "id")
if errors.Is(err, databricks.ErrResourceDoesNotExist) {
    // handle the error
}

Note that the original error code is still accessible in the ErrorCode field of APIError.

Other Improvements

  • Do not leak secondary authorization tokens in debug logs (#882).
  • Fix logging of request bodies containing percent characters. (#881).
  • Added clientId and clientSecret to oauth-m2m auth_types (#885).

Internal Changes

  • Support custom AuthVisitors (#874).

API Changes:

OpenAPI SHA: 94684175b8bd65f8701f89729351f8069e8309c9, Date: 2024-04-11

## 0.37.0

Other Changes

  • Fix integration test naming for UC Files (#868).

API Changes

OpenAPI SHA: d38528c3e47dd81c9bdbd918272a3e49d36e09ce, Date: 2024-03-27

Release v0.36.0 (2024-03-20)

API Changes:

OpenAPI SHA: 93763b0d7ae908520c229c786fff28b8fd623261, Date: 2024-03-20

Release v0.35.0 (2024-03-20)

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

Test Fixes

  • Fix TestUcAccShares (#858).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

Test Fixes

  • Fix TestUcAccShares (#858).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0 (2024-03-20)

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

Test Fixes

  • Fix TestUcAccShares (#858).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0 (2024-03-20)

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

Test Fixes

  • Fix TestUcAccShares (#858).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

Test Fixes

  • Fix TestUcAccShares (#858).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0 (2024-03-20)

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).
  • Fix TestUcAccShares (#858).
  • Add telemetry for SDK usage from DBR (#851).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.35.0 (2024-03-20)

  • Added Config.GetAuthDetails (#838).
  • Support DATABRICKS_SDK_UPSTREAM and DATABRICKS_SDK_UPSTREAM_VERSION (#854).

Test Fixes

  • Fix TestUcAccShares (#858).

Internal Changes

  • Add telemetry for SDK usage from DBR (#851).

API Changes:

OpenAPI SHA: 3821dc51952c5cf1c276dd84967da011b191e64a, Date: 2024-03-19 Dependency updates:

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/zerolog (#855).
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /examples/slog (#856).
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#857).
  • Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#840).
  • Bump golang.org/x/mod from 0.15.0 to 0.16.0 (#843).
  • Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 (#845).
  • Bump google.golang.org/api from 0.166.0 to 0.169.0 (#849).

Release v0.34.0 (2024-03-05)

New Features and Improvements

  • Fixed GetWorkspaceClient for GCP (#803).
  • Adaptive request timeouts (#837).
  • Added HTTP proxy example (#825).
  • Note: Backwards incompatible changes - Settings are now nested, please see the API changes below.

API Changes:

Internal Changes:

  • Differentiate between empty structures and components that can take on any value (#821).
  • Added integration tests for files API (#818).
  • Added HasByteStreamField() helper function (#824).
  • Update SDK to latest OpenAPI spec (#839).
  • Added tokei.rs badge (#836).
  • Updated isObject to consider empty objects (#834).
  • Treat empty entities as entities (#831).
  • Do not transpile getWorkspaceClient (#830).
  • Include Go 1.22 in test matrix (#841).
  • Added support for subservices (#826).
  • Bump google.golang.org/api from 0.161.0 to 0.166.0 (#829).
  • Bump exp & mod library (#832).

OpenAPI SHA: d855b30f25a06fe84f25214efa20e7f1fffcdf9e, Date: 2024-03-04

Release v0.33.0 (2024-02-19)

Internal Changes:

  • Add helper function to get header fields (#822).
  • Add Int64 to header type injection (#819).

API Changes:

OpenAPI SHA: cdd76a98a4fca7008572b3a94427566dd286c63b, Date: 2024-02-19

Release v0.32.0 (2024-02-14)

Major Changes:

  • Generate fields for headers in responses (#812).

Other Changes:

  • Add CurrentWorkspaceID() method on WorkspaceClient (#808).
  • Update OpenAPI spec (#816).

Internal Changes:

  • Do not generate erroneous "r" and "w" samples (#811).

API Changes:

OpenAPI SHA: c40670f5a2055c92cf0a6aac92a5bccebfb80866, Date: 2024-02-14

Release v0.31.0 (2024-02-08)

  • Support creating a new workspace client from an account client (#792). Please see the example:
// GetWorkspaceClient returns a WorkspaceClient for the given workspace. The
// workspace can be fetched by calling w.Workspaces.Get() or w.Workspaces.List().
//
// The config used for the workspace is identical to that used for the account,
// except that the host is set to the workspace host, and the account ID is
// not set.

a, err := databricks.NewAccountClient()
if err != nil {
  panic(err)
}
ctx := context.Background()
workspaces, err := a.Workspaces.List(ctx)
if err != nil {
  panic(err)
}
w, err := a.GetWorkspaceClient(workspaces[0])
if err != nil {
  panic(err)
}
me, err := w.CurrentUser.Me(ctx)
  • Added support to select Spark version with Photon (#799). Please Note: Photon selection is disabled by default. To enable it, please use Photon: true in request. Example:
	version, err := sparkVersions.Select(compute.SparkVersionRequest{
		Photon:          true,
	})

API Changes:

Additions:

Changes:

Removals:

Internal Changes:

  • Added Support for HEAD operations (#802).
  • Updated actions/setup-go to v5 (#784).
  • Retry update of catalog in test to avoid flakiness (#788).
  • Skip AccountClient_GetWorkspaceClient() test in Azure/GCP (#798).
  • SDK Generation + Fix backwards incompatible changes (#806).
  • Fixed any references when generating code with circular dependencies (#805).
  • Fixed stack overflow on recursive schemas (#801).

Dependency updates:

  • Bump google.golang.org/api from 0.154.0 to 0.161.0 (#794).

OpenAPI SHA: cadf1693527b365728a55ff06a0e38ce5740c9f7, Date: 2024-02-08

Release v0.30.1 (2024-01-25)

Major changes:

  • Enable Databricks CLI auth for all clouds (#783).

Other changes:

  • Update codecov/codecov-action to v3 (#785).
  • MustUseJson must be true if request is a map (#786).

Release v0.30.0 (2024-01-24)

Other changes:

  • Added RequiredPositionalArguments method for codegen (#773).
  • Support locking in integration tests (#776).
  • Update OpenAPI spec and fix incompatible changes (#778).

API Changes:

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

Release v0.29.1 (2024-01-16)

This patch release contains two small changes:

  • Retry on Status Code 503 (#733), improving the stability of the SDK in light of transient API unavailability.
  • Simplify mocking of iterator and waiter objects (#769, #770). See the Testing section of the README.md for usage information and examples.

Release v0.29.0 (2024-01-10)

  • Extract API interfaces for all services and generate mock clients (#740).
  • Handle empty response for errors (#756).
  • Update SDK to OpenAPI spec + Fix tests (#755).
  • Add utility to retry on specific errors (#757).
  • Integration test fixes for TestMwsAccWorkspaces (#763) and TestMwsAccUsageDownload (#764).

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

API Changes:

OpenAPI SHA: a7a9dc025bb80303e676bf3708942c6aa06689f1, Date: 2024-01-04 Dependency updates:

  • Bump google.golang.org/api from 0.153.0 to 0.154.0 (#741).
  • Bump golang.org/x/crypto from 0.14.0 to 0.17.0 in /examples/slog (#747) and /examples/zerolog (#748).
  • Bump golang.org/x/crypto from 0.16.0 to 0.17.0 (#749).

Release v0.28.1 (2023-12-19)

This is a bugfix release that improves debuggability of unexpected errors (#744, #750). When the SDK cannot deserialize a response from the Databricks REST API, the resulting error will include debugging information and instructions on how to submit a bug report to the SDK.

Release v0.28.0 (2023-12-15)

  • Consolidate usage of named sorting (#736).
  • Remove redundant retries for token refreshes as they're already handled in httpclient (#729).
  • Skip auth, config loading, and rate limits when fixture transport is present in the config (#739).
  • Generate SDK to latest OpenAPI specification with bugfix (#742).

API Changes:

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

Release v0.27.0 (2023-12-12)

API Changes:

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

  • Bumped google.golang.org/api from 0.152.0 to 0.153.0 (#731).

Release v0.26.2 (2023-12-07)

This is a bugfix release, including a fix correcting issues with OAuth flows, due to a bug with the propagation of the response status in httpclient's RoundTrip() implementation. This fixes the failed during request visitor: token: oauth2: cannot fetch token: Response: {...} error.

All fixes:

  • Migrate Azure MSI & Metadata Service token sources to httpclient and add 100% test coverage (#709).
  • Added config.NewAzureCliTokenSource and config.NewAzureMsiTokenSource constructors (#727).
  • Use per-config refresh context for OAuth tokens (#728).

Release v0.26.1 (2023-11-30)

Minor changes:

  • Support overriding DatabricksEnvironment (#723).
  • Detect Accept header in httpclient.WithResponseUnmarshal (#710).
  • Detect Content-Type header in newRequestBody for httpclient (#711).

Bug fixes:

  • Retry request on REQUEST_LIMIT_EXCEEDED error returned by the SCIM API (#721).
  • Match retry logic of pre-refactor SDK (#722).

Release v0.26.0 (2023-11-29)

Major changes:

  • There has been a major overhaul of error handling. Users can now compare errors in API responses to the well-known error responses defined in the apierr package and reexported in the databricks package. Users can check whether a specific error was returned, for example errors.Is(err, databricks.ErrResourceAlreadyExists), rather than converting the error to *APIError to check the status code and error code. This change is backwards-compatible; users do not need to modify existing error-handling code when upgrading the SDK. See #682 and #703 for the changes and https://github.com/databricks/databricks-sdk-go/blob/main/error_alias.go for the full set of errors.

Bug fixes:

  • Handle "no configuration file found at" error during databricks-cli authentication (#707).
  • Introduce DatabricksEnvironment and fix Azure MSI auth from ACR, where IMDS doesn't give host environment information (#700).
  • Fix SCIM Pagination default parameters in the Go SDK (#717).

Other changes:

  • Update slog example with the correct interface (#694).
  • Fixed typo in error message for unknown azure environment (#701).
  • Allow injection of HTTP transport to enable HTTP replayer pattern (#697).
  • Decouple HTTP retries and error mapping mechanics from DatabricksClient into httpclient.ApiClient (#699, #702, #712).
  • Port qa.HTTPFixtures to faster transport-level stubs (#708).

API Changes:

Internal changes:

  • Added contains method in OpenAPI Generator (#690).
  • Skip recipients tests in Azure (#692).
  • Allow Files API tests to run in UC environments (#695).
  • More cleanup in Unity Catalog integration test (#719).

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

  • Bump golang.org/x/oauth2 from 0.13.0 to 0.14.0 (#689).
  • Bump google.golang.org/api from 0.150.0 to 0.151.0 (#698).
  • Bump the OpenAPI Spec (#706).
  • Bump golang.org/x/oauth2 from 0.14.0 to 0.15.0 (#715).
  • Bump golang.org/x/time from 0.4.0 to 0.5.0 (#714).
  • Bump google.golang.org/api from 0.151.0 to 0.152.0 (#716).

Release v0.25.0 (2023-11-10)

  • Make sure path parameters are first in order in RequiredFields (#669).
  • Added Field.IsRequestBodyField method for code generation (#670).
  • Added regressions question to the issue template (#676).
  • Added telemetry for CI/CD platform to useragent (#665).
  • Skiped GCP Integration Tests using Statement Execution API (#678).
  • Added more detailed error message on default credentials not found error (#679).
  • Updated SDK to latest OpenAPI Spec (#685).

API Changes:

OpenAPI SHA: e7b127cb07af8dd4d8c61c7cc045c8910cdbb02a, Date: 2023-11-08 Dependency updates:

  • Bump google.golang.org/api from 0.146.0 to 0.150.0 (#683).
  • Bump golang.org/x/mod from 0.13.0 to 0.14.0 (#681).
  • Bump google.golang.org/grpc from 1.58.2 to 1.58.3 in /examples/slog (#672).
  • Bump google.golang.org/grpc to 1.58.3 in /examples/zerolog (#684).
  • Bump golang.org/x/time from 0.3.0 to 0.4.0 (#680).

Release v0.24.0 (2023-10-24)

  • Implemented Iterator support for paginated endpoints or endpoints returning a list (#543). The Iterator interface allows users to get the next resource in the iterator and to check whether another resource is available in the iterator. Iterators for paginated endpoints fetch pages lazily, allowing users to only fetch the pages needed for their use case.
  • Removed photon and graviton selectors in compute.SparkVersionRequโ€ฆ (#622). Going forward, photon is determined by the RuntimeEngine field in compute.CreateCluster, and graviton is chosen depending on the aws_instance_type field in compute.CreateCluster.

API Changes:

Internal SDK Changes:

  • Update to actions/checkout@v4 (#650).
  • Skip unshallow step in test workflow (#649).
  • Add integration tests for Jobs: ListRuns (#645).
  • Only log pkg.Load after checking whether the operation is tagged (#655).
  • Prefix library paths with the target directory to construct absolute paths (#656).
  • Fixed HasRequiredNonBodyField method (#660).
  • Added CanSetRequiredFieldsFromJson method for OpenAPI generator (#661).
  • Add integration tests for ServicePrincipals: Patch (#662).
  • Add integration tests for Users: Patch, Update (#663).
  • Enforce running az login --service-principal on nightly runs (#659).
  • Add integration tests for Connections: Create, Delete, Get, List, Update (#653).

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

Release v0.23.0 (2023-10-12)

Note: this release includes custom JSON marshalling that captures whether or not a value is set and should be included in the marshalled output, if its value is equal to Go's zero value (i.e. 0 for an int field).

  • Add ForceSendFields and a custom marshaller (#615).
  • Support text/plain response as streaming request body (#638).
  • Added log statement if OIDC response is non 200 (#644).

API Changes:

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

Dependency updates:

  • Bump golang.org/x/mod from 0.12.0 to 0.13.0 (#639).
  • Bump google.golang.org/api from 0.140.0 to 0.146.0 (#643).
  • Bump golang.org/x/net from 0.15.0 to 0.17.0 (#646).
  • Bump golang.org/x/oauth2 from 0.12.0 to 0.13.0 (#642).
  • Bump golang.org/x/net from 0.8.0 to 0.17.0 in /examples/zerolog (#647).
  • Bump golang.org/x/net from 0.8.0 to 0.17.0 in /examples/slog (#648).

Release v0.22.0 (2023-10-03)

Breaking API Changes:

API Changes:

Internal SDK Changes:

  • Add support for template libraries (#635).

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

Release v0.21.0 (2023-09-27)

Breaking API Changes:

API Changes:

SDK Internal Changes:

  • Remove use of cancel by job id in integration test (#632).

OpenAPI SHA: 94ddf8ff02df271daebdc5f001075e1ca2ce080d, Date: 2023-09-27

Release v0.20.0 (2023-09-21)

  • Adjust token expiry window to 40 seconds on Azure (#617).
  • Rename variables in Azure code to match across auth types (#618).
  • Add details to APIError (#613).
  • Fixed code generation of primitive types (#623).
  • Updated SDK to changes in OpenAPI specification (#625).

API Changes:

OpenAPI SHA: 51e3d27c0553c891bc418bd0cd07c9240e0476dd, Date: 2023-09-13 Dependency updates:

  • Bump golang.org/x/oauth2 from 0.11.0 to 0.12.0 (#606).
  • Bump google.golang.org/api from 0.138.0 to 0.140.0 (#612).

Release v0.19.2 (2023-09-13)

  • Fixed case where retry of a request without body fails (#614).

Release v0.19.1 (2023-09-07)

  • Handled Azure authentication when WorkspaceResourceID is provided (#597).
  • Reverted error message changes from client.go (#604).
  • Reused tokens after first call to Azure CLI (#605).
  • Updated error message assertions (#607).

Release v0.19.0 (2023-09-04)

  • Added ErrNotWorkspaceClient (#596).
  • Fix loading of databrickscfg with a password containing a hash (#595).
  • Use an operation's request type name if specified (#598).
  • Update OpenAPI spec (#600).

API Changes:

OpenAPI SHA: 09a7fa63d9ae243e5407941f200960ca14d48b07, Date: 2023-09-04

Dependency updates:

  • Bump google.golang.org/api from 0.136.0 to 0.138.0 (#587).

Release v0.18.0 (2023-08-29)

Breaking Changes:

  • Added support Files API (application/octet-stream) in OpenAPI Spec (#572). The signatures of Upload, Download and Delete have changed; these methods now take UploadRequest, DownloadRequest, and DeleteRequest structures, respectively. Shortcut methods are generated for DownloadByFileName and DeleteByFileName for convenience. The WriteFile and ReadFile methods are removed.
  • Propagated Request Headers to client.go (#589). The Do method of Client now requires an additional parameter for request headers. Add headers to requests using this parameter, or pass nil if no headers are needed.

Breaking API Changes:

API Changes:

SDK Internal Changes:

  • Added support for io.ReadCloser for request and response bodies (#590).
  • Fixed nightly test failures for Go SDK (#592).

OpenAPI Generator Changes:

  • Improved error handling for ill-defined parameters (#582).
  • Switched to logging consistently rather than printing to stdout (#588).

OpenAPI SHA: 5d0ccbb790d341eae8e85321a685a9e9e2d5bf24, Date: 2023-08-29

Release v0.17.0 (2023-08-18)

  • Introduced Artifact Allowlist, Securable Tags, and Subentity Tags services.
  • Introduced DeleteRuns and RestoreRuns methods in the Experiments API.
  • Introduced the GetSecret method in the Secrets API.
  • Renamed Auto Maintenance to Predictive Optimization.
  • Set necessary headers when authenticating via Azure CLI (#584).

New Services:

New APIs:

Service Renames:

OpenAPI SHA: beff621d7b3e1d59244e2e34fc53a496f310e130, Date: 2023-08-17

Release v0.16.0 (2023-08-14)

  • Added ability to generate flat names (#568).

API Changes:

OpenAPI SHA: 1e3533f94335f0e6c5d9262bc1fea95b3ddcb0e1, Date: 2023-08-11 Dependency updates:

  • Bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 (#574).
  • Bump google.golang.org/api from 0.134.0 to 0.135.0 (#575).
  • Bump google.golang.org/api from 0.135.0 to 0.136.0 (#576).

Release v0.15.0 (2023-08-07)

To simplify documentation and management of object permissions, this release features a major reorganization of how permissions APIs are structured in the SDK. Rather than using a single Permissions.Get() API for all services, each service supporting permissions has its own permissions APIs. Follow these steps to migrate to the current SDK:

  • Change w.Permissions.Get() and w.Permissions.GetByRequestObjectIdAndRequestObjectType() to w.<Service>.Get<Service>Permissions()
  • Change w.Permissions.GetPermissionLevels() to w.<Service>.GetServicePermissionLevels()
  • Change w.Permissions.Set() to w.<Service>.Set<Service>Permissions()
  • Change w.Permissions.Update() to w.<Service>.Update<Service>Permissions()

API Changes:

OpenAPI SHA: 386b65ecdc825b9c3ed4aa7ca88e2e5baf9d87df, Date: 2023-08-07 Dependency updates:

  • Bump google.golang.org/api from 0.131.0 to 0.134.0 (#564).

Release v0.14.1 (2023-07-27)

  • Handle nested query parameters in Client.attempt (#559).
  • Support x-databricks-path-style overrides at the operation level (#562).

Release v0.14.0 (2023-07-26)

  • Fixed names of keyword arguments in examples (#560).

API Changes:

OpenAPI SHA: fbdd0fa3e83fed2c798a58d376529bdb1285b915, Date: 2023-07-26

Release v0.13.0 (2023-07-18)

  • Add issue templates (#539).
  • Added HasRequiredNonBodyField method (#536).
  • Make Azure MSI auth account compatible (#544).
  • Refactor Handling of Name<->ID Mapping in OpenAPI Generator (#547).
  • Regenerate Go SDK from current OpenAPI Specification (#549).
  • Parse Camel Case and Pascal Case Enum Values (#550).
  • Prepare for auto-releaser infra (#554).
  • Added SCIM Patch Acceptance Tests (#540).

API Changes:

OpenAPI SHA: 0a1949ba96f71680dad30e06973eaae85b1307bb, Date: 2023-07-18 Dependency updates:

  • Bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 (#545).
  • Bump golang.org/x/mod from 0.11.0 to 0.12.0 (#541).
  • Bump google.golang.org/api from 0.129.0 to 0.130.0 (#542).
  • Bump google.golang.org/api from 0.130.0 to 0.131.0 (#551).

Release v0.12.0 (2023-06-28)

  • Change release type
  • Regenerate SDK according to OpenAPI spec (#534).
  • Bump google.golang.org/api from 0.128.0 to 0.129.0 (#533).

Release v0.11.0 (2023-06-28)

  • Regenerated from OpenAPI spec (#527). Includes bugfixes for System Tables.
  • Support accounts-dod as account endpoint (#530).

Breaking API Changes:

  • Renamed compute.ClusterInfo to compute.ClusterDetails
  • Renamed compue.BaseClusterInfo to compute.ClusterSpec
  • Renamed jobs.RunSubmitTaskSettings to jobs.SubmitTask
  • Renamed jobs.JobTaskSettings to jobs.Task
  • Renamed jobs.CreateJobFormat to jobs.Format
  • Renamed jobs.JobsWebhookNotifications to jobs.WebhookNotifications
  • Renamed jobs.CronSchedulePauseStatus to jobs.PauseStatus
  • Renamed jobs.FileArrivalTriggerSettings to jobs.FileArrivalTriggerConfiguration
  • Renamed jobs.GitSourceGitProvider to jobs.GitProvider
  • Consolidated jobs.NotebookTaskSource, jobs.SparkPythonTaskSource to jobs.Source
  • Consolidated jobs.JobWebhookNotificationsOnFailureItem, jobs.JobWebhookNotificationsOnStartItem, jobs.JobWebhookNotificationsOnSuccessItem to jobs.Webhook
  • Renamed jobs.TaskDependenciesItem to job.TaskDependency
  • jobs.SparkSubmitTask.Widgets changed from *SqlDashboardWidgetOutput to []SqlDashboardWidgetOutput
  • (a *SystemSchemasAPI) DisableByMetastoreIdAndSchemaName changed from func(context.Context, string, string) error to func(context.Context, string, DisableSchemaName) error
  • (a *SystemSchemasAPI) Enable changed from func(context.Context) error to func(context.Context, EnableRequest) error
  • catalog.CatalogInfo.OptionsKvpairs changed from *OptionsKvPairs to map[string]string
  • catalog.CreateConnection.OptionsKvpairs changed from *OptionsKvPairs to map[string]string
  • catalog.UpdateConnection.OptionsKvpairs changed from OptionsKvPairs to map[string]string
  • catalog.DisableRequest.SchemaName changed from string to DisableSchemaName
  • catalog.OptionsKvPairs removed
  • catalog.SystemSchemaInfoStateDisableinitialized renamed to catalog.SystemSchemaInfoStateDisabledInitialized
  • catalog.SystemSchemaInfoStateEnabledcompleted renamed to catalog.SystemSchemaInfoStateEnabledCompleted
  • catalog.SystemSchemaInfoStateEnabledinitialized renamed to catalog.SystemSchemaInfoStateEnabledInitialized
  • settings.ReadPersonalComputeSettingsResponse renamed to settings.PersonalComputeSetting
  • workpace.CreateScope.KeyvaultMetadata removed

Other API Changes:

  • catalog.CatalogInfo.ConnectionName added
  • catalog.CatalogInfo.Options added
  • catalog.DisableSchemaName added
  • catalog.EnableRequest added
  • catalog.PrivilegeUseMarketplaceAssets added
  • compute.ClusterEvent added
  • compute.ComputeSpec added
  • compute.ComputeSpecKind added
  • jobs.ConditionTask added
  • jobs.ConditionTaskOp added
  • jobs.CreateJob.Compute added
  • jobs.JobCompute added
  • jobs.JobSettings.Compute added
  • jobs.RunConditionTask added
  • jobs.RunOutput.ConditionTask added
  • jobs.RunTask.ConditionTask added
  • serving.ServedModelInput.EnvironmentVars added
  • serving.ServedModelOutput.EnvironmentVars added
  • settings.DeletePersonalComputeSetting added
  • settings.UpdatePersonalComputeSetting added
  • sharing.PrivilegeUseMarketplaceAssets added
  • workspace.CreateScope.BackendAzureKeyVault added

Release v0.10.1 (2023-06-21)

  • Added ClusterID field for Config (#524).
  • Added OnlyPayload property for method (#522).
  • Renamed IsJsonOnly method (#523).

Dependency updates:

  • Bump google.golang.org/api from 0.127.0 to 0.128.0 (#521).

Release v0.10.0 (2023-06-16)

  • Added log level support to SimpleLogger. Default logger now prints only INFO level messages. To replicate more verbose behavior from the previous versions, set the DEBUG level in SimpleLogger explicitly (#426).
  • Added Upload and Download methods where applicable (#423).
  • Added auth tests for a databrickscfg file with an empty DEFAULT profile (#496).
  • Added more integration tests and examples (#503).
  • Added preview level functions for services and methods to OpenAPI code (#497).
  • Added IsAllRequiredFieldsPrimitive helper function (#404).
  • Added isCrudCreate method (#416).
  • Added retries for getting refreshable token (#500).
  • Added type update when entity fields are updated (#411).
  • Don't panic but return error from NewAccountClient (#422).
  • Error when opening a DBFS directory for reading (#415).
  • Fixed cleanup logic in SQL warehouse integration test (#400).
  • Fixed error handling in cluster utility function (#399).
  • Fixed example in README.md (#494).
  • Fixed nondeterminism in workspace filesystem integration test (#401).
  • Improve command execution interface (#410).
  • Introduce waiters as top-level methods (#408).
  • Regenerate examples if configured (#518).
  • Respect limit field passed in ListRequests (#407).
  • Updated from OpenAPI spec (#412, #413, #421, #519, #424).
  • Updated API test template with page tokens (#417).
  • Use constants instead of hardcoding strings (#402).
  • Use x-databricks-is-accounts flag to determine whether a service is an account level service (#420).

API Changes:

github.com/databricks/databricks-sdk-go/service/serving

  • (*ServingEndpointsAPI).Create: changed from func(context.Context, CreateServingEndpoint) (*ServingEndpointDetailed, error) to func(context.Context, CreateServingEndpoint) (*WaitGetServingEndpointNotUpdating[ServingEndpointDetailed], error)
  • (*ServingEndpointsAPI).List: removed
  • (*ServingEndpointsAPI).UpdateConfig: changed from func(context.Context, EndpointCoreConfigInput) (*ServingEndpointDetailed, error) to func(context.Context, EndpointCoreConfigInput) (*WaitGetServingEndpointNotUpdating[ServingEndpointDetailed], error) Compatible changes:
  • (*ServingEndpointsAPI).ListAll: added
  • (*ServingEndpointsAPI).WaitGetServingEndpointNotUpdating: added
  • WaitGetServingEndpointNotUpdating: added

github.com/databricks/databricks-sdk-go

  • WorkspaceClient.CommandExecutor: removed
  • WorkspaceClient.CommandExecution: added
  • WorkspaceClient.Connections: added
  • WorkspaceClient.Files: added
  • WorkspaceClient.SystemSchemas: added

github.com/databricks/databricks-sdk-go/service/sql

  • (*WarehousesAPI).Create: changed from func(context.Context, CreateWarehouseRequest) (*CreateWarehouseResponse, error) to func(context.Context, CreateWarehouseRequest) (*WaitGetWarehouseRunning[CreateWarehouseResponse], error)
  • (*WarehousesAPI).DeleteAndWait: removed
  • (*WarehousesAPI).DeleteByIdAndWait: removed
  • (*WarehousesAPI).Edit: changed from func(context.Context, EditWarehouseRequest) error to func(context.Context, EditWarehouseRequest) (*WaitGetWarehouseRunning[any], error)
  • (*WarehousesAPI).GetAndWait: removed
  • (*WarehousesAPI).GetByIdAndWait: removed
  • (*WarehousesAPI).Start: changed from func(context.Context, StartRequest) error to func(context.Context, StartRequest) (*WaitGetWarehouseRunning[any], error)
  • (*WarehousesAPI).Stop: changed from func(context.Context, StopRequest) error to func(context.Context, StopRequest) (*WaitGetWarehouseStopped[any], error)
  • (*StatementExecutionAPI).ExecuteAndWait: added
  • (*WarehousesAPI).WaitGetWarehouseRunning: added
  • (*WarehousesAPI).WaitGetWarehouseStopped: added
  • FormatCsv: added
  • WaitGetWarehouseRunning: added
  • WaitGetWarehouseStopped: added

github.com/databricks/databricks-sdk-go/service/jobs

  • (*JobsAPI).CancelRun: changed from func(context.Context, CancelRun) error to func(context.Context, CancelRun) (*WaitGetRunJobTerminatedOrSkipped[any], error)
  • (*JobsAPI).GetRunAndWait: removed
  • (*JobsAPI).RepairRun: changed from func(context.Context, RepairRun) (*RepairRunResponse, error) to func(context.Context, RepairRun) (*WaitGetRunJobTerminatedOrSkipped[RepairRunResponse], error)
  • (*JobsAPI).RunNow: changed from func(context.Context, RunNow) (*RunNowResponse, error) to func(context.Context, RunNow) (*WaitGetRunJobTerminatedOrSkipped[RunNowResponse], error)
  • (*JobsAPI).Submit: changed from func(context.Context, SubmitRun) (*SubmitRunResponse, error) to func(context.Context, SubmitRun) (*WaitGetRunJobTerminatedOrSkipped[SubmitRunResponse], error)
  • (*JobsAPI).WaitGetRunJobTerminatedOrSkipped: added
  • CreateJob.RunAs: added
  • JobRunAs: added
  • JobSettings.RunAs: added
  • WaitGetRunJobTerminatedOrSkipped: added

github.com/databricks/databricks-sdk-go/service/compute

  • (*ClustersAPI).Create: changed from func(context.Context, CreateCluster) (*CreateClusterResponse, error) to func(context.Context, CreateCluster) (*WaitGetClusterRunning[CreateClusterResponse], error)
  • (*ClustersAPI).Delete: changed from func(context.Context, DeleteCluster) error to func(context.Context, DeleteCluster) (*WaitGetClusterTerminated[any], error)
  • (*ClustersAPI).Edit: changed from func(context.Context, EditCluster) error to func(context.Context, EditCluster) (*WaitGetClusterRunning[any], error)
  • (*ClustersAPI).GetAndWait: removed
  • (*ClustersAPI).GetByClusterIdAndWait: removed
  • (*ClustersAPI).Resize: changed from func(context.Context, ResizeCluster) error to func(context.Context, ResizeCluster) (*WaitGetClusterRunning[any], error)
  • (*ClustersAPI).Restart: changed from func(context.Context, RestartCluster) error to func(context.Context, RestartCluster) (*WaitGetClusterRunning[any], error)
  • (*ClustersAPI).Start: changed from func(context.Context, StartCluster) error to func(context.Context, StartCluster) (*WaitGetClusterRunning[any], error)
  • (*CommandExecutionAPI).Cancel: changed from func(context.Context, CancelCommand) error to func(context.Context, CancelCommand) (*WaitCommandStatusCommandExecutionCancelled[any], error)
  • (*CommandExecutionAPI).Create: changed from func(context.Context, CreateContext) (*Created, error) to func(context.Context, CreateContext) (*WaitContextStatusCommandExecutionRunning[Created], error)
  • (*CommandExecutionAPI).Execute: changed from func(context.Context, Command) (*Created, error) to func(context.Context, Command) (*WaitCommandStatusCommandExecutionFinishedOrError[Created], error)
  • (*ClustersAPI).WaitGetClusterRunning: added
  • (*ClustersAPI).WaitGetClusterTerminated: added
  • (*CommandExecutionAPI).Start: added
  • (*CommandExecutionAPI).WaitCommandStatusCommandExecutionCancelled: added
  • (*CommandExecutionAPI).WaitCommandStatusCommandExecutionFinishedOrError: added
  • (*CommandExecutionAPI).WaitContextStatusCommandExecutionRunning: added
  • BaseClusterInfo.DataSecurityMode: added
  • BaseClusterInfo.DockerImage: added
  • BaseClusterInfo.SingleUserName: added
  • ClusterAttributes.DataSecurityMode: added
  • ClusterAttributes.DockerImage: added
  • ClusterAttributes.SingleUserName: added
  • ClusterInfo.DockerImage: added
  • CommandExecutorV2: added
  • EditCluster.DataSecurityMode: added
  • EditCluster.DockerImage: added
  • EditCluster.SingleUserName: added
  • WaitCommandStatusCommandExecutionCancelled: added
  • WaitCommandStatusCommandExecutionFinishedOrError: added
  • WaitContextStatusCommandExecutionRunning: added
  • WaitGetClusterRunning: added
  • WaitGetClusterTerminated: added

github.com/databricks/databricks-sdk-go/service/pipelines

  • (*PipelinesAPI).GetAndWait: removed
  • (*PipelinesAPI).GetByPipelineIdAndWait: removed
  • (*PipelinesAPI).Reset: changed from func(context.Context, ResetRequest) error to func(context.Context, ResetRequest) (*WaitGetPipelineRunning[any], error)
  • (*PipelinesAPI).Stop: changed from func(context.Context, StopRequest) error to func(context.Context, StopRequest) (*WaitGetPipelineIdle[any], error)
  • (*PipelinesAPI).WaitGetPipelineIdle: added
  • (*PipelinesAPI).WaitGetPipelineRunning: added
  • WaitGetPipelineIdle: added
  • WaitGetPipelineRunning: added

github.com/databricks/databricks-sdk-go/service/sharing

  • (*ProvidersAPI).ListShares: removed
  • (*ProvidersAPI).ListSharesAll: added

github.com/databricks/databricks-sdk-go/service/workspace

  • ExportFormatAuto: removed
  • ExportRequest.DirectDownload: removed
  • Import.Format: changed from ExportFormat to ImportFormat
  • (*WorkspaceAPI).Download: added
  • (*WorkspaceAPI).ReadFile: added
  • (*WorkspaceAPI).Upload: added
  • (*WorkspaceAPI).WriteFile: added
  • DownloadFormat: added
  • DownloadOption: added
  • ImportFormat: added
  • ImportFormatAuto: added
  • ImportFormatDbc: added
  • ImportFormatHtml: added
  • ImportFormatJupyter: added
  • ImportFormatRMarkdown: added
  • ImportFormatSource: added
  • UploadFormat: added
  • UploadLanguage: added
  • UploadOption: added
  • UploadOverwrite: added

github.com/databricks/databricks-sdk-go/service/catalog

  • (*FunctionsAPI).List: removed
  • (*MetastoresAPI).Assign: changed from func(context.Context, CreateMetastoreAssignment) error to func(context.Context, CreateMetastoreAssignment) error
  • (*MetastoresAPI).Create: changed from func(context.Context, CreateMetastore) (*MetastoreInfo, error) to func(context.Context, CreateMetastore) (*MetastoreInfo, error)
  • (*MetastoresAPI).Update: changed from func(context.Context, UpdateMetastore) (*MetastoreInfo, error) to func(context.Context, UpdateMetastore) (*MetastoreInfo, error)
  • (*MetastoresAPI).UpdateAssignment: changed from func(context.Context, UpdateMetastoreAssignment) error to func(context.Context, UpdateMetastoreAssignment) error
  • (*StorageCredentialsAPI).Create: changed from func(context.Context, CreateStorageCredential) (*StorageCredentialInfo, error) to func(context.Context, CreateStorageCredential) (*StorageCredentialInfo, error)
  • (*StorageCredentialsAPI).Update: changed from func(context.Context, UpdateStorageCredential) (*StorageCredentialInfo, error) to func(context.Context, UpdateStorageCredential) (*StorageCredentialInfo, error)
  • (*TablesAPI).ListSummaries: removed
  • CreateMetastore.Name: removed
  • CreateMetastore.Region: removed
  • CreateMetastore.StorageRoot: removed
  • CreateMetastore: changed from CreateMetastore to CreateMetastore
  • CreateMetastoreAssignment.DefaultCatalogName: removed
  • CreateMetastoreAssignment: changed from CreateMetastoreAssignment to CreateMetastoreAssignment
  • CreateStorageCredential.AwsIamRole: removed
  • CreateStorageCredential.AzureServicePrincipal: removed
  • CreateStorageCredential.Comment: removed
  • CreateStorageCredential.GcpServiceAccountKey: removed
  • CreateStorageCredential.Name: removed
  • CreateStorageCredential.ReadOnly: removed
  • CreateStorageCredential.SkipValidation: removed
  • CreateStorageCredential: changed from CreateStorageCredential to CreateStorageCredential
  • GcpServiceAccountKey: removed
  • ListFunctionsResponse.Schemas: removed
  • MetastoreAssignment.WorkspaceId: changed from string to int64
  • StorageCredentialInfo.GcpServiceAccountKey: removed
  • UpdateMetastore.DeltaSharingOrganizationName: removed
  • UpdateMetastore.DeltaSharingRecipientTokenLifetimeInSeconds: removed
  • UpdateMetastore.DeltaSharingScope: removed
  • UpdateMetastore.Id: removed
  • UpdateMetastore.Name: removed
  • UpdateMetastore.Owner: removed
  • UpdateMetastore.PrivilegeModelVersion: removed
  • UpdateMetastore.StorageRootCredentialId: removed
  • UpdateMetastore: changed from UpdateMetastore to UpdateMetastore
  • UpdateMetastoreAssignment.DefaultCatalogName: removed
  • UpdateMetastoreAssignment: changed from UpdateMetastoreAssignment to UpdateMetastoreAssignment
  • UpdateStorageCredential.AwsIamRole: removed
  • UpdateStorageCredential.AzureServicePrincipal: removed
  • UpdateStorageCredential.Comment: removed
  • UpdateStorageCredential.Force: removed
  • UpdateStorageCredential.GcpServiceAccountKey: removed
  • UpdateStorageCredential.Owner: removed
  • UpdateStorageCredential.ReadOnly: removed
  • UpdateStorageCredential.SkipValidation: removed
  • UpdateStorageCredential: changed from UpdateStorageCredential to UpdateStorageCredential
  • ValidateStorageCredential.GcpServiceAccountKey: removed
  • (*FunctionsAPI).FunctionInfoNameToFullNameMap: added
  • (*FunctionsAPI).ListAll: added
  • (*TablesAPI).ListSummariesAll: added
  • AccountsCreateMetastore: added
  • AccountsCreateMetastoreAssignment: added
  • AccountsCreateStorageCredential: added
  • AccountsUpdateMetastore: added
  • AccountsUpdateMetastoreAssignment: added
  • AccountsUpdateStorageCredential: added
  • AzureManagedIdentity: added
  • ConnectionInfo: added
  • ConnectionType: added
  • ConnectionTypeDatabricks: added
  • ConnectionTypeMysql: added
  • ConnectionTypePostgresql: added
  • ConnectionTypeRedshift: added
  • ConnectionTypeSnowflake: added
  • ConnectionTypeSqldw: added
  • ConnectionTypeSqlserver: added
  • ConnectionsAPI: added
  • ConnectionsService: added
  • CreateConnection: added
  • CreateMetastore.MetastoreInfo: added
  • CreateMetastoreAssignment.MetastoreAssignment: added
  • CreateStorageCredential.CredentialInfo: added
  • CredentialType: added
  • CredentialTypeUsernamePassword: added
  • DatabricksGcpServiceAccountResponse: added
  • DeleteConnectionRequest: added
  • DisableRequest: added
  • GetConnectionRequest: added
  • ListConnectionsResponse: added
  • ListFunctionsResponse.Functions: added
  • ListSystemSchemasRequest: added
  • ListSystemSchemasResponse: added
  • NewConnections: added
  • NewSystemSchemas: added
  • OptionsKvPairs: added
  • PropertiesKvPairs: added
  • StorageCredentialInfo.AzureManagedIdentity: added
  • StorageCredentialInfo.DatabricksGcpServiceAccount: added
  • SystemSchemaInfo: added
  • SystemSchemaInfoState: added
  • SystemSchemaInfoStateDisableinitialized: added
  • SystemSchemaInfoStateEnablecompleted: added
  • SystemSchemaInfoStateEnableinitialized: added
  • SystemSchemaInfoStateUnavailable: added
  • SystemSchemasAPI: added
  • SystemSchemasService: added
  • UpdateConnection: added
  • UpdateMetastore.MetastoreInfo: added
  • UpdateMetastoreAssignment.MetastoreAssignment: added
  • UpdateStorageCredential.CredentialInfo: added
  • ValidateStorageCredential.AzureManagedIdentity: added
  • ValidateStorageCredential.DatabricksGcpServiceAccount: added

github.com/databricks/databricks-sdk-go/service/ml

  • GetModelResponse.RegisteredModel: removed
  • GetModelResponse.RegisteredModelDatabricks: added

github.com/databricks/databricks-sdk-go/service/files

  • FilesAPI: added
  • FilesService: added
  • NewFiles: added

github.com/databricks/databricks-sdk-go/logger

  • SimpleLogger.Level: added

github.com/databricks/databricks-sdk-go/service/provisioning

  • (*WorkspacesAPI).Create: changed from func(context.Context, CreateWorkspaceRequest) (*Workspace, error) to func(context.Context, CreateWorkspaceRequest) (*WaitGetWorkspaceRunning[Workspace], error)
  • (*WorkspacesAPI).Update: changed from func(context.Context, UpdateWorkspaceRequest) error to func(context.Context, UpdateWorkspaceRequest) (*WaitGetWorkspaceRunning[any], error)
  • (*WorkspacesAPI).WaitGetWorkspaceRunning: added
  • WaitGetWorkspaceRunning: added

github.com/databricks/databricks-sdk-go/service/iam

  • AccountAccessControlAPI: added
  • AccountAccessControlProxyAPI: added
  • AccountAccessControlProxyService: added
  • AccountAccessControlService: added
  • GetAssignableRolesForResourceRequest: added
  • GetAssignableRolesForResourceResponse: added
  • GetRuleSetRequest: added
  • GrantRule: added
  • NewAccountAccessControl: added
  • NewAccountAccessControlProxy: added
  • RuleSetResponse: added
  • RuleSetUpdateRequest: added
  • UpdateRuleSetRequest: added

Dependency updates:

  • Bump github.com/stretchr/testify from 1.8.3 to 1.8.4 (#406).
  • Bump golang.org/x/mod from 0.10.0 to 0.11.0 (#515).
  • Bump golang.org/x/oauth2 from 0.8.0 to 0.9.0 (#498).
  • Bump google.golang.org/api from 0.123.0 to 0.127.0 (#405, #425, #429).

Release v0.9.0 (2023-05-22)

  • Added more usage examples for go doc and Go Packages (#389).
  • Make u2m authentication work with new CLI (#394).
  • Update from OpenAPI spec (19 may) (#390).

Dependency updates:

  • Bump github.com/stretchr/testify from 1.8.2 to 1.8.3 (#393).
  • Bump google.golang.org/api from 0.122.0 to 0.123.0 (#392).

Release v0.8.1 (2023-05-11)

  • Added in codegen function (#387).
  • Fixed mlflow acceptance tests (#378).
  • Fixed MLflow integration test and removed workaround for DELETE query parameter (#380).
  • Make clusters acceptance tests robust to duplicate cluster names (#381).
  • Remove dead code from apierr/errors.go (#376).
  • Serialize params to request body on delete (#383).

Dependency updates:

  • Bump golang.org/x/oauth2 from 0.7.0 to 0.8.0 (#385).
  • Bump google.golang.org/api from 0.118.0 to 0.122.0 (#382, #386).

Release v0.8.0 (2023-04-20)

  • Added more code generation utilities (#369).
  • Body logger for non-JSON payload as well (#365).
  • Cleanup ephemeral groups in integration tests (#368).
  • Fixed external entity generation (#372).
  • Skip loading default profile if host is already configured (#363).
  • Update debug messages in config loader to display correct path (#362).

Dependency updates:

  • Bump golang.org/x/oauth2 from 0.6.0 to 0.7.0 (#364).
  • Bump google.golang.org/api from 0.115.0 to 0.116.0 (#361).
  • Bump google.golang.org/api from 0.116.0 to 0.118.0 (#367).

API changes:

  • Moved clusterpolicies APIs to compute package.
  • Moved clusters APIs to compute package.
  • Moved commands APIs to compute package.
  • Moved globalinitscripts APIs to compute package.
  • Moved instancepools APIs to compute package.
  • Moved scim APIs to iam package.
  • Moved permissions APIs to iam package.
  • Moved ipaccesslists APIs to settings package.
  • Moved tokenmanagement APIs to settings package.
  • Moved tokens APIs to settings package.
  • Moved workspaceconf APIs to settings package.
  • Moved gitcredentials APIs to workspace package.
  • Moved repos APIs to workspace package.
  • Moved secrets APIs to workspace package.
  • Split unitcatalog package to catalog and sharing.
  • Renamed mlflow package to ml.
  • Renamed dbfs package to files.
  • Renamed deployment package to provisioning.
  • Renamed endpoints package to serving.
  • Renamed clusters.List type to compute.ListClustersRequest.
  • Renamed jobs.ListRuns type to jobs.ListRunsRequest.
  • Renamed jobs.ExportRun type to jobs.ExportRunRequest.
  • Renamed clusterpolicies.List type to compute.ListClusterPoliciesRequest.
  • Renamed jobs.List type to jobs.ListJobsRequest.
  • Renamed permissions.GetPermissionLevels type to iam.GetPermissionLevelsRequest.
  • Renamed pipelines.ListPipelineEvents type to pipelines.ListPipelineEventsRequest.
  • Renamed pipelines.ListPipelines type to pipelines.ListPipelinesRequest.
  • Renamed workspaceconf.GetStatus type to settings.GetStatusRequest.
  • Renamed repos.List type to workspace.ListReposRequest.
  • Renamed tokenmanagement.List type to settings.ListTokenManagementRequest.
  • Renamed workspace.Export type to workspace.ExportRequest.
  • Renamed workspace.List type to workspace.ListWorkspaceRequest.

Release v0.7.0 (2023-04-05)

  • Update from OpenAPI (#359).
  • Experimental credentials provider via local server (#340).
  • Added isTesting marker to support ResourceFixture in Terraform (#358).

Dependency updates:

  • Bump golang.org/x/mod from 0.9.0 to 0.10.0 (#356).
  • Bump google.golang.org/api from 0.114.0 to 0.115.0 (#357).

Release v0.6.0 (2023-04-03)

  • Added type to represent a loaded configuration file (#349).
  • Added named Wait the level of services (#348).
  • Pass azure_client_id to Azure MSI if specified (#354).

Dependency updates:

  • Bump google.golang.org/api from 0.112.0 to 0.114.0 (#344).

Release v0.5.0 (2023-03-14)

  • Added Delta Live Tables events method to pipelines.PipelinesAPI (#339).
  • Added id field to the SparkVersionRequest for easier integration with Terraform's databricks_spark_version data source (#335).
  • Improve auth fixture capturing (#336, #337).
  • Make logger context aware and added examples of usage together with zerolog and slog (#333).
  • Update from OpenAPI spec and added new APIs (#338).

Dependency updates:

  • Bump google.golang.org/api from 0.111.0 to 0.112.0 (#334).

Release v0.4.1 (2023-03-09)

  • Added an option to configure the location of the bricks CLI (#330).
  • Added support for Azure CLI authentication on Azure China and Azure GovCloud (#331).

Release v0.4.0 (2023-03-08)

  • Added id field to the NodeTypeRequest for easier integration with Terraform's databricks_node_type data source (#325).
  • Don't load ~/.databrickscfg if azure-cli auth is implicitly configured (#324).
  • Fixed newline in codegen comments (#326).
  • Update from OpenAPI (#320, #328).

API changes:

  • Renamed deployment.AwsCredentials to deployment.CreateCredentialAwsCredentials.
  • Renamed deployment.StsRole to deployment.CreateCredentialStsRole.
  • Removed schedules support from sql.AlertsAPI.

Dependency updates:

  • Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#318).
  • Bump golang.org/x/mod from 0.6.0-dev.0.20220419223038-86c51ed26bb4 to 0.8.0 (#316).
  • Bump golang.org/x/mod from 0.8.0 to 0.9.0 (#323).
  • Bump golang.org/x/oauth2 from 0.5.0 to 0.6.0 (#322).
  • Bump golang.org/x/time from 0.0.0-20210723032227-1f47c861a9ac to 0.3.0 (#317).
  • Bump google.golang.org/api from 0.110.0 to 0.111.0 (#319).

Release v0.3.3 (2023-02-24)

  • Allow AAD SPN authentication on Databricks Account level (#311).
  • Port auth tests from the JS SDK (#313).
  • Skip loading ~/.databrickscfg when not required (#314).

Dependency updates:

  • Bump golang.org/x/net from 0.6.0 to 0.7.0 (#312).

Release v0.3.2 (2023-02-17)

  • Always use the latest value for user agent key (#309).

Release v0.3.1 (2023-02-17)

  • Change APIError to use pointer receiver (#298).
  • Drop duplicate prefix in randomized email (#299).
  • Expand semver pattern to be compliant with https://semver.org (#302).
  • Fix apierr.APIError pointer receivers (#307).
  • Skip loading config if auth is already explicitly configured directly (#306).
  • Sync fixes for smallest node selection from Terraform (#301).
  • Updated from OpenAPI spec (#305).

Dependency updates:

  • Bump google.golang.org/api from 0.109.0 to 0.110.0 (#303).

Release v0.3.0 (2023-02-03)

  • Added support for GCP deployment APIs in Public Preview.
  • Added new node type selector (#287).
  • Added Azure MSI auth (#279).
  • Added validation of strings in user agent package (#291).
  • Added logging for error responses (#289).
  • Update implementation of smallest node selection to match terraform's (#273).
  • Added experimental OAuth support (#276, #266, #292).
  • Fixed google-credentials to take precedence over google-id (#283).
  • Test with Go 1.20 (#295).
  • Regenerate from OpenAPI (#293, #294, #296, #282, #269, #272).
  • Added replaceAll and lowerFirst template functions (#288, #277).

Dependency updates:

API changes:

  • Renamed clusters.CreateCluster to clusters.BaseClusterInfo.
  • Renamed jobs.Job to jobs.BaseJob.
  • Renamed jobs.Run to jobs.BaseRun.
  • Fixed commands.Results Schema type from [][]any to []map[string]any.

Release v0.2.0 (2022-12-23)

  • Added DATABRICKS_AUTH_TYPE environment variable (#248).
  • Added Policy Families API (#263).
  • Added experimental ErrCannotConfigureAuth and ErrNotAccountClient (#237, #238).
  • Added DBFS file handle that supports both reading and writing (#261).
  • Added io.WriterTo for DBFS file reader (#249).
  • Added pflag.Value interfaces for enums (#234).
  • Added support for adding custom HTTP visitors per request (#230).
  • Added support for raw body as byte slice if requested (#247).
  • Improved callbacks for polling the status of long-running operations (#258).
  • Improved rendering of HTTP links in godoc (#229).
  • Updated field types in the Jobs API from spec (#259).
  • Multiple OpenAPI consistency passes (#254, #241, #243, #255, #236).

API changes:

  • Renamed IsAccountsClient to IsAccountClient (#231).
  • w.ClusterPolicies.ListAll now takes clusterpolicies.List as an argument.
  • github.com/databricks/databricks-sdk-go/service/dbsql package is renamed to github.com/databricks/databricks-sdk-go/service/sql.
  • w.DataSources.ListDataSources is renamed to w.DataSources.List.
  • w.Queries.CreateQuery is renamed to w.Queries.CreateQuery.
  • w.Queries.DeleteQueryByQueryId is renamed to w.Queries.DeleteByQueryId.
  • w.Queries.GetQueryByQueryId is renamed to w.Queries.GetByQueryId.
  • w.Queries.UpdateQuery is renamed to w.Queries.Update.
  • w.Alerts.DeleteAlertByAlertId is renamed to w.Alerts.DeleteByAlertId.
  • w.Alerts.UpdateAlert is renamed to w.Alerts.Update.
  • w.Alerts.GetAlertByAlertId is renamed to w.Alerts.GetByAlertId.
  • w.Alerts.ListAlerts is renamed to w.Alerts.List.
  • w.Dashboards.CreateDashboard is renamed to w.Dashboards.Create.
  • w.Dashboards.DeleteDashboardByDashboardId is renamed to w.Dashboards.GetByDashboardId.
  • w.Dashboards.ListDashboardsAll is renamed to w.Dashboards.ListAll.
  • w.Dashboards.DeleteDashboardByDashboardId is renamed to w.Dashboards.DeleteByDashboardId.
  • w.Dashboards.RestoreDashboard is renamed to w.Dashboards.Restore.
  • deployment.CreateCustomerManagedKeyRequest now takes deployment.KeyUseCase enum.
  • w.GlobalInitScripts.CreateScript is renamed to w.GlobalInitScripts.Create.
  • w.GlobalInitScripts.DeleteScriptByScriptId is renamed to w.GlobalInitScripts.DeleteByScriptId.
  • w.GlobalInitScripts.UpdateScript is renamed to w.GlobalInitScripts.Update.
  • w.GlobalInitScripts.GetScriptByScriptId is renamed to w.GlobalInitScripts.GetByScriptId.
  • w.GlobalInitScripts.ListScriptsAll is renamed to w.GlobalInitScripts.ListAll.
  • jobs.ResetJob.NewSettings is now required field.
  • w.Pipelines.CreatePipeline is renamed to w.Pipelines.Create.
  • w.Pipelines.DeletePipelineByPipelineId is renamed to w.Pipelines.DeleteByPipelineId.
  • w.Pipelines.UpdatePipeline is renamed to w.Pipelines.Update.
  • w.Pipelines.GetPipelineByPipelineId is renamed to w.Pipelines.GetByPipelineId.
  • w.StorageCredentials.Update now also returns an entity.
  • w.ExternalLocations.Update now also returns an entity.
  • w.Metastores.Update now also returns an entity.
  • unitycatalog.CreateMetastoreAssignment.WorkspaceId type changed from int to int64.
  • unitycatalog.UnassignRequest.WorkspaceId type changed from int to int64.
  • w.Catalogs.Update now also returns an entity.
  • w.Schemas.Update now also returns an entity.
  • w.Providers.Update now also returns an entity.
  • w.Shares.Update now also returns an entity.
  • WarehousesAPI service moved to github.com/databricks/databricks-sdk-go/service/sql package.
  • w.Warehouses.CreateWarehouseAndWait renamed to w.Warehouses.CreateAndWait.
  • w.Warehouses.DeleteWarehouseByIdAndWait renamed to w.Warehouses.DeleteByIdAndWait.
  • w.Warehouses.EditWarehouse renamed to w.Warehouses.Edit.
  • w.Warehouses.GetWarehouseById renamed to w.Warehouses.GetById.
  • w.Warehouses.ListWarehousesAll renamed to w.Warehouses.ListAll.
  • Removed w.Dbfs.Overwrite in favor of w.Dbfs.Open("....", dbfs.FileModeOverwrite|dbfs.FileModeWrite).
  • Added third required argument to w.Dbfs.Open.

Code generation:

  • Added concept of main service for the package (#239).
  • Added entity primitives check (#242).
  • Added helpers for CRUD generation (#246).
  • Added more entity-generation utils (#257).
  • Dynamically generate .gitattributes (#244).
  • Fixed required order fields (#245).
  • Parse summary from descriptions (#228).
  • Print error on formatter failure (#235).
  • Update usage string in generator (#260).
  • Fixed order of host completion (#233).

Dependency updates:

  • Bump google.golang.org/api from 0.103.0 to 0.105.0 (#232, #252).

Release v0.1.1 (2022-12-02)

  • Improved usage instructions and added more documentation for services.

Release v0.1.0 (2022-11-30)

  • Initial release of the Databricks SDK for Go.