Skip to content

Add plpgsql_check extension support - #1057

Open
racinette wants to merge 2 commits into
electric-sql:mainfrom
racinette:plpgsql-check
Open

Add plpgsql_check extension support#1057
racinette wants to merge 2 commits into
electric-sql:mainfrom
racinette:plpgsql-check

Conversation

@racinette

Copy link
Copy Markdown

Adds plpgsql_check (PL/pgSQL linter and static analyzer) as an external PGlite extension, distributed as @electric-sql/pglite-plpgsql-check.

Companion backend PR: electric-sql/postgres-pglite#80 — must merge first; the postgres-pglite gitlink here points at that branch, so CI cannot resolve the submodule until it lands (happy to re-point at the merged SHA then).

  • New package packages/pglite-plpgsql-check (follows the pgmq/pgtap pattern), with tests covering: extension load, invalid/valid function diagnosis, dump/load round trip, multiple instances, transactional rollback, and schema-qualified regprocedure signatures — 7/7 passing locally
  • postgres-pglite submodule bump: builds the extension tarball and exports the core symbols it needs
  • CI: cache/upload/download/dist handling for the new package in build_and_test.yml
  • Docs: extensions catalog entry, REPL export, docs deps
  • Changesets: initial release for the new package + patch for @electric-sql/pglite (new WASM exports)

Local verification: full core suite green (56 files / 279 tests), lint/typecheck/attw clean, docs site builds.

@racinette
racinette marked this pull request as ready for review July 17, 2026 12:08
@tdrz
tdrz self-requested a review July 28, 2026 07:34
@tdrz

tdrz commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

@racinette Cool stuff, thank you for this! Just a small comment to address.

@tdrz

tdrz commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

@racinette Build fails. Please have a look.

@racinette

Copy link
Copy Markdown
Author

@tdrz Thanks for taking a look! Two updates since the failed run:

  • Stylecheck: fixed — docs/extensions/extensions.data.ts was missing a prettier line-wrap.
  • plpgsql_check bumped to v2.10.4 (via electric-sql/postgres-pglite#80; gitlink re-pointed here). Retested locally: extension 7/7, core suite green.

The build failure I can't explain: the log has no compiler diagnostic for the failing object, and the same commit builds cleanly in electricsql/pglite-builder:3.1.74-7 locally — possibly a runner hiccup. Could you approve the workflow run for the new push so we can see?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants