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
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
- Repository: https://github.com/grlt-hub/react-slots
- npm: https://www.npmjs.com/package/@grlt-hub/react-slots
- License: MIT
- Maintainers: [Release process](RELEASE.md)
- Current major: v5. The v3 API (`createSlots`, `createSlotIdentifier`, `when`, effector peer dependencies) is gone; v5 has a single factory `createSlot` and no effector.

## Install
Expand Down
16 changes: 16 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Releasing

1. Open [Prepare Release](https://github.com/grlt-hub/react-slots/actions/workflows/prepare-release.yml) → **Run workflow**.
2. Select `main` or `alpha`, then choose the release type (default: `patch`) or enter an exact version without `v`.
3. Run the workflow. It updates all package versions and opens a PR from `release/*` into the selected branch.
4. Review the versions, update package changelogs, wait for CI, and merge the PR.
5. Wait for [Publish](https://github.com/grlt-hub/react-slots/actions/workflows/publish.yml). Approve the GitHub `Release` environment if prompted. CI builds and tests both packages and stages them on npm with provenance.
6. After staging succeeds, the release bot automatically creates and pushes the git tag `v<version>` at the merge commit. The packages are still awaiting npm approval.
7. Open **Staged Packages** in the [npm](https://www.npmjs.com/) user menu. Check the versions and npm tags, then approve both packages with 2FA to publish them:

- `@grlt-hub/react-slots`
- `@grlt-hub/eslint-plugin-react-slots`

8. Verify the published versions and tags on both packages' npm pages.

The npm tag depends on the version, not the branch: `5.0.5` → `latest`, `5.1.0-alpha.0` → `alpha`, `5.1.0-beta.0` → `beta`.
Loading