Skip to content

Commit 2af88c8

Browse files
committed
docs: document the version release process
1 parent 35171c9 commit 2af88c8

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

README.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,36 @@ vp install
312312
- The `dist/index.mjs` must be committed (it's the compiled action entry point)
313313
- Pre-commit hooks (via husky + lint-staged) will automatically run `vp check --fix` on staged files via `vpx lint-staged`
314314

315+
### Releasing
316+
317+
Releases are published as git tags (there is no npm package, so `package.json` stays at `1.0.0`). Consumers reference the moving major tag `voidzero-dev/setup-vp@v1` (or pin a commit SHA), so every release also moves `v1` forward to the new commit.
318+
319+
After the changes are merged to `main`:
320+
321+
1. Update `main` and confirm `dist/index.mjs` is in sync (the working tree must stay clean after building):
322+
323+
```bash
324+
git checkout main && git pull --ff-only
325+
vp run build
326+
git status --short # must be empty
327+
```
328+
329+
2. Create the new annotated version tag (bump the minor from the latest `v1.x.0`) on the merged commit, then move the `v1` major tag to the same commit:
330+
331+
```bash
332+
git tag -a v1.13.0 -m "v1.13.0"
333+
git tag -fa v1 -m "v1"
334+
```
335+
336+
3. Push the new version tag, then force-push the moved `v1` tag:
337+
338+
```bash
339+
git push origin v1.13.0
340+
git push origin v1 --force
341+
```
342+
343+
Both are annotated tags whose message is the tag name. `v1` always points at the latest `v1.x.0` release, so `@v1` consumers pick it up automatically.
344+
315345
## Feedback
316346

317347
If you have any feedback or issues, please [submit an issue](https://github.com/voidzero-dev/setup-vp/issues).

0 commit comments

Comments
 (0)