diff --git a/.tabularium b/.tabularium index e90433e..a963919 100644 --- a/.tabularium +++ b/.tabularium @@ -1,7 +1,7 @@ { "$schema": "https://registry.tabularis.dev/manifest.schema.json?kind=driver", "name": "sqlserver", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "description": "Full-featured Microsoft SQL Server driver for Tabularis with schema browsing, query execution, visual plans, type-aware row editing, DDL, routines, triggers, BLOBs, and database-user management.", "category": "database", "tags": ["driver", "sqlserver", "mssql", "sql", "relational", "database-driver"], @@ -53,7 +53,7 @@ "readme": "README.md", "homepage": "https://github.com/TabularisDB/tabularis-sqlserver-plugin", "documentation_url": "https://github.com/TabularisDB/tabularis-sqlserver-plugin#readme", - "min_runtime_version": "0.24.1-2", + "min_runtime_version": "0.25.1-5", "support": { "issues_url": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/issues" }, diff --git a/CHANGELOG.md b/CHANGELOG.md index 621945c..bd17ad1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,12 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.0.0-beta.3] - 2026-09-29 + ### Added - Opt-in `get_table_query_template` RPC for driver-owned SELECT, UPDATE and DELETE previews, with SQL Server `TOP`, schema qualification and identifier - quoting (#26). Older hosts keep their existing generation path; no minimum - runtime version increase is required for this optional extension. + quoting (#26). +- Live SQL Server regression coverage and a reusable desktop fixture for + escaped identifiers, unique UPDATE placeholders and guarded writes. + +### Changed + +- Require Tabularis `0.25.1-5` or newer so this release's Generate SQL fix is + paired with the host extension from Tabularis PR #818. The optional RPC is + backward-compatible, but this release intentionally gates installation on + a host that implements the complete fix. ### Fixed @@ -113,6 +123,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 regression coverage for pool identity, million-row truncation and concurrent responsiveness. -[Unreleased]: https://github.com/TabularisDB/tabularis-sqlserver-plugin/compare/v1.0.0-beta.2...HEAD +[Unreleased]: https://github.com/TabularisDB/tabularis-sqlserver-plugin/compare/v1.0.0-beta.3...HEAD +[1.0.0-beta.3]: https://github.com/TabularisDB/tabularis-sqlserver-plugin/compare/v1.0.0-beta.2...v1.0.0-beta.3 [1.0.0-beta.2]: https://github.com/TabularisDB/tabularis-sqlserver-plugin/compare/v1.0.0-beta.1...v1.0.0-beta.2 [1.0.0-beta.1]: https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/tag/v1.0.0-beta.1 diff --git a/Cargo.lock b/Cargo.lock index 7da54bd..bad0c3f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1292,7 +1292,7 @@ dependencies = [ [[package]] name = "sqlserver-plugin" -version = "1.0.0-beta.2" +version = "1.0.0-beta.3" dependencies = [ "base64", "chrono", diff --git a/Cargo.toml b/Cargo.toml index c9d57ec..952e9c5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "sqlserver-plugin" -version = "1.0.0-beta.2" +version = "1.0.0-beta.3" edition = "2021" description = "Tabularis driver plugin for Microsoft SQL Server" license = "Apache-2.0" diff --git a/README.md b/README.md index 963ae79..b756953 100644 --- a/README.md +++ b/README.md @@ -18,14 +18,12 @@ A [Microsoft SQL Server](https://www.microsoft.com/sql-server) plugin for [Tabul This plugin enables Tabularis to connect to SQL Server instances, providing schema introspection, query execution, full CRUD, DDL, trigger and stored-routine management, BLOB handling, database-user management, and visual execution plans through a JSON-RPC 2.0 over stdio interface. It is written in Rust on top of Microsoft's [`mssql-tds`](https://github.com/microsoft/mssql-rust) protocol implementation (via [`mssql-tiberius-bridge`](https://crates.io/crates/mssql-tiberius-bridge)) with [`deadpool`](https://crates.io/crates/deadpool) connection pooling. -> **Requires Tabularis v0.24.1-2 or later.** This plugin relies on raw plugin -> EXPLAIN output and plugin-provided parser bundle loading (v0.23.0) plus the -> connection-modal credential-hiding hook from -> [TabularisDB/tabularis#780](https://github.com/TabularisDB/tabularis/pull/780), -> first shipped in nightly -> [nightly-20260918-992d969](https://github.com/TabularisDB/tabularis/releases/tag/nightly-20260918-992d969) -> (app version `0.24.1-2`). Do not publish this candidate before a compatible -> host is available. +> **Requires Tabularis v0.25.1-5 or later.** Plugin v1.0.0-beta.3 pairs native +> SQL Server Generate SQL previews with the host extension from +> [TabularisDB/tabularis#818](https://github.com/TabularisDB/tabularis/pull/818). +> Update both the app and the plugin to get the complete TOP/LIMIT fix. +> The target host is nightly `0.25.1-5` or the following stable release; +> earlier hosts should remain on plugin v1.0.0-beta.2. **Discord** — [Join our Discord server](https://discord.com/invite/K2hmhfHRSt) and chat with the maintainers. diff --git a/docs/explain-architecture.md b/docs/explain-architecture.md index 024dfce..b99c6f7 100644 --- a/docs/explain-architecture.md +++ b/docs/explain-architecture.md @@ -18,6 +18,9 @@ isolated desktop loader. This repository contains the TypeScript parser, ESM package, IIFE and raw Rust handoff. The EXPLAIN contract requires Tabularis 0.23.0; plugin v1.0.0-beta.2 raises `.tabularium`'s overall runtime floor to 0.24.1-2 for the integrated-authentication UI and credential lifecycle. +Plugin v1.0.0-beta.3 raises the overall floor again to 0.25.1-5 to pair the +Generate SQL fix with the optional host template RPC; the EXPLAIN contract is +unchanged. The standalone site integration is in [TabularisDB/explain-plan#2](https://github.com/TabularisDB/explain-plan/pull/2). diff --git a/docs/query-templates.md b/docs/query-templates.md index b05745f..1b36578 100644 --- a/docs/query-templates.md +++ b/docs/query-templates.md @@ -2,7 +2,9 @@ The plugin advertises `capabilities.table_query_templates: true` and implements `get_table_query_template` for compatible Tabularis hosts. The request and result -are additive: existing RPC methods and the minimum runtime version are unchanged. +are additive and existing RPC methods are unchanged. Plugin v1.0.0-beta.3 +requires Tabularis `0.25.1-5` or newer as a distribution policy, pairing the +plugin with the first targeted host nightly containing PR #818. ```json { @@ -43,7 +45,7 @@ FROM [sales].[orders]; ## Local end-to-end verification See [query-templates-e2e.md](query-templates-e2e.md) for the joint host/plugin -setup, automated results, disposable SQL fixture and desktop acceptance checklist. +setup, automated checks, disposable SQL fixture and desktop acceptance checklist. ## Compatibility and rollout @@ -53,8 +55,9 @@ setup, automated results, disposable SQL fixture and desktop acceptance checklis retain legacy generation. Only a remote `-32601` selects the legacy fallback; real errors and malformed results are surfaced. 4. Release this plugin's template support. The full issue #26 fix requires both - the host extension and the plugin pagination fix. Older hosts continue working, - but their Generate SQL dialog still uses the old generation logic. + the host extension and the plugin pagination fix. The extension itself remains + optional, but this plugin release raises the installation floor so users get + both halves of the fix. Older hosts can continue using v1.0.0-beta.2. CREATE TABLE inspection remains unchanged in this extension. It is separate from these query templates and from the existing DDL RPC contract. @@ -84,4 +87,5 @@ plugin release; if it was already ingested, refresh its manifest afterward. This is a registry administrator's schema/configuration update, not a backend or SDK protocol change. No database migration, new API endpoint, historical release -archive rewrite or minimum-host-version increase is needed. +archive rewrite is needed. The schema registration itself does not require a +minimum-host-version increase; the release's host floor is a separate policy. diff --git a/docs/registry-entry.json b/docs/registry-entry.json index b22e6c2..61e1a9a 100644 --- a/docs/registry-entry.json +++ b/docs/registry-entry.json @@ -4,8 +4,19 @@ "description": "Full-featured Microsoft SQL Server driver for Tabularis with schema browsing, query execution, visual plans, type-aware row editing, DDL, routines, triggers, BLOBs, and database-user management.", "author": "Andrea Debernardi ", "homepage": "https://github.com/TabularisDB/tabularis-sqlserver-plugin", - "latest_version": "1.0.0-beta.2", + "latest_version": "1.0.0-beta.3", "releases": [ + { + "version": "1.0.0-beta.3", + "min_tabularis_version": "0.25.1-5", + "assets": { + "linux-x64": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/download/v1.0.0-beta.3/sqlserver-plugin-linux-x64.zip", + "linux-arm64": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/download/v1.0.0-beta.3/sqlserver-plugin-linux-arm64.zip", + "darwin-x64": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/download/v1.0.0-beta.3/sqlserver-plugin-darwin-x64.zip", + "darwin-arm64": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/download/v1.0.0-beta.3/sqlserver-plugin-darwin-arm64.zip", + "win-x64": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/releases/download/v1.0.0-beta.3/sqlserver-plugin-win-x64.zip" + } + }, { "version": "1.0.0-beta.2", "min_tabularis_version": "0.24.1-2", diff --git a/explain/package.json b/explain/package.json index f2448e9..7b5aeac 100644 --- a/explain/package.json +++ b/explain/package.json @@ -1,6 +1,6 @@ { "name": "@tabularis/explain-sqlserver", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "description": "SQL Server SHOWPLAN XML parser for Tabularis Visual EXPLAIN", "license": "Apache-2.0", "homepage": "https://github.com/TabularisDB/tabularis-sqlserver-plugin/tree/main/explain", diff --git a/ui/package-lock.json b/ui/package-lock.json index d0f3c61..9e5a6a6 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -1,12 +1,12 @@ { "name": "@tabularis/sqlserver-plugin-ui", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@tabularis/sqlserver-plugin-ui", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "devDependencies": { "@tabularis/plugin-api": "^0.1.1", "@types/react": "^19.2.7", diff --git a/ui/package.json b/ui/package.json index 3a55a8d..0a17eaa 100644 --- a/ui/package.json +++ b/ui/package.json @@ -1,7 +1,7 @@ { "name": "@tabularis/sqlserver-plugin-ui", "private": true, - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "description": "Connection-modal UI extension for the SQL Server plugin (Windows Authentication checkbox).", "type": "module", "scripts": {