Skip to content

Latest commit

 

History

History
36 lines (24 loc) · 1.73 KB

CONTRIBUTING.md

File metadata and controls

36 lines (24 loc) · 1.73 KB

Contributing

Development

bun install
bun run check

bun run check runs typecheck, lint, format check and unit tests. bun run format rewrites the tree. bun run test:e2e runs the Postgres tests against DATABASE_URL (default postgres://postgres:postgres@localhost:5432/postgres).

Contributors sign the CLA on their first PR; the CLA bot explains how.

How it works

startOAuthLogin stages the exchanged profile behind commit(). The redirect carrying the code is cleartext HTTP on loopback. The hub entry runs the same login in-process behind mountOAuthLogin and writes a stock oauth_token credential encrypted under the host's CredentialCipher. createOAuthTokenRefresher claims due credentials with FOR UPDATE SKIP LOCKED, so two hubs never refresh the same credential at once.

Commit messages

Commit subjects and PR titles follow Conventional Commits: feat, fix, refactor, test, docs, build, ci, perf, and chore(release): x.y.z for releases. Add ! only for public API breaks: removed or renamed exports, changed signatures, newly required params. Peer and dependency range changes are build(deps): with no !. Keep subjects imperative, lowercase after the colon, 72 characters or less, and free of ticket IDs. Every PR links its issue with a Closes <issue id> line in the PR body.

Releasing

Releases are manual. On a clean, up-to-date main:

npm version <patch|minor> -m "chore(release): %s"
git push --follow-tags
gh release create "v$(node -p 'require("./package.json").version')" --generate-notes
npm publish

Bump minor only for breaking API changes; everything else is a patch. prepack builds dist/ from the tagged commit.