Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Release Please

on:
push:
branches: [main]
workflow_dispatch:

permissions: read-all

jobs:
release-please:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0
47 changes: 0 additions & 47 deletions .github/workflows/release.yml

This file was deleted.

3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.5.7"
}
14 changes: 4 additions & 10 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,16 +64,10 @@ Enforced by commitlint in CI (on PRs) via `commitlint.config.ts`.

**Semver policy:** 0.x = pre-release (breaking changes allowed in minor bumps). 1.0 = first stable release.

**Cutting a release:**
**Release flow:** Automated by [release-please](https://github.com/googleapis/release-please). On every push to `main`, `release-please.yml` reads conventional commits since the last release and opens/updates a long-lived "Release PR" that bumps `package.json` + `.release-please-manifest.json` and updates `CHANGELOG.md`. Merging that PR creates the git tag (`v0.x.y`) and the GitHub Release.

```bash
# 1. Bump version + regenerate changelog
pnpm version:patch # or version:minor / version:major

# 2. Commit, tag, and push
pnpm release
```
Config: `release-please-config.json` + `.release-please-manifest.json`.

This creates a git tag (`v0.1.0`, etc.) which triggers the `release.yml` workflow to build, test, and publish a GitHub Release with auto-generated changelog notes.
To trigger a release: merge the Release PR. To force a re-evaluation: `gh workflow run release-please.yml --ref main`.

**Changelog:** Generated from conventional commits via `conventional-changelog`. The full history lives in `CHANGELOG.md`.
**Changelog:** Maintained by release-please from conventional commits. The full history lives in `CHANGELOG.md`.
8 changes: 1 addition & 7 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,7 @@
"build": "turbo run build",
"test": "turbo run test",
"lint": "turbo run lint",
"typecheck": "turbo run typecheck",
"changelog": "conventional-changelog -p conventionalcommits -i CHANGELOG.md -s -r 0",
"version:patch": "npm version patch --no-git-tag-version && pnpm changelog",
"version:minor": "npm version minor --no-git-tag-version && pnpm changelog",
"version:major": "npm version major --no-git-tag-version && pnpm changelog",
"release": "git add -A && git commit -m \"chore(release): v$(node -p 'require(\"./package.json\").version')\" && git tag v$(node -p 'require(\"./package.json\").version') && git push && git push --tags"
"typecheck": "turbo run typecheck"
},
"pnpm": {
"overrides": {
Expand All @@ -31,7 +26,6 @@
"@eslint/js": "^10.0.1",
"@typescript-eslint/eslint-plugin": "^8.59.3",
"@typescript-eslint/parser": "^8.59.3",
"conventional-changelog": "^7.2.0",
"eslint": "^10.3.0",
"turbo": "^2.9.12",
"typescript": "^6.0.0",
Expand Down
Loading
Loading