Skip to content

Commit 0599e1f

Browse files
committed
chore: align changesets scripts, docs, and PR checklist
1 parent f769b46 commit 0599e1f

5 files changed

Lines changed: 44 additions & 32 deletions

File tree

.changeset/unreleased-since-v2.1.0.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"nostream": minor
33
---
44

5-
Unreleased changes since v2.1.0:
5+
Release highlights:
66

77
**Features**
88
- NIP-05 verification support (#463)
@@ -14,6 +14,7 @@ Unreleased changes since v2.1.0:
1414
- Opt-in event retention purge (#359, #412)
1515
- Wipe events table script (#450)
1616
- Nginx reverse proxy in docker-compose (#423)
17+
- Docker DNS pre-flight check for connectivity verification (#398)
1718
- Strict validation for payment callbacks (#426)
1819
- Real home page with templated pages (#409)
1920

@@ -24,6 +25,7 @@ Unreleased changes since v2.1.0:
2425
- NIP-11 served only on root path instead of relay path (#399)
2526
- Dockerfile: run database migrations in CMD (#422)
2627
- Added expired_at filter to message pipeline (#403)
28+
- Removed unsafe-inline and implemented script nonces for CSP hardening (#394)
2729
- Axios upgraded to fix CVE-2025-62718 (#466)
2830

2931
**Refactors & Chores**

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,5 @@
3333
- [ ] I have updated the documentation accordingly.
3434
- [ ] I have read the **CONTRIBUTING** document.
3535
- [ ] I have added tests to cover my code changes.
36+
- [ ] I added a changeset, or this is docs-only and I added an empty changeset.
3637
- [ ] All new and existing tests passed.

.github/workflows/changesets.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ jobs:
2929
- name: Create Release Pull Request or Publish
3030
uses: changesets/action@v1
3131
with:
32-
version: npm run version
33-
publish: npm run publish
32+
version: npm run changeset:version
33+
publish: npm run changeset:tag
3434
createGithubReleases: true
3535
env:
3636
GITHUB_TOKEN: ${{ secrets.RELEASE_PAT }}

CONTRIBUTING.md

Lines changed: 38 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,47 @@ npm run knip
2020

2121
1. Update the relevant documentation with details of changes to the interface, this includes new environment
2222
variables, exposed ports, useful file locations and container parameters.
23-
2. Increase the version numbers in any examples files and the README.md to the new version that this
24-
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
23+
2. Follow the versioning and changeset process described in [Releases & Versioning](#releases--versioning).
2524
3. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
2625
do not have permission to do that, you may request the second reviewer to merge it for you.
2726

27+
## Releases & Versioning
28+
29+
This project uses [Changesets](https://github.com/changesets/changesets) for version management.
30+
31+
### For contributors
32+
33+
Every pull request that changes behavior, adds a feature, or fixes a bug **must include a changeset file**. The CI `changeset-check` job will fail if no changeset is present.
34+
35+
To add a changeset:
36+
37+
```bash
38+
npx changeset
39+
```
40+
41+
This interactive prompt will ask you to:
42+
1. Select the bump type: `major`, `minor`, or `patch`
43+
2. Write a short summary of the change (this becomes the changelog entry)
44+
45+
The command creates a file in `.changeset/` — commit it with your PR.
46+
47+
### Docs-only PRs (no release)
48+
49+
If your PR only updates documentation and should not affect versioning, add an empty changeset:
50+
51+
```bash
52+
npx changeset --empty
53+
```
54+
55+
Commit the generated `.changeset/*.md` file with your PR. This satisfies CI without producing a version bump or changelog entry.
56+
57+
### Release process
58+
59+
1. Changesets accumulate as PRs are merged to `main`
60+
2. The `Changesets Release` workflow automatically opens a **"Version Packages"** PR that aggregates all pending changesets, bumps `package.json`, and updates `CHANGELOG.md`
61+
3. When a maintainer merges the Version Packages PR, the workflow publishes a GitHub release and creates the corresponding git tag
62+
4. The Docker image is then automatically built and pushed to GHCR via the `release.yml` workflow
63+
2864
## Code Quality
2965

3066
Run Biome checks before opening a pull request:

README.md

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -686,33 +686,6 @@ Any changes made to the settings file will be read on the next start.
686686
Default settings can be found under `resources/default-settings.yaml`. Feel free to copy it to `nostream/.nostr/settings.yaml` if you would like to have a settings file before running the relay first.
687687

688688
See [CONFIGURATION.md](CONFIGURATION.md) for a detailed explanation of each environment variable and setting.
689-
## Releases & Versioning
690-
691-
This project uses [Changesets](https://github.com/changesets/changesets) for version management.
692-
693-
### For contributors
694-
695-
Every pull request that changes behavior, adds a feature, or fixes a bug **must include a changeset file**. The CI `changeset-check` job will fail if no changeset is present.
696-
697-
To add a changeset:
698-
699-
```bash
700-
npx changeset
701-
```
702-
703-
This interactive prompt will ask you to:
704-
1. Select the bump type: `major`, `minor`, or `patch`
705-
2. Write a short summary of the change (this becomes the changelog entry)
706-
707-
The command creates a file in `.changeset/` — commit it with your PR.
708-
709-
### Release process
710-
711-
1. Changesets accumulate as PRs are merged to `main`
712-
2. The `Changesets Release` workflow automatically opens a **"Version Packages"** PR that aggregates all pending changesets, bumps `package.json`, and updates `CHANGELOG.md`
713-
3. When a maintainer merges the Version Packages PR, the workflow publishes a GitHub release and creates the corresponding git tag
714-
4. The Docker image is then automatically built and pushed to GHCR via the `release.yml` workflow
715-
716689
## Dev Channel
717690

718691
For development discussions, please use the [Nostr Typescript Relay Dev Group](https://t.me/nostream_dev).

0 commit comments

Comments
 (0)