feat: registry-listing manifest fields, screenshots, and README polish - #18
Merged
Conversation
…sion .tabularium was missing every registry-listing field (category, tags, license, readme, homepage, documentation_url, support, color) -- present on already-published sibling plugins but absent here since the plugin has only ever shipped via GitHub Releases directly, never submitted to registry.tabularis.dev. The builtin driver's own definition has none of these either, confirming they're presentational-only for the registry's plugin-card/detail page, not consumed by Tabularis at runtime -- so no version bump is warranted here. Also updated README/CLAUDE.md's stale "pending sign-off" language (PR #577's checklist is now fully checked, though the PR itself is still open/unmerged), added a "From the Tabularium registry" placeholder install section matching the pattern used by already-published sibling plugins, and fixed the README's release badge -- it showed "no releases or repo not found" because every release so far is flagged prerelease: true and GitHub's /releases/latest API excludes those by design; switched to the ?include_prereleases badge variant.
Added 7 real screenshots (not mockups) captured against a live build of this plugin (v1.0.0-beta.4) connected to a real PostgreSQL instance: fresh install, database picker, connection form, successful test connection, saved connection card, multi-schema browsing, and a data grid showing a real enum column value -- the last one doubling as a live demonstration that the enum-extraction fix (issue #7) actually works. Wired the screenshots array into .tabularium (needed for the eventual Tabularium registry submission) and added a matching gallery section to the README so they're visible directly on GitHub too.
Added a plus icon (assets/plus.svg, matching the lucide icon set tabularis's own frontend uses) between the Tabularis and PostgreSQL logos so the header reads as "Tabularis + PostgreSQL" at a glance -- GitHub's README sanitizer strips inline style attributes, so this had to be an image rather than a styled text glyph to render reliably. Also self-hosted a copy of the PostgreSQL project's 3-colors logo (assets/postgresql-logo-3colors.png) instead of hotlinking wiki.postgresql.org, matching why postgresql-icon.svg is already self-hosted rather than pointed at a third party.
Version suggestionBased on this PR's title (
This is informational only — no tag or release is created automatically yet. |
tabularis 0.20.0 is the first release expected to ship the #614/#577 host-side fixes (capability-driven identifier quoting via sql_dialect, etc.) this plugin depends on for correct behavior under a non-"postgres" driver id. Declaring this so older runtimes are refused outright rather than silently misbehaving.
aesslinger
added a commit
that referenced
this pull request
Aug 14, 2026
Continuation of the beta line after PR #18 (registry-listing manifest fields, real UI screenshots, README polish, min_runtime_version). First version we intend to actually submit to the Tabularium public registry -- still tagged beta, but no longer just an internal GitHub release. Verified: .tabularium re-validated clean against the live registry schema; cargo build/test (85/85)/clippy/fmt all pass; markdownlint clean.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Prepares this plugin for its eventual Tabularium registry submission. Registry publication requires an approved
.tabulariummanifest, hosted release assets, and a/submitflow verified via OAuth against this repo — this PR covers the manifest and README side of that; it does not submit anything. Three separate, independently-reviewable commits:Registry-listing manifest fields (
f8a6d4b) —.tabulariumhad every runtime-required field but none of the registry-listing ones every published sibling plugin has:category,tags,license,readme,homepage,documentation_url,support.issues_url,color. Confirmed these are purely presentational for the registry's plugin-card/detail page — the builtin driver's own definition (tabularis'ssrc/hooks/useDrivers.ts) has none of them, so no version bump is warranted here. Also refreshed the README/CLAUDE.md's stale "pending sign-off" language (tabularisPR #577's checklist is now fully checked, though the PR itself is still open/unmerged) and fixed the README's release badge, which showed "no releases or repo not found" because every release so far is flaggedprerelease: trueand GitHub's/releases/latestAPI excludes those by design.Real UI screenshots (
a2ff1d7) — 7 real captures (not mockups), taken against a live build of this plugin (v1.0.0-beta.4) connected to an actual PostgreSQL instance: fresh install → database picker → connection form → successful test connection → saved connection card → multi-schema browsing → a data grid showing a real enum column value (sad) — that last one doubles as live proof the enum-extraction fix (issue execute_query returns null for PostgreSQL enum column values #7) actually works end-to-end. Wired into.tabularium's newscreenshotsarray and added a matching gallery section to the README.README header polish (
11ae1f8) — added a plus icon between the Tabularis and PostgreSQL logos so the header reads "Tabularis + PostgreSQL" at a glance (had to be an image, not a styled text character — GitHub's README sanitizer strips inlinestyleattributes). Also self-hosted a copy of the PostgreSQL project's 3-colors logo instead of hotlinkingwiki.postgresql.org, matching whypostgresql-icon.svgis already self-hosted rather than pointed at a third party.min_runtime_versiondeclaration (f65df25) — addedmin_runtime_version: "0.20.0"to.tabularium, per debba's guidance in a private reply:tabularis0.20.0 is the first release expected to actually ship the #614/#577 host-side fixes this plugin depends on (capability-driven identifier quoting viasql_dialect, etc.). Declaring this means the host refuses to load the plugin on older runtimes rather than silently misbehaving.Remaining steps before the plugin can actually reach the public registry
This PR is prep work only — merging it does not publish anything.
Done — merged 2026-08-14 (f3a8d48). It's the sign-off vehicle for promoting this repo to the primary PostgreSQL plugin home.tabularisPR #577 merges.Resolve theResolved cleanly, no action needed.#614fix-order conflict first.tabularisPR #588 (the narrower, literal-string fix) merged 2026-08-13, one day before #577 — the risky order I'd flagged. Checkedupstream/mainafter both landed:shouldQuoteIdentifiersinsrc/utils/identifiers.tsnow has #577's capability-driven check (caps.sql_dialect === "postgres") as the primary path, with #588's literal-string check (driver === "postgres" || driver === "postgresql") surviving intact as the legacy fallback for when no capabilities object is available. Neither fix clobbered the other.#18) — unblocked now that #577 is in. Still awaiting the go-ahead to merge (held open as of 2026-08-14 pending a separate decision).https://registry.tabularis.dev/submit. Requires OAuth login against this repo's GitHub identity for ownership verification — whoever submits needs push/owner access toTabularisDB/tabularis-postgresql-plugin. The registry pre-validates the manifest viaPOST /api/manifest/validate; a bad manifest is rejected with HTTP 422, no silent fallback. Our.tabulariumalready validates clean against the live schema as of this PR./api/plugins) showsstatus: "approved"— this is a real human-reviewed gate, not a formality. Check/requestson the registry after submitting to track status.Separately, filed tabularis#632 during this work (external plugin icons not rendering outside the database picker) — confirmed still open/unfixed as of 2026-08-14, not a blocker for anything here, just tracked for visibility.
Verification
npx @tabularium/cli validate .tabularium --registry https://registry.tabularis.dev --kind driver→ok(validated after each commit)npx markdownlint-cli README.md CHANGELOG.md→ cleanv1.0.0-beta.4build, confirmed the plugin's branded icon renders correctly in the "Choose a database" picker (surfaced a separatetabularis-side bug along the way — filed as tabularis#632 — where that same icon fails to render everywhere except the picker, due to a missing URL-handling branch ingetDriverIcon)Test plan
tabularisPR #577 has landed (2026-08-14) — merge itself still held pending explicit go-ahead, see "Remaining steps" aboveVersioning
CI's version-suggestion bot classifies this PR as
feat:minor:beta→ next tagv1.0.0-beta.5(confirmed via its comment on this PR). That classification is correct — this genuinely adds new plugin capability (registry-listing readiness), not a fix or pure maintenance.The version bump itself does not live in this branch. Following the pattern used for every prior release (
beta.2→.3→.4, each its own "Bump version to X" commit made directly onmainafter the corresponding feature PR merged, not baked into the feature branch),.tabularium/Cargo.toml/Cargo.lockwill be bumped to1.0.0-beta.5in a dedicated commit onmainonce this PR actually merges — which, per "Remaining steps" above, won't happen untiltabularisPR #577 lands. Bumping the version now, while this PR is deliberately held open, would let a beta tag sit reserved on an unmerged branch indefinitely and could conflict with whatever unrelated PR merges tomainfirst in the meantime.