Releases: databricks/databricks-sql-python
Releases · databricks/databricks-sql-python
v4.3.0
- New: optional Rust kernel backend (
use_kernel=True). Adds an alternative connection path backed by the nativedatabricks-sql-kernelclient (a Rust core exposed via PyO3), installable with the newdatabricks-sql-connector[kernel]extra. The kernel talks to Databricks over the SEA (Statement Execution API) HTTP transport — not Thrift — with CloudFetch and inline-Arrow result fetching, souse_kernel=Truegives you a modern SEA-native client through the same DB-API surface. Supports PAT, OAuth M2M, and OAuth U2M auth. Requires Python >= 3.10 (the kernel wheel iscp310-abi3); on older interpreters the extra is a no-op anduse_kernel=Trueraises a clearImportError. The default backend remains Thrift — opt in per connection. - Kernel backend behavior is aligned with the Thrift backend so application code works the same either way: consistent cursor-state tracking (
query_id/get_query_state), metadata (catalogs/schemas/tables/columns with JDBC-style filter semantics and case-insensitivetable_types), DMLrowcount, server-sourced async execution state, synccancel(), fail-loud staging/volume operations, and structured error context (SQLSTATE, diagnostic info). Kernel logs surface through Pythonloggingunder thedatabricks.sql.kernellogger (#824, #825, #830, #838, #839 by @vikrantpuppala) - Revert the thrift 0.23.0 bump that broke installation on DBR LTS (ES-1960554) (#840 by @vikrantpuppala)
v4.3.0rc1
- Add optional Rust kernel backend for
use_kernel=True, installable via the newdatabricks-sql-connector[kernel]extra (requires Python >= 3.10). Routes connections through the nativedatabricks-sql-kernelclient, with parity work across cursor-state tracking, metadata, logging (kernel logs surface through Pythonlogging), staging fail-loud behavior, error context, and sync cancel (#824, #825, #830, #838, #839 by @vikrantpuppala) - Revert the thrift 0.23.0 bump that broke installation on DBR LTS (ES-1960554) (#840 by @vikrantpuppala)
v4.2.7
- Extract SPOG org-id from cluster http_path for non-Thrift requests (#817 by @msrathore-db)
- Remove empty chunks in CloudFetch concatenation (#814 by @jprakash-db)
- Add
_retry_server_directed_onlymode for Retry-After header compliance (#756 by @sd-db) - Bump thrift to 0.23.0 (#796 by @leoromanovsky)
- Allow pandas 3.x in dependency constraints (#768 by @moomindani)
- Telemetry: unwrap TokenFederationProvider to report inner auth mechanism/flow (#781 by @samikshya-db)
v4.2.6
- Add SPOG routing support for account-level vanity URLs (#767 by @msrathore-db)
- Fix dependency_manager: handle PEP 440 ~= compatible release syntax (#776 by @vikrantpuppala)
- Bump thrift to fix deprecation warning (#733 by @Korijn)
- Add AI coding agent detection to User-Agent header (#740 by @vikrantpuppala)
- Add statement-level query_tags support for SEA backend (#754 by @sreekanth-db)
- Update PyArrow concatenation of tables to use promote_options as default (#751 by @jprakash-db)
- Fix float inference to use DoubleParameter (64-bit) instead of FloatParameter (#742 by @Shubhambhusate)
- Allow specifying query_tags as a dict upon connection creation (#749 by @jiabin-hu)
- Add query_tags parameter support for execute methods (#736 by @jiabin-hu)
v4.1.5
Whats changed
Full Changelog: v4.1.0...v4.1.5
v3.7.5
Whats changed
- Fix: Pyarrow concat to now merge with promote options as default (#745 by @jprakash-db)
Full Changelog: v3.6.0...v3.7.5
v4.2.5
- Fix feature-flag endpoint retries in gov region (#735 by @samikshya-db)
- Improve telemetry lifecycle management (#734 by @msrathore-db)
v4.2.4
What's Changed
- Fixed the exception handler close() on _TelemetryClientHolder by @msrathore-db in #723
- created util method to normalise http protocol in http path by @nikhilsuri-db in #724
Full Changelog: v4.2.3...v4.2.4
v4.2.3
What's Changed
- added pandas < 2.4.0 support and tests for py 3.14 by @sreekanth-db in #720
- pandas 2.3.3 support for py < 3.14 by @sreekanth-db in #721
Full Changelog: v4.2.2...v4.2.3
v4.2.2
What's Changed
- Change default use_hybrid_disposition to False by @samikshya-db in #714
- Circuit breaker changes using pybreaker by @nikhilsuri-db in #705
- perf: Optimize telemetry latency logging to reduce overhead by @samikshya-db in #715
- basic e2e test for force telemetry verification by @nikhilsuri-db in #708
- feat: Implement host-level telemetry batching to reduce rate limiting by @samikshya-db in #718
- Prepare for a release with telemetry on by default by @samikshya-db in #717
Full Changelog: v4.2.1...v4.2.2