Skip to content

Release 0.13.0 - #188

Merged
buggins merged 1 commit into
masterfrom
release/0.13.0
Nov 12, 2026
Merged

buggins merged 1 commit into
masterfrom
release/0.13.0

Conversation

@buggins

@buggins buggins commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Closes #187

  • source/ddbc/package.d: dependency snippet ~>0.13.0; README (Choosing drivers): ~>0.13. ddbc keeps its version in tags only.

After merging, tag v0.13.0. Draft release notes below.


A new configuration, full-native, puts all the newer drivers into one build (#185, #186), and the native drivers move to the current releases of their connectors, which all build on dbwire 0.9 (#178–#181).

full-native: all new drivers together

Until now each native driver had its own configuration, and a build has exactly one, so an application couldn't use native PostgreSQL and native SQL Server together, or a native driver together with MySQL or SQLite. full-native has them all:

"subConfigurations": { "ddbc": "full-native" }
Driver Library
MySQL mysql-native
SQLite sqlite3 (as in full)
ClickHouse clickhoused
SQL Server mssql-native
Oracle oracle-native
PostgreSQL postgresql-native

There's no libpq or ODBC in it, so postgresql://, sqlserver:// and oracle:// URLs use the native drivers. full stays the default. A test-native configuration runs all of these drivers' tests in one binary, in CI too.

Choosing drivers

The README has a new "Choosing drivers" section (#182, #183): all configurations with their drivers, version identifiers and C libraries, which URL scheme selects which driver, and how thread or vibe.d (fiber) mode is chosen.

Connectors

Configuration Connector Was
ClickHouse clickhoused 0.9.2 0.9.0
PGNATIVE postgresql-native 0.6.1 0.5
ORACLE oracle-native 0.4.1 0.3.1
MSSQL mssql-native 0.3.1 0.2.4

ddbc itself depends on dbwire:types 0.9.6 (was 0.8). The connector releases come from a code review of each of them: robustness against malformed server data, thread safety, fixes for connections left in a wrong state after errors, and faster row decoding and float text.

What changes for ddbc users

  • SQL Server (MSSQL): getString of float/real columns is plain up to 15 digits before the point (6 for real), as SQL Server writes it: 100, not 1e+02; 1e+15 and 1.5e-05 keep the exponent form.
  • connect_timeout=0 now means no time limit in all four native drivers (PostgreSQL: as in libpq; it used to mean 15 seconds there, and failed at once in the others).
  • PostgreSQL (PGNATIVE), TLS: as in libpq, sslmode=verify-ca needs a CA file (sslrootcert or ~/.postgresql/root.crt) instead of falling back to the system's CAs, and the default client key ~/.postgresql/postgresql.key must not be readable by group or others.
  • Oracle (ORACLE), TLS: ssl_server_dn_match=off without ssl_server_cert_dn needs a wallet or tls_ca_file. Float text no longer depends on the C locale (1,5e-07 after setlocale(LC_NUMERIC, "de_DE.UTF-8")).
  • Passwords in connection strings (?password=, sslpassword=, wallet_password=) are masked in error messages.

Compatibility

  • ddbc's own API is unchanged, and the existing configurations are too. The minimum D frontend is still 2.097 (DMD 2.097, LDC 1.27).
  • Code that uses the connectors directly (getNativeConnection, or its own imports) meets their API changes; see the CHANGELOG files of clickhoused (0.9.1), postgresql-native (0.6.0), oracle-native (0.4.0) and mssql-native (0.3.0).
  • Projects that pin other versions of these connectors or of dbwire must update them together.

Full changelog: v0.12.0...v0.13.0

🤖 Generated with Claude Code

Configuration full-native (#185, #186), README Choosing drivers (#182,
#183), and the native drivers on clickhoused 0.9.2, postgresql-native
0.6.1, oracle-native 0.4.1, mssql-native 0.3.1 and dbwire 0.9.6
(#178-#181). The dependency snippets now say ~>0.13.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@buggins buggins self-assigned this Nov 12, 2026
@buggins
buggins merged commit 467ad33 into master Nov 12, 2026
100 checks passed
@buggins
buggins deleted the release/0.13.0 branch November 12, 2026 14:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Release 0.13.0

1 participant