From 369eed9c63acd950292a5d6b2cf47f928b4ee16c Mon Sep 17 00:00:00 2001 From: Joseph Mearman Date: Sat, 12 Sep 2026 00:02:14 +0100 Subject: [PATCH] fix(release): drop the plugins that commit a version bump back to main This repo's own branch protection requires every change to main go through a pull request with Required Checks passing -- a policy the GITHUB_TOKEN identity semantic-release runs as has no bypass for, unlike a repo owner's personal account. @semantic-release/git's direct push of a version-bump commit is therefore permanently rejected here, confirmed on the first push that got this far: "GH013: Repository rule violations... Changes must be made through a pull request." Dropping @semantic-release/git (and @semantic-release/changelog, which existed only to feed it a CHANGELOG.md entry) leaves npm publish, the GitHub Release, and the git tag all still working -- none of those write to the main branch ref, only the tag ref, which this repo's ruleset does not restrict. The tag, the GitHub Release, and the npm registry are the release's source of truth for its version; the repository's own package.json is not expected to reflect it. --- ts/packages/core/package.json | 2 - ts/packages/core/release.config.ts | 8 ---- ts/pnpm-lock.yaml | 65 ------------------------------ 3 files changed, 75 deletions(-) diff --git a/ts/packages/core/package.json b/ts/packages/core/package.json index 5bced52..2850332 100644 --- a/ts/packages/core/package.json +++ b/ts/packages/core/package.json @@ -32,9 +32,7 @@ "devDependencies": { "@arethetypeswrong/cli": "0.18.5", "@exadev/eslint-config": "2.10.6", - "@semantic-release/changelog": "7.0.0", "@semantic-release/commit-analyzer": "13.0.1", - "@semantic-release/git": "11.0.1", "@semantic-release/github": "12.0.9", "@semantic-release/npm": "13.1.5", "@semantic-release/release-notes-generator": "14.1.1", diff --git a/ts/packages/core/release.config.ts b/ts/packages/core/release.config.ts index c0abedd..af472a7 100644 --- a/ts/packages/core/release.config.ts +++ b/ts/packages/core/release.config.ts @@ -44,15 +44,7 @@ const config: GlobalConfig = { }, }, ], - "@semantic-release/changelog", "@semantic-release/npm", - [ - "@semantic-release/git", - { - assets: ["package.json", "CHANGELOG.md"], - message: "chore(release): core v${nextRelease.version} [skip ci]", - }, - ], "@semantic-release/github", ], }; diff --git a/ts/pnpm-lock.yaml b/ts/pnpm-lock.yaml index b2c3665..40c0e5b 100644 --- a/ts/pnpm-lock.yaml +++ b/ts/pnpm-lock.yaml @@ -82,15 +82,9 @@ importers: '@exadev/eslint-config': specifier: 2.10.6 version: 2.10.6(eslint@10.10.0(jiti@2.7.0))(typescript-eslint@8.69.0(eslint@10.10.0(jiti@2.7.0))(typescript@6.0.3))(typescript@6.0.3) - '@semantic-release/changelog': - specifier: 7.0.0 - version: 7.0.0(semantic-release@25.0.9(typescript@6.0.3)) '@semantic-release/commit-analyzer': specifier: 13.0.1 version: 13.0.1(semantic-release@25.0.9(typescript@6.0.3)) - '@semantic-release/git': - specifier: 11.0.1 - version: 11.0.1(semantic-release@25.0.9(typescript@6.0.3)) '@semantic-release/github': specifier: 12.0.9 version: 12.0.9(semantic-release@25.0.9(typescript@6.0.3)) @@ -928,12 +922,6 @@ packages: '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} - '@semantic-release/changelog@7.0.0': - resolution: {integrity: sha512-TNPyag5db24o7jWjre7UwKB4EcL8oJxbRhnDQ7hmZRAYqzreAc6PgdxQuU3pppp5xQinYtiumL0iG8SSKvnlzg==} - engines: {node: ^22.22.2 || >=24.15} - peerDependencies: - semantic-release: '>=20.1.0' - '@semantic-release/commit-analyzer@13.0.1': resolution: {integrity: sha512-wdnBPHKkr9HhNhXOhZD5a2LNl91+hs8CC2vsAVYxtZH3y0dV3wKn+uZSN61rdJQZ8EGxzWB3inWocBHV9+u/CQ==} engines: {node: '>=20.8.1'} @@ -944,12 +932,6 @@ packages: resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==} engines: {node: '>=18'} - '@semantic-release/git@11.0.1': - resolution: {integrity: sha512-Zr8BUYCTZMc8V6wDKN2dpR7nJgewd9I6THL3ydLTnp3OEdTo1/4RBLNYaeRucYMsjMv+BXoCNfXA0NADj1kwhw==} - engines: {node: ^22.22.2 || >=24.15} - peerDependencies: - semantic-release: '>=20.1.0' - '@semantic-release/github@12.0.9': resolution: {integrity: sha512-ODIqb0V3QqndipryEEiaBxUQCFjvv7Oese5Dt4omMGa60YRNEW0Sx3K+zri0uac2Y6S9nOlMehciWIzvvRCTGQ==} engines: {node: ^22.14.0 || >= 24.10.0} @@ -1664,10 +1646,6 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - execa@10.0.1: - resolution: {integrity: sha512-ge98qjkRK4IB7tL7Ju/6qmm5LHoH1eEMt5FNZrz3f4UIYhF28lggX20z3FaX1sgc67msLEn0N0BscOs29iuwyw==} - engines: {node: '>=22'} - execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -2986,11 +2964,6 @@ packages: web-worker@1.5.0: resolution: {integrity: sha512-RiMReJrTAiA+mBjGONMnjVDP2u3p9R1vkcGz6gDIrOMT3oGuYwX2WRMYI9ipkphSuE5XKEhydbhNEJh4NY9mlw==} - which-command@0.1.0: - resolution: {integrity: sha512-XZyoF5/5hZtXitIwzrU4NKK+Wtbb9aB9CezUEw2Q0wlYK8NUYQxC1rRXgNueYLtBAJwXIb+/tFVk4dozciNJMA==} - engines: {node: '>=22'} - hasBin: true - which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -3605,13 +3578,6 @@ snapshots: '@sec-ant/readable-stream@0.4.1': {} - '@semantic-release/changelog@7.0.0(semantic-release@25.0.9(typescript@6.0.3))': - dependencies: - '@semantic-release/error': 4.0.0 - aggregate-error: 5.0.0 - lodash-es: 4.18.1 - semantic-release: 25.0.9(typescript@6.0.3) - '@semantic-release/commit-analyzer@13.0.1(semantic-release@25.0.9(typescript@6.0.3))': dependencies: conventional-changelog-angular: 8.3.1 @@ -3628,20 +3594,6 @@ snapshots: '@semantic-release/error@4.0.0': {} - '@semantic-release/git@11.0.1(semantic-release@25.0.9(typescript@6.0.3))': - dependencies: - '@semantic-release/error': 4.0.0 - aggregate-error: 5.0.0 - debug: 4.4.3 - dir-glob: 3.0.1 - execa: 10.0.1 - lodash-es: 4.18.1 - micromatch: 4.0.8 - p-reduce: 3.0.0 - semantic-release: 25.0.9(typescript@6.0.3) - transitivePeerDependencies: - - supports-color - '@semantic-release/github@12.0.9(semantic-release@25.0.9(typescript@6.0.3))': dependencies: '@octokit/core': 7.0.8 @@ -4328,21 +4280,6 @@ snapshots: esutils@2.0.3: {} - execa@10.0.1: - dependencies: - '@sindresorhus/merge-streams': 4.0.0 - figures: 6.1.0 - get-stream: 9.0.1 - human-signals: 8.0.1 - is-plain-obj: 4.1.0 - is-stream: 4.0.1 - npm-run-path: 6.0.0 - pretty-ms: 9.3.1 - signal-exit: 4.1.0 - strip-final-newline: 4.0.0 - which-command: 0.1.0 - yoctocolors: 2.2.0 - execa@8.0.1: dependencies: cross-spawn: 7.0.6 @@ -5472,8 +5409,6 @@ snapshots: web-worker@1.5.0: {} - which-command@0.1.0: {} - which@2.0.2: dependencies: isexe: 2.0.0