Repository navigation
0.14.0
Object browsers that list only your tables
Six PostgreSQL-family engines were showing their own internals as if they were your data. A TimescaleDB database with two user tables listed 61 objects - 34 hypertable chunks from _timescaledb_internal, 22 from _timescaledb_catalog, 3 from _timescaledb_cache. AlloyDB Omni listed 10 for the same 2, Apache Cloudberry 4. Every engine's internal schemas are now excluded from a single, documented list, and extension-created schemas are excluded by ownership rather than by name, so a schema you created yourself is never hidden even if it shares a name with one of ours.
On CockroachDB the two panels disagreed with each other: the Monitoring overview counted 98 tables for the 2 the object browser listed, because crdb_internal objects reach pg_tables but not information_schema. Both readers now use one definition of what a table is.
A count nobody measured now reads as blank
PostgreSQL writes -1 into pg_class.reltuples for a table nothing has analysed yet. That was being clamped to 0, so every table in a freshly restored dump claimed to be empty until autovacuum caught up - two tables holding 5000 and 1200 rows both displayed "0 rows". They now show no count at all, which is the truth. A genuine empty table still reads 0, because that is a measurement.
Materialize and CockroachDB work instead of failing
Both engines had a blank object browser and a Monitoring page that showed a connection error. Both now read schema and render every panel. The schema query recovers from five separate gaps by retrying around whichever one the engine actually reports: the reserved MATERIALIZED keyword, a missing pg_total_relation_size(), json_agg() where only the jsonb_ form exists, a missing information_schema.constraint_column_usage, and a missing to_regclass(). Materialized views are listed beside tables, which matters on an engine whose users work with them rather than with base tables.
Statistics those engines do not publish are marked unavailable rather than reported as zero.
A dropped table no longer fails the whole schema read
The schema query listed relations and then resolved each name, and a table dropped between those two steps raised rather than answering nothing. Under concurrent DDL this killed 102 of 400 schema loads on PostgreSQL 18.4. The same harness now passes 400 of 400.
Monitoring tells two absences apart
A statistic an engine simply does not publish now says so, and no longer reads as a database fault. A query the engine actually refused still shows its own error, so a restriction you can act on stays visible: Apache Cloudberry's MPP planner message survives, while Materialize's missing functions read as a property of the engine. The distinction speaks each engine's own wording, not only PostgreSQL's.
Other fixes
- SQL Server, Oracle and libSQL overviews no longer report a size they could not read as 0 bytes
- Oracle Thick mode never loaded in a built image; the native addon path and the Linux client recipe are fixed (#538)
- Apache Doris reports its real build through
@@version_commentinstead of the fictitious5.7.99fromversion() - Dragonfly, Valkey and Garnet report their own version, and Dragonfly its
max_clients - The admin fleet view sums real byte figures instead of re-parsing display strings
- The login hero no longer overflows at 1280x800, and Geist resolves on
bodyinstead of falling back to the system font - The PostgreSQL agent grounding read aggregates columns per table, so extension catalogs no longer overflow the inventory budget
Agent
Nine more models now drive every surface, and refusals that named no remedy now name one.
Helm chart: 0.1.59
appVersion moves to 0.14.0 and the default image tag follows. No template, value or default behaviour changes.
Toolchain
Bun is pinned to 1.4.0, and Node in the image moves to 26.8.1. Production and development dependency groups are updated.
Contributors
This release carries 18 pull requests from eight people outside the maintainer, and most of what is described above came from them.
- @kaya-abdullah - recovered Materialize and CockroachDB, the largest change in this release (#578); read Doris's real build from
@@version_comment(#576); Dragonfly, Valkey and Garnet version reporting (#557); the scroll area viewport fix (#559) - @hasnaintypes - the login hero overflow at 1280x800 (#550); the admin fleet byte sum (#551); elkjs licence attribution (#552); and stale line-number citations replaced with named ones in the Oracle and MongoDB provider docs (#563, #581)
- @yusuf-gundogdu - the agent model sweeps that took nine more models to full coverage and turned bare refusals into ones that name a remedy (#539, #572); Google Cloud Marketplace in the distribution inventory (#577)
- @HasselNot7 - LF normalisation for every text file on checkout (#555) and the
.gitattributesdrift guard that keeps it honest (#562) - @koraysrn - aggregated the PostgreSQL agent grounding column read per table, so extension catalogs no longer overflow the inventory budget (#537)
- @v01dst -
@theme inlineso Geist resolves onbodyinstead of silently falling back to the system font (#561) - @Akimbo92i - libSQL overviews no longer report an unknown size as 0 bytes (#569)
- @cnYui - the same fix for SQL Server and Oracle (#579)
Thank you. Dependency updates in this release came from Dependabot.
Full changelog: 0.13.7...0.14.0