diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 0000000..0b3aa5a --- /dev/null +++ b/.changeset/README.md @@ -0,0 +1,9 @@ +# Changesets + +A changeset records a package release: which packages, which bump, and the changelog text. + +- `pnpm changeset` writes one; commit it with the change it describes. +- Without one, the release job writes a patch changeset for every package whose published contents + changed (a minor, on 0.x, when a dependency moved to another breaking line). +- On `main`, pending changesets become the "chore: version packages" pull request; merging it + publishes the packages to npm. diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 0000000..426cd84 --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@4.0.1/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "fixed": [], + "linked": [], + "access": "public", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "privatePackages": { + "version": false, + "tag": false + }, + "ignore": [] +} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..924c68f --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,22 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + +jobs: + ci: + uses: statewalker/.github/.github/workflows/ci.yml@main + + # Releases to npm: a version pull request while changes are unreleased, publishing once it is + # merged. npm's trusted publishers for these packages name this file (ci.yml). + release: + needs: ci + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + uses: statewalker/.github/.github/workflows/release.yml@main + permissions: + contents: write + pull-requests: write + id-token: write + secrets: inherit diff --git a/package.json b/package.json index 07c98fa..f72c7ea 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,7 @@ "typecheck": "pnpm -r run typecheck", "lint": "biome check --write .", "lint:check": "biome check .", - "publish-all": "pnpm run build && pnpm -r publish --access public --no-git-checks", - "changeset": "changeset", - "version-packages": "changeset version", - "release-packages": "changeset publish" + "changeset": "changeset" }, "devDependencies": { "@biomejs/biome": "catalog:", diff --git a/renovate.json b/renovate.json new file mode 100644 index 0000000..247bee9 --- /dev/null +++ b/renovate.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": ["github>statewalker/.github"] +}