Files
Douglas LowderandClaude Opus 5.5 8545feb433 [ci] Version packages and generate changelogs with changesets (#4580)
* [ci] Version packages and generate changelogs with changesets

PRs now add a changeset in .changeset/ instead of editing CHANGELOG.md.
The manual release workflow runs scripts/src/versionPackages.ts, which
runs `changeset version` for one fixed group of all packages, writes the
root CHANGELOG.md section with the existing emoji categories, and then
commits, tags, and pushes vX.Y.Z. The tag-driven publish is unchanged,
except that it reads the changelog section from the tagged commit.

The PR check validates changesets with @changesets/parse and rejects
direct CHANGELOG.md edits. The "no changelog" label still skips it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>

* Correct "no changelog" documentation in .changeset/README.md

* [ci] Fail on CHANGELOG.md edits even with the "no changelog" label

Co-Authored-By: Claude Opus 5.5 <[email protected]>

* [ci] Skip the changeset check for Dependabot PRs

Dependabot PRs only update dependencies, so they need no changeset, and
their read-only token cannot post the PR comment. The job skips both for
them. The CHANGELOG.md check still runs. The workflow now sets explicit
token permissions.

Co-Authored-By: Claude Opus 5.5 <[email protected]>

* Remove the "## main" block from CHANGELOG.md

Co-Authored-By: Claude Opus 5.5 <[email protected]>

---------

Co-authored-by: Claude Opus 5.5 <[email protected]>
2026-10-14 14:57:15 -07:00

29 lines
826 B
JSON

{
"name": "scripts",
"version": "0.31.0",
"private": true,
"license": "MIT",
"author": "Expo <[email protected]>",
"type": "module",
"scripts": {
"release": "node --no-warnings=ExperimentalWarning --loader ts-node/esm src/versionPackages.ts",
"validate-changesets": "node --no-warnings=ExperimentalWarning --loader ts-node/esm src/validateChangesets.ts",
"test": "node --no-warnings=ExperimentalWarning --loader ts-node/esm --test src/**/*.test.ts",
"typecheck": "tsc"
},
"dependencies": {
"@changesets/get-release-plan": "5.0.2",
"@changesets/git": "4.0.1",
"@changesets/parse": "1.0.0"
},
"devDependencies": {
"@changesets/types": "7.0.0",
"@types/node": "22.20.5",
"ts-node": "10.9.2",
"typescript": "6.0.3"
},
"engines": {
"node": ">=22.11.0"
}
}