Repository navigation
Releases
Firebird driver v1.0.0
Firebird driver 1.0.0
First stable write-capable release for Firebird 3, 4 and 5. Includes interactive
transactions, cancellation/timeouts, atomic batches, parameterized grid writes,
schema builders, routines/triggers, query plans, encrypted connections and
logical whole-database SQL export/import developed throughout the 0.2 betas.
Complete native .fbk backup and create-only restore now stream through
Firebird's authenticated, encrypted Services API. No local Firebird installation,
gbak executable or native client library is required. This covers arrays,
mixed object owners, compiled metadata and large BLOBs beyond the logical SQL
representation. User-defined BLOB subtypes also work in ordinary query results
and SQL exports as raw binary data.
Native backups publish an atomic private file only after successful completion.
Restore snapshots the input and never enables database replacement. A failed or
cancelled native restore may leave a partial new database; the error explicitly
requires checking it before retrying. Unknown targets are never automatically
deleted. External-table data becomes ordinary tables, and source shadow files
are not recreated. Server configuration, accounts, encryption keys and external
modules remain separate dependencies.
The companion Host PR #1470
adds .sql/.fbk selection and native restore destination handling alongside
whole-file SQL transfers and trigger editing. Older Hosts retain their previous
workflows. Native backup/restore RPCs are available directly. Routine menus,
column-statistics and the dedicated timeout field remain subject to compatible
Host and registry capability rollout; their gated manifest flags remain absent.
Registry schema changes were explicitly deferred.
See README for logical SQL limits and the distinction between native database
backup and server configuration backup. Detailed validation is recorded in
tests/results/1.0.0.md; earlier platform/editor and two-hour core-soak evidence
is retained in the Beta.7 reports.
Firebird driver v0.2.0-beta.7
Firebird driver 0.2.0-beta.7
This prerelease adds complete logical database SQL export/restore through optional
whole-file RPCs. It preserves domains, routines/packages, ordinary/GTT tables,
views in dependency order, computed and identity columns, sequence definitions
and counters, indexes/constraints, triggers, collations, comments, grants,
role system privileges/default roles and local authentication mappings. Legacy
UDF and BLOB-filter declarations retain their external bindings; the target
server must provide the corresponding modules.
Export streams one read-only snapshot into an atomic private file. Restore
validates the complete input before creating a new database or requiring an
empty existing target. New database creation never overwrites an existing
database, and a failed newly-created restore attempts bounded cleanup. Existing
empty targets can retain partial work on SQL errors. Binary OCTETS columns now
retain their raw bytes through both wire decoders and SQL rendering.
Database/table/trigger SQL-security settings, original page sizes and replication
publication settings are preserved. The restored wide-index fixture verifies
the corrected little-endian creation DPB. Transfers reject SQL Dialect 1.
External UDR trigger/routine declarations and edit scripts preserve quoted
bindings and bodies; their modules must be installed on the server.
Live regressions verify export past 100,000 rows, cancellation without replacing
a prior dump, cleanup of cancelled new-database restores, and independent
restoration through Firebird's own isql parser. Lost creation replies report an
unknown outcome without retrying or deleting an unconfirmed target.
Host PR #1470 adds the shared
desktop/web integration, explicit restore destination UI and a generic-dialect
trigger SQL editor that sends complete PSQL without dropping the old trigger.
These require that Host change to be merged and released. PSQL, routine-menu,
statistics and timeout flags remain gated on the matching Host/registry rollout.
The live roundtrip checks data, metadata, external declarations and failure
cleanup on Firebird 3/4/5. Native platform CI reruns before publication. Release
verification and remaining deployment requirements are recorded in
the validation report.
Arrays, nonstandard BLOB subtypes, external-table file mappings, mixed owners and
missing/unknown catalog representations fail explicitly. SQL records are limited
to 8 MiB. Use an engine backup outside those limits. This is a logical database
transfer; server configuration, security accounts and encryption keys are separate.
Embedded access and TLS configuration remain unsupported. Wire encryption is
available. Stable v0.1.0 remains the read-only release.
Firebird driver v0.2.0-beta.6
Firebird driver 0.2.0-beta.6
Writable prerelease from TabularisDB/tabularis-firebird-plugin. The published v0.1.0 remains the read-only stable release. This release does not claim complete database backup/restore or Stable readiness.
Changes since Beta.5
- Complete binary BLOBs now use the host wire format with byte count, detected MIME type and base64 data. Add primary-key-guarded preview and file-export RPCs; existing byte-array input parameters remain accepted. No truncation or implicit filesystem references.
- Add Firebird single-row INSERT rendering for existing compatible tables, preserving binary/text BLOBs, Unicode and NULs, exact decimal strings, NULLs and supplied identity values while omitting computed columns. Rows over an 8 MiB SQL statement fail explicitly. This requires the companion Host renderer/dump fix #1469.
- Add SELECT runtime measurement through
explain_querywithanalyze:true. The default remains prepare-only. Measurements cover total rows and client wall-clock time including fetch/network work; per-node engine counters remain unavailable. Analysis executes expressions, whose generators/external routines can have effects beyond transactional table writes. - Add exact, filtered and masked column statistics in a read-only snapshot transaction. BLOBs support counts only. The published manifest keeps
column_statsdisabled until the registry schema accepts it. - Explicitly declare the
genericSQL dialect, preventing the Host from treating Firebird as PostgreSQL. Unsupported guided trigger editing is safely rejected; actual SQL trigger editing and native RPCs work. - Expand live CI to Linux x64/ARM64 clients with Firebird 3/4/5 and native macOS Intel/Apple Silicon with Firebird 5, including server crash/restart recovery. ARM64 clients use emulated x64 Firebird 3/4 servers; those two server builds are not native ARM64.
- Record native Windows Tauri/WebView2 tests of SQL editing, grid updates, transactions/error rollback, PSQL/routine SQL editing, BLOB/statistics/analysis IPC, SQL data roundtrip and signed Beta.4-to-Beta.5 installation/update/uninstall. This uses a private unreleased Host build; gated manifest flags were enabled only in the disposable test profile. See native evidence.
- Add manual two-hour Windows Firebird 3/4/5 soak jobs. A workflow definition or running job is not a completed measurement; retained results are reported separately.
Remaining limits
- Full database SQL export/import including domains, routines, triggers, grants, dependency ordering and generator states is still open. The new INSERT renderer transfers data to existing compatible tables and is not a complete backup.
- The Host PSQL/cancellation patch is merged, but the latest published Host checked is still v0.32.0 without it. A compatible Host release and registry schema deployment are required before enabling the PSQL, routine-management, query-timeout and column-statistics integration flags.
- Native Linux/macOS desktop flows, macOS clients against Firebird 3/4, guided Firebird trigger editing and sustained-load validation remain separate completion items. Native file dialogs and installation UI buttons were not covered by the automated Tauri IPC checks.
- Arrays, nonstandard BLOB subtypes, embedded access and TLS configuration remain unsupported. Firebird wire encryption is implemented separately from TLS.
- Writes and explicit commits have real effects. Generator increments are not transactional, and unknown commit outcomes must not be automatically retried.
Validation and packages
Formatting, workspace tests and plugin Clippy pass. The extended portable Windows suites passed Firebird 3.0.14, 4.0.7 and 5.0.4, including SQL data roundtrips with long binary/Unicode BLOBs, exact decimals, identity and computed columns. The 17-job native platform/live matrix passed on the Beta.6 runtime and dialect correction. Every temporary local server, database, credential and test profile was removed; normal Tabularis configuration hashes were unchanged.
The release workflow reruns its required checks before publishing Linux x64/ARM64, macOS x64/ARM64 and Windows x64 packages. Each ZIP includes executable, manifest and license notices. default.tabularium is the standalone manifest asset. GitHub publication does not confirm registry ingestion/signing or replace the remaining validation above.
Firebird driver v0.2.0-beta.5
Firebird driver 0.2.0-beta.5
Writable prerelease from TabularisDB/tabularis-firebird-plugin. Earlier release assets and tags remain unchanged; the previously published v0.1.0 is the read-only stable release in the original repository.
Changes since 0.2.0-beta.4
- Fix connection startup in hosts that validate connection-local data types. Firebird's
BOOLEANtype now uses the supportedothercategory; the SQL type and values remain Boolean. The previousbooleancategory made the host reject metadata after a successful connection test. Contract tests now reject unsupported categories in both the static manifest and live metadata responses. - Add an isolated Windows launcher for testing the actual React frontend, web transport and application APIs with disposable Firebird. Explicit runtime paths and a secrets provider that refuses OS credential access protect the normal profile. Native Tauri transport and Linux/macOS GUI validation remain separate checks.
Changes since 0.2.0-beta.3
- Fix Windows cancellation when a TCP write is blocked by a full send buffer. Cancellable sockets use nonblocking reads/writes and bounded WSAPoll readiness waits. Waiting does not add a query deadline or replay bytes after a genuine I/O failure. A regression first establishes stalled send progress, then requires cancellation within two seconds.
- Add disposable Windows operational tests on Firebird 3/4/5: terminate the complete server with an open transaction, verify the plugin reports failure, restart the server, check rollback and resume work in the same plugin process. All three local versions passed.
- Record a bounded 30-second workload per engine with 1,000 rows and 512-character payloads per request. CI retains JSON reports for request rate, p50/p95 latency and the plugin working set. Durations up to ten minutes can be requested locally. These measurements are not long-term performance guarantees.
- Add a dependency-free registry verification script for the Ed25519 JWS, signed release identity and all six signed download hashes. Verification passed for the registry's approved Beta.3 entry; native registry install/update/uninstall testing remains outstanding.
Changes since 0.2.0-beta.1
- Fix Windows receives that can remain blocked after socket shutdown. A shared attachment cancellation signal is checked between short receive waits, including during authentication and session reuse. Ordinary receive waits keep retrying until data or cancellation arrives, so an unlimited query does not acquire a new query deadline. Failed writes are not retried.
- Add optional
get_session_statewith a requiredsession_id. It returns the actual retained transaction state without opening a connection or executing SQL; unknown sessions report false. Compatible hosts can refresh their transaction indicator after a cancelled or failed call. - Explicitly extend generic SQL syntax instead of inheriting the host's PostgreSQL defaults. Firebird PSQL execution support is prepared in host PR #1462; its syntax flag and routine menus remain disabled pending a compatible host release, registry schema and native UI validation.
- Add bounded workload and failure-injection tests: large row/BLOB results, combined batch limits and rollback, concurrent writers and row-lock conflicts, loss of an already-committed COMMIT reply, server attachment termination, and stdio request-queue pressure. Unknown commit outcomes are never replayed.
- Run live Firebird 3/4/5 suites on native Linux x64 CI using pinned official Docker images, alongside the Windows suites. Verify the real host editor splitter and plugin stdio together with procedures/local routines, functions, triggers, packages and EXECUTE BLOCK on Firebird 3/4/5.
Included from 0.2.0-beta.1
- Execute parameterized INSERT/UPDATE/DELETE, RETURNING and atomic query batches. Grid mutations require the complete primary key and roll back if they match multiple rows. Unknown commit outcomes are reported without retrying.
- Keep interactive transactions on the editor's session, including savepoints, isolation options and retaining operations. Errors, cancellation, deadlines, session release and process exit roll back pending changes.
- Interrupt matching requests and honor connect/query timeouts. Bound retained rows, JSON result size and decoded BLOB size; oversized results fail without returning partial data.
- Generate table, column, index, foreign-key and view DDL. Discover Firebird 4+ types, public package routines, legacy UDF parameters, triggers and sequence metadata. Add routine-call/template/edit/drop and trigger-management RPCs.
- Return detailed prepare-only execution plans without executing the statement.
- Negotiate ChaCha64/ChaCha encryption, retaining Arc4 compatibility for Firebird 3. Require wire encryption by default, with explicit policy overrides. Only Firebird 3+ with SRP authentication is supported.
- Configure SQL roles and connection character sets globally or per connection. Preserve non-ASCII metadata names and mixed-charset text BLOBs, including long bound text; binary bytes remain unchanged. Unrepresentable characters fail explicitly.
Compatibility and limitations
- This beta enables writes. Check transaction boundaries before running statements; explicit earlier commits cannot be undone by a later batch failure. Firebird generator increments are not transactional.
- Servers with wire encryption disabled require an explicit
wire_cryptsetting ofenabledordisabled. Arc4 can be disabled for modern-only connections. Firebird wire encryption is separate from TLS; embedded mode and TLS configuration are unsupported. - Released hosts can break Firebird PSQL bodies. Routine-management menus remain disabled; send complete statements through the RPC interface. The companion host patch is not included in these plugin archives. Native editor/DDL/transaction UX, long-term load/soak validation, server-restart validation outside Windows and live database validation on Linux ARM64/macOS remain outstanding.
- Dedicated BLOB export/preview, lossless SQL export/import, runtime query analysis, arrays and custom BLOB subtypes are not implemented. Primary-key/identity status changes require explicit SQL.
- Host query-timeout UI support depends on the registry schema; use the plugin timeout setting or explicit connection parameter. Older hosts that discard a cancelled response can temporarily show stale transaction state. The new state RPC requires a compatible host before it can refresh that indicator.
- UTF8 is recommended. Firebird applies the chosen connection character set and rejects text it cannot represent; other legacy codecs have not each had a language-specific live roundtrip.
See DEVELOPMENT.md for the complete checklist and transaction semantics.
Validation and packages
Local workspace tests, formatting and Clippy pass. Portable Windows and native Linux x64 tests against Firebird 3/4/5 cover writes/rollback, sessions, metadata, DDL, plans, cancellation/timeouts, roles, text/BLOB encoding, encryption policies and failure injection. Windows fixtures use Firebird 3.0.14, 4.0.7 and 5.0.4. Temporary test servers, databases and credentials are removed after testing.
The release workflow must pass all checks before publishing: native build/unit/protocol/package tests for Linux x64/ARM64, macOS x64/ARM64 and Windows x64, plus live Firebird 3/4/5 tests. Each ZIP includes the executable, manifest and license notices; default.tabularium is the standalone manifest asset. GitHub publication does not itself confirm registry ingestion or registry signing.
Firebird driver v0.2.0-beta.4
Firebird driver 0.2.0-beta.4
Writable prerelease from TabularisDB/tabularis-firebird-plugin. Earlier release assets and tags remain unchanged; the previously published v0.1.0 is the read-only stable release in the original repository.
Changes since 0.2.0-beta.3
- Fix Windows cancellation when a TCP write is blocked by a full send buffer. Cancellable sockets use nonblocking reads/writes and bounded WSAPoll readiness waits. Waiting does not add a query deadline or replay bytes after a genuine I/O failure. A regression first establishes stalled send progress, then requires cancellation within two seconds.
- Add disposable Windows operational tests on Firebird 3/4/5: terminate the complete server with an open transaction, verify the plugin reports failure, restart the server, check rollback and resume work in the same plugin process. All three local versions passed.
- Record a bounded 30-second workload per engine with 1,000 rows and 512-character payloads per request. CI retains JSON reports for request rate, p50/p95 latency and the plugin working set. Durations up to ten minutes can be requested locally. These measurements are not long-term performance guarantees.
- Add a dependency-free registry verification script for the Ed25519 JWS, signed release identity and all six signed download hashes. Verification passed for the registry's approved Beta.3 entry; native registry install/update/uninstall testing remains outstanding.
Changes since 0.2.0-beta.1
- Fix Windows receives that can remain blocked after socket shutdown. A shared attachment cancellation signal is checked between short receive waits, including during authentication and session reuse. Ordinary receive waits keep retrying until data or cancellation arrives, so an unlimited query does not acquire a new query deadline. Failed writes are not retried.
- Add optional
get_session_statewith a requiredsession_id. It returns the actual retained transaction state without opening a connection or executing SQL; unknown sessions report false. Compatible hosts can refresh their transaction indicator after a cancelled or failed call. - Explicitly extend generic SQL syntax instead of inheriting the host's PostgreSQL defaults. Firebird PSQL execution support is prepared in host PR #1462; its syntax flag and routine menus remain disabled pending a compatible host release, registry schema and native UI validation.
- Add bounded workload and failure-injection tests: large row/BLOB results, combined batch limits and rollback, concurrent writers and row-lock conflicts, loss of an already-committed COMMIT reply, server attachment termination, and stdio request-queue pressure. Unknown commit outcomes are never replayed.
- Run live Firebird 3/4/5 suites on native Linux x64 CI using pinned official Docker images, alongside the Windows suites. Verify the real host editor splitter and plugin stdio together with procedures/local routines, functions, triggers, packages and EXECUTE BLOCK on Firebird 3/4/5.
Included from 0.2.0-beta.1
- Execute parameterized INSERT/UPDATE/DELETE, RETURNING and atomic query batches. Grid mutations require the complete primary key and roll back if they match multiple rows. Unknown commit outcomes are reported without retrying.
- Keep interactive transactions on the editor's session, including savepoints, isolation options and retaining operations. Errors, cancellation, deadlines, session release and process exit roll back pending changes.
- Interrupt matching requests and honor connect/query timeouts. Bound retained rows, JSON result size and decoded BLOB size; oversized results fail without returning partial data.
- Generate table, column, index, foreign-key and view DDL. Discover Firebird 4+ types, public package routines, legacy UDF parameters, triggers and sequence metadata. Add routine-call/template/edit/drop and trigger-management RPCs.
- Return detailed prepare-only execution plans without executing the statement.
- Negotiate ChaCha64/ChaCha encryption, retaining Arc4 compatibility for Firebird 3. Require wire encryption by default, with explicit policy overrides. Only Firebird 3+ with SRP authentication is supported.
- Configure SQL roles and connection character sets globally or per connection. Preserve non-ASCII metadata names and mixed-charset text BLOBs, including long bound text; binary bytes remain unchanged. Unrepresentable characters fail explicitly.
Compatibility and limitations
- This beta enables writes. Check transaction boundaries before running statements; explicit earlier commits cannot be undone by a later batch failure. Firebird generator increments are not transactional.
- Servers with wire encryption disabled require an explicit
wire_cryptsetting ofenabledordisabled. Arc4 can be disabled for modern-only connections. Firebird wire encryption is separate from TLS; embedded mode and TLS configuration are unsupported. - Released hosts can break Firebird PSQL bodies. Routine-management menus remain disabled; send complete statements through the RPC interface. The companion host patch is not included in these plugin archives. Native editor/DDL/transaction UX, long-term load/soak validation, server-restart validation outside Windows and live database validation on Linux ARM64/macOS remain outstanding.
- Dedicated BLOB export/preview, lossless SQL export/import, runtime query analysis, arrays and custom BLOB subtypes are not implemented. Primary-key/identity status changes require explicit SQL.
- Host query-timeout UI support depends on the registry schema; use the plugin timeout setting or explicit connection parameter. Older hosts that discard a cancelled response can temporarily show stale transaction state. The new state RPC requires a compatible host before it can refresh that indicator.
- UTF8 is recommended. Firebird applies the chosen connection character set and rejects text it cannot represent; other legacy codecs have not each had a language-specific live roundtrip.
See DEVELOPMENT.md for the complete checklist and transaction semantics.
Validation and packages
Local workspace tests, formatting and Clippy pass. Portable Windows and native Linux x64 tests against Firebird 3/4/5 cover writes/rollback, sessions, metadata, DDL, plans, cancellation/timeouts, roles, text/BLOB encoding, encryption policies and failure injection. Windows fixtures use Firebird 3.0.14, 4.0.7 and 5.0.4. Temporary test servers, databases and credentials are removed after testing.
The release workflow must pass all checks before publishing: native build/unit/protocol/package tests for Linux x64/ARM64, macOS x64/ARM64 and Windows x64, plus live Firebird 3/4/5 tests. Each ZIP includes the executable, manifest and license notices; default.tabularium is the standalone manifest asset. GitHub publication does not itself confirm registry ingestion or registry signing.
Firebird driver v0.2.0-beta.3
Firebird driver 0.2.0-beta.3
Second published prerelease from TabularisDB/tabularis-firebird-plugin. The beta.2 tag failed its Windows CI gate and was not published; beta.3 includes the receive-cancellation correction. This remains a writable beta; the previously published v0.1.0 is the read-only stable release in the original repository. Existing beta.1 assets and the failed beta.2 tag are unchanged.
Changes since 0.2.0-beta.1
- Fix Windows receives that can remain blocked after socket shutdown. A shared attachment cancellation signal is checked between short receive waits, including during authentication and session reuse. Ordinary receive waits keep retrying until data or cancellation arrives, so an unlimited query does not acquire a new query deadline. Failed writes are not retried.
- Add optional
get_session_statewith a requiredsession_id. It returns the actual retained transaction state without opening a connection or executing SQL; unknown sessions report false. Compatible hosts can refresh their transaction indicator after a cancelled or failed call. - Explicitly extend generic SQL syntax instead of inheriting the host's PostgreSQL defaults. Firebird PSQL execution support is prepared in host PR #1462; its syntax flag and routine menus remain disabled pending a compatible host release, registry schema and native UI validation.
- Add bounded workload and failure-injection tests: large row/BLOB results, combined batch limits and rollback, concurrent writers and row-lock conflicts, loss of an already-committed COMMIT reply, server attachment termination, and stdio request-queue pressure. Unknown commit outcomes are never replayed.
- Run live Firebird 3/4/5 suites on native Linux x64 CI using pinned official Docker images, alongside the Windows suites. Verify the real host editor splitter and plugin stdio together with procedures/local routines, functions, triggers, packages and EXECUTE BLOCK on Firebird 3/4/5.
Included from 0.2.0-beta.1
- Execute parameterized INSERT/UPDATE/DELETE, RETURNING and atomic query batches. Grid mutations require the complete primary key and roll back if they match multiple rows. Unknown commit outcomes are reported without retrying.
- Keep interactive transactions on the editor's session, including savepoints, isolation options and retaining operations. Errors, cancellation, deadlines, session release and process exit roll back pending changes.
- Interrupt matching requests and honor connect/query timeouts. Bound retained rows, JSON result size and decoded BLOB size; oversized results fail without returning partial data.
- Generate table, column, index, foreign-key and view DDL. Discover Firebird 4+ types, public package routines, legacy UDF parameters, triggers and sequence metadata. Add routine-call/template/edit/drop and trigger-management RPCs.
- Return detailed prepare-only execution plans without executing the statement.
- Negotiate ChaCha64/ChaCha encryption, retaining Arc4 compatibility for Firebird 3. Require wire encryption by default, with explicit policy overrides. Only Firebird 3+ with SRP authentication is supported.
- Configure SQL roles and connection character sets globally or per connection. Preserve non-ASCII metadata names and mixed-charset text BLOBs, including long bound text; binary bytes remain unchanged. Unrepresentable characters fail explicitly.
Compatibility and limitations
- This beta enables writes. Check transaction boundaries before running statements; explicit earlier commits cannot be undone by a later batch failure. Firebird generator increments are not transactional.
- Servers with wire encryption disabled require an explicit
wire_cryptsetting ofenabledordisabled. Arc4 can be disabled for modern-only connections. Firebird wire encryption is separate from TLS; embedded mode and TLS configuration are unsupported. - Released hosts can break Firebird PSQL bodies. Routine-management menus remain disabled; send complete statements through the RPC interface. The companion host patch is not included in these plugin archives. Native editor/DDL/transaction UX, sustained-load/RSS measurement, blocked-write/backpressure interruption on Windows, full server restart tests and live database validation on Linux ARM64/macOS remain outstanding.
- Dedicated BLOB export/preview, lossless SQL export/import, runtime query analysis, arrays and custom BLOB subtypes are not implemented. Primary-key/identity status changes require explicit SQL.
- Host query-timeout UI support depends on the registry schema; use the plugin timeout setting or explicit connection parameter. Older hosts that discard a cancelled response can temporarily show stale transaction state. The new state RPC requires a compatible host before it can refresh that indicator.
- UTF8 is recommended. Firebird applies the chosen connection character set and rejects text it cannot represent; other legacy codecs have not each had a language-specific live roundtrip.
See DEVELOPMENT.md for the complete checklist and transaction semantics.
Validation and packages
Local workspace tests, formatting and Clippy pass. Portable Windows and native Linux x64 tests against Firebird 3/4/5 cover writes/rollback, sessions, metadata, DDL, plans, cancellation/timeouts, roles, text/BLOB encoding, encryption policies and failure injection. Windows fixtures use Firebird 3.0.14, 4.0.7 and 5.0.4. Temporary test servers, databases and credentials are removed after testing.
The release workflow must pass all checks before publishing: native build/unit/protocol/package tests for Linux x64/ARM64, macOS x64/ARM64 and Windows x64, plus live Firebird 3/4/5 tests. Each ZIP includes the executable, manifest and license notices; default.tabularium is the standalone manifest asset. GitHub publication does not itself confirm registry ingestion or registry signing.
Firebird driver v0.2.0-beta.1
Firebird driver 0.2.0-beta.1
First prerelease from TabularisDB/firebird-plugin, containing the current driver-completion work. This is a writable beta; the previously published v0.1.0 remains the read-only stable release in the original repository.
Changes since 0.1.0
- Execute parameterized INSERT/UPDATE/DELETE, RETURNING and atomic query batches. Grid mutations require the complete primary key and roll back if they match multiple rows. Unknown commit outcomes are reported without retrying.
- Keep interactive transactions on the editor's session, including savepoints, isolation options and retaining operations. Errors, cancellation, deadlines, session release and process exit roll back pending changes.
- Interrupt matching requests and honor connect/query timeouts. Bound retained rows, JSON result size and decoded BLOB size; oversized results fail without returning partial data.
- Generate table, column, index, foreign-key and view DDL. Discover Firebird 4+ types, public package routines, legacy UDF parameters, triggers and sequence metadata. Add routine-call/template/edit/drop and trigger-management RPCs.
- Return detailed prepare-only execution plans without executing the statement.
- Negotiate ChaCha64/ChaCha encryption, retaining Arc4 compatibility for Firebird 3. Require wire encryption by default, with explicit policy overrides. Only Firebird 3+ with SRP authentication is supported.
- Configure SQL roles and connection character sets globally or per connection. Preserve non-ASCII metadata names and mixed-charset text BLOBs, including long bound text; binary bytes remain unchanged. Unrepresentable characters fail explicitly.
Compatibility and limitations
- This beta enables writes. Check transaction boundaries before running statements; explicit earlier commits cannot be undone by a later batch failure. Firebird generator increments are not transactional.
- Servers with wire encryption disabled require an explicit
wire_cryptsetting ofenabledordisabled. Arc4 can be disabled for modern-only connections. Firebird wire encryption is separate from TLS; embedded mode and TLS configuration are unsupported. - The host's generic SQL splitter can break Firebird PSQL bodies. Routine-management menus remain disabled; send complete statements through the RPC interface. Native editor/DDL/transaction UX and Linux/macOS live database validation remain outstanding.
- Dedicated BLOB export/preview, lossless SQL export/import, runtime query analysis, arrays and custom BLOB subtypes are not implemented. Primary-key/identity status changes require explicit SQL.
- Host query-timeout UI support depends on the registry schema; use the plugin timeout setting or explicit connection parameter. A host that discards a cancelled response can temporarily show stale transaction state, although the transaction has been aborted.
- UTF8 is recommended. Firebird applies the chosen connection character set and rejects text it cannot represent; other legacy codecs have not each had a language-specific live roundtrip.
See DEVELOPMENT.md for the complete checklist and transaction semantics.
Validation and packages
Local workspace tests, formatting and Clippy pass. Portable Windows tests against Firebird 3.0.14, 4.0.7 and 5.0.4 cover writes/rollback, sessions, metadata, DDL, plans, cancellation/timeouts, roles, text/BLOB encoding and encryption policies. Temporary test servers and databases are removed after testing.
The release workflow must pass all checks before publishing: native build/unit/protocol/package tests for Linux x64/ARM64, macOS x64/ARM64 and Windows x64, plus live Firebird 3/4/5 tests. Each ZIP includes the executable, manifest and license notices; default.tabularium is the standalone manifest asset. GitHub publication does not itself confirm registry ingestion or registry signing.