Skip to content

feat: modernize embedded PGlite API and OSS tooling#3

Merged
f0rr0 merged 1 commit into
mainfrom
f0rr0/oss-quality-cache-compat
Apr 24, 2026
Merged

feat: modernize embedded PGlite API and OSS tooling#3
f0rr0 merged 1 commit into
mainfrom
f0rr0/oss-quality-cache-compat

Conversation

@f0rr0

@f0rr0 f0rr0 commented Apr 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • Modernize the crate around the intended high-level API: Pglite for direct embedded use and PgliteServer for PostgreSQL client compatibility.
  • Add process-local template-cluster caching for fast temporary databases, plus fresh_temporary escape hatches.
  • Add blocking proxy/server fixes for extended protocol clients, readiness, and socket mode handling.
  • Add OSS hygiene: CI, issue/PR templates, rustfmt/clippy/deny configs, asset provenance docs, Tauri guidance, contribution docs, and Conventional Commit validation.
  • Add release-plz for manual releases from main: create/update a release PR, dry-run publish, then publish via crates.io Trusted Publishing.
  • Add mandatory release intent for package-affecting changes: PRs touching Cargo.toml, Cargo.lock, src/**, assets/**, examples/**, or benches/** must use release-plz-compatible title types (feat, fix, perf, refactor, revert, or breaking !). Docs/CI/repo-only PRs can remain non-release.
  • Add a curated CHANGELOG.md, release documentation, package publish restrictions, and crates.io package excludes for repo-only automation/review files.
  • Add compatibility coverage for SQLx and tokio-postgres, plus runtime/proxy smoke tests.

Verification

  • cargo fmt --all --check
  • cargo check --all-targets --locked
  • cargo check --no-default-features --all-targets --locked
  • /Users/sid/.cargo/bin/cargo-deny check --hide-inclusion-graph
  • cargo test --lib --bins --locked
  • cargo test --doc --locked
  • cargo package --locked --allow-dirty
  • cargo publish --locked --dry-run --allow-dirty
  • actionlint
  • shellcheck .github/scripts/check-conventional-commit.sh .github/scripts/check-release-intent.sh
  • taplo check release-plz.toml Cargo.toml
  • taplo fmt --check release-plz.toml Cargo.toml
  • ruby -e 'require "yaml"; ARGV.each { |f| YAML.load_file(f); puts "ok #{f}" }' .github/workflows/ci.yml .github/workflows/conventional-commits.yml .github/workflows/release.yml
  • ./.github/scripts/check-conventional-commit.sh 'chore(release): 0.2.0'
  • Release-intent script smoke tests: release title passes, docs title fails for package-affecting changes, release-plz branch/title exemption passes.
  • Previous full runtime suite on this branch: cargo test --test runtime_smoke --locked -- --nocapture, cargo test --test proxy_smoke --locked -- --nocapture, and cargo test --test client_compat --locked -- --nocapture.

@f0rr0 f0rr0 force-pushed the f0rr0/oss-quality-cache-compat branch 2 times, most recently from 8115787 to 3a931e9 Compare April 24, 2026 12:04
@f0rr0 f0rr0 force-pushed the f0rr0/oss-quality-cache-compat branch from 3a931e9 to 8a2a48b Compare April 24, 2026 12:37
@f0rr0 f0rr0 merged commit f5cb76c into main Apr 24, 2026
4 checks passed
@f0rr0 f0rr0 deleted the f0rr0/oss-quality-cache-compat branch April 24, 2026 12:45
@github-actions github-actions Bot mentioned this pull request Apr 24, 2026
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.

1 participant