-
qbit-sql-workbench 1.0.0-RC.10 Pre-Release
released this
2026-10-15 22:12:51 +00:00 | 6 commits to develop since this releaseqbit-sql-workbench 1.0.0-RC.10 release candidate. RC.9 and earlier remain immutable. Requires QQQ 4.1.0-RC.15 or later.
Since RC.9
- feat(ui-api): extension for QQQ UI API 1.6.0 (operationIds, BasicErrorResponseV1, QQQ 4.1.0-RC.15) (#28)
The help bundle ships the qbit's in-app help through QQQ help bundles (core < qbit < host < user edit), so hosts no longer need staging copies.
No GA approval is implied.
The signed annotated tag
v1.0.0-RC.10fixes source1cc0e61onrelease/1.0.Downloads
-
qbit-sql-workbench 1.0.0-RC.9 Pre-Release
released this
2026-10-15 03:23:41 +00:00 | 11 commits to develop since this releaseqbit-sql-workbench 1.0.0-RC.9 release candidate. RC.8 and earlier remain immutable. Requires QQQ 4.1.0-RC.7 or later.
Since RC.8
- feat(help): qbit-sql-workbench help bundle via QQQ help bundles, with coverage gate (#26)
- fix(help): help bundle version comes from the build, not a hardcoded SNAPSHOT (#27)
The help bundle ships the qbit's in-app help through QQQ help bundles (core < qbit < host < user edit), so hosts no longer need staging copies.
No GA approval is implied.
The signed annotated tag
v1.0.0-RC.9fixes source6903d7fonrelease/1.0.Downloads
-
qbit-sql-workbench 1.0.0-RC.8 Pre-Release
released this
2026-10-14 22:53:17 +00:00 | 17 commits to develop since this releaseqbit-sql-workbench 1.0.0-RC.8 release candidate. RC.7 and earlier remain immutable. Requires QQQ 4.1.0-RC.6 or later.
Since RC.7
- Indexes on
result_snapshot.notebook_idandexecution.notebook_id(#23). - A guardrail test that every table reference has a foreign key (#24).
No GA approval is implied.
The signed annotated tag
v1.0.0-RC.8fixes source2a2bd15onrelease/1.0.Downloads
- Indexes on
-
qbit-sql-workbench 1.0.0-RC.7 Pre-Release
released this
2026-10-14 22:46:16 +00:00 | 23 commits to develop since this releaseqbit-sql-workbench 1.0.0-RC.7 release candidate. RC.6 and earlier remain immutable. Requires QQQ 4.1.0-RC.6 or later.
Since RC.6
No GA approval is implied.
The signed annotated tag
v1.0.0-RC.7fixes source6294c52onrelease/1.0.Downloads
-
qbit-sql-workbench 1.0.0-RC.6 Pre-Release
released this
2026-10-14 12:39:06 +00:00 | 30 commits to develop since this releaseqbit-sql-workbench 1.0.0-RC.6 release candidate. RC.5 and earlier remain immutable.
Since RC.5
- UI API extension on QQQ 4.1.0-RC.6, with a committed OpenAPI document; guardrails enforced (#21)
No GA approval is implied.
The signed annotated tag
v1.0.0-RC.6fixes sourceaa13c13onrelease/1.0.Downloads
-
qbit-sql-workbench 1.0.0-RC.5 Pre-Release
released this
2026-10-12 21:39:13 +00:00 | 39 commits to develop since this releaseqbit-sql-workbench
1.0.0-RC.5is published to Maven Central (com.kingsrook.qbits:qbit-sql-workbench:1.0.0-RC.5) fromrelease/1.0on 2026-10-12. It requires QQQ4.1.0-RC.4or later. Owner approval 2026-10-12: "all approved and releases approved". This is a prerelease.Same as 1.0.0-RC.4 plus #16: workbench users get
sql_workbench_result_snapshot.insert, so pinning a result works when the host enables QQQ core permission enforcement (with a test). Hosts that grant the permission lists fromSqlWorkbenchQBitConfigpick it up automatically.The signed annotated tag
v1.0.0-RC.5fixes source6a0eae1(the orb's version bump on the merge of develop intorelease/1.0).1.0.0-RC.3on Central is an accidental republish of RC.2; do not use it.Downloads
-
qbit-sql-workbench 1.0.0-RC.4 Pre-Release
released this
2026-10-12 21:22:00 +00:00 | 46 commits to develop since this releaseqbit-sql-workbench
1.0.0-RC.4is published to Maven Central (com.kingsrook.qbits:qbit-sql-workbench:1.0.0-RC.4) fromrelease/1.0(CircleCI 40) on 2026-10-12. It requires QQQ4.1.0-RC.4or later and a Next UI that renders theSQL_WORKBENCHwidget (v1.0.0-RC.13or later; the record developer panel needs the developer view, from Next RC.15). Owner approval 2026-10-12: "all approved and releases approved". This is a prerelease.Version note:
1.0.0-RC.3on Maven Central is an accidental republish of the RC.2 code by an RC-tag build; do not use it. This candidate, RC.4, carries the changes the changelog lists under 1.0.0-RC.3. RC tags no longer trigger publishes (#15).The signed annotated tag
v1.0.0-RC.4fixes sourcea0e3c22(the orb's version bump on the merge of develop intorelease/1.0).Included: #7 snake_case QQQ names with the
sql_workbench_prefix (breaking; see UPGRADE.md), #9 app home dashboard, Runner nav entry and main-tables-only nav, #6 record developer panel (links open SQL in the Runner), #14 record-screen polish. Not included: #16 (result-snapshot insert permission for users under core enforcement) follows in the next candidate.Notes from the changelog:
Added
- App home dashboard. The
sqlWorkbenchapp's home is now an information dashboard of real data, read in the viewer's session (permissions and record locks apply): summary tiles and links, runs per day, recent notebooks, recent runs, slowest and failed queries, most-used notebooks, shared notebooks, committed writes, and (workbench admins only) activity by user. Each widget has an honest empty state. - Runner. The notebook editor (
SQL_WORKBENCHwidget) moves to its own nav entry: thesqlWorkbenchRunnerchild app, labeled Runner. Open a notebook with/app/sqlWorkbenchRunner?notebook=<id>. - On a notebook's record view: an Open in Runner widget, and a Runs child list (its executions the viewer may see) through the new join
sql_workbench_notebook_join_sql_workbench_execution. SqlWorkbenchIntegrations: opt-in ESB (esbTableNames) and Quick Search (quickSearchTables) hooks for the main tables, with no dependency on either module.- Record developer panel "SQL Workbench" (
SqlWorkbenchDeveloperPanelProvider, registered bySqlWorkbenchDeveloperPanelsMetaDataProducer): read-onlySELECTs for the record and its table in the backend's own names, backend details, and links that open them in the Runner as a new cell (/app/sqlWorkbenchRunner?sql=&backend=, never run). Requires QQQ 4.1.0-RC.4 (the developer panel contract) and a Next UI with the Runner?sql=support.
Changed
- The nav lists only the main tables: Notebooks and the execution audit, after the Runner. Cells, versions, pinned results and shares are child lists on a notebook (still standard tables, reachable by URL and API). The app's widget list is now the dashboard, not the
SQL_WORKBENCHwidget; links to/app/sqlWorkbenchthat expected the editor should point at/app/sqlWorkbenchRunner. - The notebook record's header shows the description.
- Names follow the owner rule: lowercase snake_case, prefixed with the qbit's name (metadata only, no DDL). Tables
sql_workbench_notebook,sql_workbench_cell,sql_workbench_notebook_version,sql_workbench_result_snapshot,sql_workbench_notebook_share,sql_workbench_execution(they now equal their backend table names); possible-value sourcesql_workbench_share_audience_type; permissionssql_workbench.*,sql_workbench_admin.hasAccessand<table>.readetc.; security key typessql_workbench_user(all-accesssql_workbench_all_access) andsql_workbench_audience; joinssql_workbench_notebook_join_sql_workbench_*. tableNamePrefix(and the QBit namespace) is normalized to lowercase snake_case and joined with one_.
Deprecated
LEGACY_TABLE_NAMEon each entity,ShareAudienceType.LEGACY_NAMEandSqlWorkbenchQBitConfig.LEGACY_*hold the pre-RC.3 names, for migrating stored references only.
Upgrade from RC.2
- Follow UPGRADE.md: grant the renamed permissions and rename stored table names (audit, saved views and reports). No DDL.
Downloads
- App home dashboard. The
-
qbit-sql-workbench 1.0.0-RC.2 Pre-Release
released this
2026-10-12 17:39:28 +00:00 | 69 commits to develop since this release1.0.0-RC.3 on Maven Central is an accidental republish of this RC.2 code by a tag build; do not use it. The next real candidate is 1.0.0-RC.4.
qbit-sql-workbench
1.0.0-RC.2is published to Maven Central (com.kingsrook.qbits:qbit-sql-workbench:1.0.0-RC.2) fromrelease/1.0(CircleCI 16) on 2026-10-12. It requires QQQ4.1.0-RC.4or later and a Next UI that renders theSQL_WORKBENCHwidget (v1.0.0-RC.13or later). Owner approval 2026-10-12: "all approved and releases approved". This is a prerelease; 1.0.0 is not final.The signed annotated tag
v1.0.0-RC.2fixes source0d8af84(version bump on the merge of develop into release/1.0, which includes #5). The RC.1 version bump never reachedrelease/1.0because the CircleCI deploy key is read only, so the merge commit set<revision>to1.0.0-RC.1and the bump to RC.2 was pushed by hand.Notes from the changelog:
The workbench's data becomes standard QQQ tables, secured by QQQ's own mechanisms instead of being hidden (#3). Requires QQQ
4.1.0-RC.4or later (qqq#1073).Added
sqlWorkbenchNotebookShare: share a notebook, read-only, with a user, a group, or everyone (ALL, the shared library). Publishing in the notebook UI now writes anALLshare; a notebook'svisibilityfollows its shares.- Record security locks on every table, enforced by QQQ's core actions (table UI,
/qqq/v1table API, export, PVS lookups, processes, the workbench endpoints): owners see and change their notebooks and children, share audiences read them, users read their own execution audit, admins (sqlWorkbenchAdmin.hasAccess) hold the all-access key. Security key typessqlWorkbenchUserandsqlWorkbenchAudience;SqlWorkbenchSecurity.applyToSession(qInstance, session, groups)puts the keys in a session. - Per-table
read/insert/edit/deletepermissions, listed per role bySqlWorkbenchQBitConfig.getUserPermissionNames(),getSharePermissionNames()andgetAdminPermissionNames(). - All six tables are children of the
sqlWorkbenchapp, with record-view sections, child-list widgets (cells, shares, pinned results, versions) and SQL / JSON code-editor adornments. - Record actions (processes on tables, not in the nav): Share Notebook, Duplicate Notebook, Restore Version.
- Table customizers that keep the notebook invariants for every entry point: ownership from the session, cell validation and ordering, one version per change, share keys and visibility, append-only versions and audit (also for admins), pinned results only from pinning, cascading notebook deletes.
- Record-level QQQ audits for notebooks, cells, pinned results and shares.
Changed
NotebookServiceand the history endpoint run as the caller's session through the standard table actions (no system-user bypass); the explicit owner / share checks stay as defense in depth.- The tables' permission rules are per-table permissions instead of
sqlWorkbenchAdmin.hasAccess. Hosts must grant the new lists and callapplyToSession. - Built against QQQ
4.1.0-RC.4.
Upgrade from RC.1
- Run the share-table DDL from
docs/ddl/postgres.sql: it createssql_workbench_notebook_shareand backfills anallshare for eachSHAREDnotebook (additive, idempotent; owners unchanged). - Grant the permission lists and call
SqlWorkbenchSecurity.applyToSessionin the authentication customizer.
Downloads