From 8530b4bd9cd16cd9d65ffc5f84ea27e01de0625e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Wed, 12 Aug 2026 14:07:26 +0200 Subject: [PATCH 1/5] Update Changesets publishing workflow --- .changeset/config.json | 2 +- .github/workflows/publish.yml | 73 ++++++++++-- package.json | 5 +- pnpm-lock.yaml | 208 ++++++++++++++++++---------------- pnpm-workspace.yaml | 17 +++ 5 files changed, 195 insertions(+), 110 deletions(-) diff --git a/.changeset/config.json b/.changeset/config.json index d1cb7e8..c68aadb 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -1,5 +1,5 @@ { - "$schema": "https://unpkg.com/@changesets/config@4.0.0-next.3/schema.json", + "$schema": "https://unpkg.com/@changesets/config@4.0.0/schema.json", "changelog": ["@changesets/changelog-github", { "repo": "changesets/format" }], "baseBranch": "main", "commit": false, diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 415b559..c991476 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -15,13 +15,40 @@ concurrency: permissions: {} # each job should define its own permission explicitly jobs: + select-mode: + name: Select Mode + runs-on: ubuntu-latest + environment: version + timeout-minutes: 10 + outputs: + mode: ${{ steps.select-mode.outputs.mode }} + publish-plan-artifact-id: ${{ steps.select-mode.outputs.publish-plan-artifact-id }} + permissions: + contents: read # to check out repo (actions/checkout) + steps: + - name: Check out repo + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + persist-credentials: false + + - uses: ./.github/actions/ci-setup + with: + skip-cache: true # avoid cache poisoning attacks + + - name: Build + run: pnpm build + + - name: Select mode + id: select-mode + uses: changesets/action/select-mode@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 + version: name: Version + needs: select-mode + if: needs.select-mode.outputs.mode == 'version' runs-on: ubuntu-latest environment: version timeout-minutes: 10 - outputs: - hasChangesets: ${{ steps.changesets.outputs.hasChangesets }} permissions: contents: read # to check out repo (actions/checkout) steps: @@ -34,6 +61,9 @@ jobs: with: skip-cache: true # avoid cache poisoning attacks + - name: Build + run: pnpm build + - uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0 id: app-token with: @@ -44,14 +74,43 @@ jobs: - name: Create or update release pull request id: changesets - uses: changesets/action@a45c4d594aa4e2c509dc14a9f2b3b67ba3780d0d # v1.9.0 + uses: changesets/action/version@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 with: github-token: ${{ steps.app-token.outputs.token }} + script: pnpm version-packages + + pack: + name: Pack + needs: select-mode + if: needs.select-mode.outputs.mode == 'publish' + runs-on: ubuntu-latest + timeout-minutes: 10 + outputs: + pack-dir-artifact-id: ${{ steps.pack.outputs.pack-dir-artifact-id }} + permissions: + contents: read # to check out repo (actions/checkout) + steps: + - name: Check out repo + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + persist-credentials: false + + - uses: ./.github/actions/ci-setup + with: + skip-cache: true # avoid cache poisoning attacks + + - name: Build + run: pnpm build + + - name: Pack + id: pack + uses: changesets/action/pack@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 + with: + publish-plan-artifact-id: ${{ needs.select-mode.outputs.publish-plan-artifact-id }} publish: name: Publish - if: needs.version.outputs.hasChangesets == 'false' - needs: version + needs: pack runs-on: ubuntu-latest environment: npm timeout-minutes: 10 @@ -72,6 +131,6 @@ jobs: run: pnpm build - name: Publish to npm - uses: changesets/action@a45c4d594aa4e2c509dc14a9f2b3b67ba3780d0d # v1.9.0 + uses: changesets/action/publish@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 with: - publish: pnpm release + pack-dir-artifact-id: ${{ needs.pack.outputs.pack-dir-artifact-id }} diff --git a/package.json b/package.json index 7356a71..5d5f633 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "format": "oxfmt", "lint": "oxfmt --check", "typecheck": "tsc", + "version-packages": "changeset version", "release": "changeset publish" }, "dependencies": { @@ -30,8 +31,8 @@ "tinyexec": "^1.2.4" }, "devDependencies": { - "@changesets/changelog-github": "^1.0.0-next.6", - "@changesets/cli": "^3.0.0-next.8", + "@changesets/changelog-github": "^1.0.0", + "@changesets/cli": "^3.0.0", "@types/node": "^26.1.1", "fs-fixture": "^2.14.0", "oxfmt": "^0.59.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 880f854..6f665ca 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,11 +17,11 @@ importers: version: 1.2.4 devDependencies: '@changesets/changelog-github': - specifier: ^1.0.0-next.6 - version: 1.0.0-next.6 + specifier: ^1.0.0 + version: 1.0.0 '@changesets/cli': - specifier: ^3.0.0-next.8 - version: 3.0.0-next.8 + specifier: ^3.0.0 + version: 3.0.0 '@types/node': specifier: ^26.1.1 version: 26.1.1 @@ -127,73 +127,73 @@ packages: cpu: [x64] os: [win32] - '@changesets/apply-release-plan@8.0.0-next.7': - resolution: {integrity: sha512-gHXYyBf0+jri/wjA8TYrcyo7HEnN9QAFpU9+1ZWiDMjov7x3cG72r4NQC0T0hTUW+I1bayMFm95EGOvNtLxTSg==} + '@changesets/apply-release-plan@8.0.0': + resolution: {integrity: sha512-kUd2pbf1w5/AYmBMb0Tt+rkIPCjFJdT0SZMrkOjJT/WV/QbtmvkyB5jkV0oaNPheavprZk+SfUiozUti7TIL2w==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/assemble-release-plan@7.0.0-next.7': - resolution: {integrity: sha512-rUYmk2z5665bkLU+/gReGTdmqSYyFmo7ZgWvpc7ny3OXuEvWdOBz+1egvBXwAG4nYaRq8yIG9aKWIG0Dc18gIg==} + '@changesets/assemble-release-plan@7.0.0': + resolution: {integrity: sha512-oEW8BxdA604kGGtDSCiHr5w9Tv4UWe9I2k61IBNZzCOE1kbYaJj4v+lFQNgcEZFkUc2pV/+hASErGDvpJOZCTg==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/changelog-git@1.0.0-next.6': - resolution: {integrity: sha512-z+uAi+BhOUJSBlQj2o5n3oFwhCkHQBk+P1JrFFRvA5fv6pDRAZpugQYbXR7dIQZ5Dn4ndG9cidIKb2o/lGs2wQ==} + '@changesets/changelog-git@1.0.0': + resolution: {integrity: sha512-3Dst2Ime2Op5nd4XmWJLPIgp11ZFqJqSkVug9izK6TDcIV4YlhPS4ECbEVR+eGI0bk0r1ItogD4j2Oli87bJrA==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/changelog-github@1.0.0-next.6': - resolution: {integrity: sha512-0ShCWgNt50xP0mryAYT8wtSkMUinG8uhxXgCgwHZ4UvJnR2f4ns8OsGAxYu8FIds7kHFdLOz7qX4YQ6AX4tVUA==} + '@changesets/changelog-github@1.0.0': + resolution: {integrity: sha512-PNCSH5CGJrqOKxRjrMp2NLhceQv2QBs6HkjrLvYQqsEE2/ItN5R8GD/mskZZluoNWYvjPYFsY9T6swXfp5E0UA==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/cli@3.0.0-next.8': - resolution: {integrity: sha512-gfIPhBs1XNdgXhTJ+uhzfG8jHmMLnQNNL4Uwqxoniw/xmmVRbc9xGIeLniRsGY77RgdhWW0V1z1zVjTztgMQzQ==} + '@changesets/cli@3.0.0': + resolution: {integrity: sha512-V7Gm+GP5OT3mJinMI2YcJD/JyO/a4WChnaMCCzTRhWHgu1zhtsyY7zCjP6n5W6zsgSjJKs+yPmvtREvE0F2g8A==} engines: {node: ^22.11 || ^24 || >=26, npm: '>=10.9.0', pnpm: '>=10.0.0', yarn: '>=4.5.2'} hasBin: true - '@changesets/config@4.0.0-next.6': - resolution: {integrity: sha512-RTaumXzBthBvXE5axcAdCbSlUQ3l8l8FD1nNQpVXLCK/4Mg+/96BmNhX5Y/Yf80XE7eG+Mfl797Au5HHqPB/2A==} + '@changesets/config@4.0.0': + resolution: {integrity: sha512-mw95/YrkOuhZZxfnVAA4bSXOFUi+KlhzOBTM8C4x777NhUU6HWIl9Z+K+nME+E4PVsv5NQVQwTfiHihAS1A/ow==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/errors@1.0.0-next.3': - resolution: {integrity: sha512-p0JrarlyfkpnIK9L1Y8JKoF78IgKEzRPVbG/13gToDpvfV1cWqOVuoDLVCTQjYTwmaHusOmrnuQUlsO88AvP4Q==} + '@changesets/errors@1.0.0': + resolution: {integrity: sha512-ElN/mEzn6zmETgjwf5MclCMa9ef59sAR0lfO8VSYIsiRvbC2FbLB/92EoYw10Sl0kGixxHFiJZUSv7dA+YpR8g==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/format@0.1.0': - resolution: {integrity: sha512-m3ScsTpVqQJu6WOV36vpGozJPBu5JWaFXAhG1/yRnzbOnyqomuPrIfm+LeE0PmX4HWPs9Fh4MDH4aDISEsjZaA==} + '@changesets/format@0.1.1': + resolution: {integrity: sha512-OBN/xfe+lcNWCv8P4Ogop9EOTi5QRKd1c2JJfZRBT9AT3AybzDYDfHeX4Y7j20Q4e16BPu3XvcdOe9sPZmTEig==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/get-dependents-graph@3.0.0-next.6': - resolution: {integrity: sha512-UhQpHeyygd6uhoBZKLpwYNVqqxp6/QChwh9Phbo9BE3pTxu5e2X2JWZhNtlxkxUdWAGEq0sYExmhjDyYhBD1Xw==} + '@changesets/get-dependents-graph@3.0.0': + resolution: {integrity: sha512-ji/t5wFA1zREKXRUePE6Qi+Qu2UgxCeSSGQrphezwvQZrp49B7sJ+8+wvM0tA7zPeSxYKCojDy3WWgrl+s+awg==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/get-github-info@1.0.0-next.3': - resolution: {integrity: sha512-HQXw3Kcz1hAdCQgGH4cWlKpJWcTeL8pWNJP4zDOR3igoHJQO31wzHhG29XPhxnDBK9wEdyI71Ft86KpXDOLv/Q==} + '@changesets/get-github-info@1.0.0': + resolution: {integrity: sha512-nf5zPSqEKW0eXiJ4ltbjyIQ/srUHfxbghkLCjKdOLI3LehKXhiqxXcpja39eGPaj6qqGx2lFCrLJ7VWYUf9H2w==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/git@4.0.0-next.6': - resolution: {integrity: sha512-dNFHMQ4uER7Mo49iPKPee4ITUrCaJs6wya+ZfPo2kNzhMmbyv8WE9QuEf8BITBW+lJo5uos8gqUVnjJoerzjbA==} + '@changesets/git@4.0.0': + resolution: {integrity: sha512-uIEswpPUgzBBqrC0qg13byNaPorzhf05LE2T+gRizEKCXvMsJC6NPJp5iNDSV/gYj4Viqh09UiOF5E7XWeH5lQ==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/parse@1.0.0-next.7': - resolution: {integrity: sha512-6xtwi4SUYbSVTtsnlNdGnXQPQfdwaqV6PVnDcpV+PtQRM4RhfE4gAwrBe9Cth9+4iHyFbvzm+Gusc00XSNF/IQ==} + '@changesets/parse@1.0.0': + resolution: {integrity: sha512-P0iaMb9p9CRYZiTgAllEIF9AUMQHIy1G72tKlcIqJp61icZSsKQNiOPdxAMZG8m/DvZwt/oz5xEbTpike//dWg==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/pre@3.0.0-next.6': - resolution: {integrity: sha512-XVZ4JE4UE1bO1JtxxoBkoueHlzWNe227IpfJGlpiD7ZTfdidlRh+4tHxf452IcGMA3rEe3hWPhFE0tdL3uU2lA==} + '@changesets/pre@3.0.0': + resolution: {integrity: sha512-Zm/6YliV/a2oeWTqHJf6KxLrQwgcK1i/BRDl2m0EKZvbnxV5fG9QRhwJJGshjsZTUTS6dkfURQ2K6aAvgNw/3Q==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/read@1.0.0-next.7': - resolution: {integrity: sha512-eoy5Yf9WDN7opiQyNWZCCpeDeYf5mX/qT/MUktDnk2jBmwRUHLvIkTNK+IsR612etTcfO5kLlRNVcBv4smk87A==} + '@changesets/read@1.0.0': + resolution: {integrity: sha512-8TdE2PwG6yArPt5Ozej83Z6iHz1G8BDBKvIEKZ455MccR4K3GNbLR2XqjBxa+5yLFnEd3xAOPXYboBg1pt8stQ==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/should-skip-package@1.0.0-next.6': - resolution: {integrity: sha512-2y4+DMh7gMMEQaGwKwJMY7cixmJrK7u7rSZQ9t5O+xwqty9qXhO9EKbIeMDlt13A1Bdxuiu7ptkMKC+AoOO28Q==} + '@changesets/should-skip-package@1.0.0': + resolution: {integrity: sha512-pwqoJmbONn1XgXmZXPEExgAaT+HdZLjALFTDgIm+PnS5KeO2nLtzA2/Q+4aMFY14kFMuXKG30MObhvDzWgzDgg==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/types@7.0.0-next.6': - resolution: {integrity: sha512-bdxuVLYKrCt14kNFb+ltta8pOPFmQWB0DpMcz9IWMD+DRupQ4+wZyCkXIkfIoqu3iN0fcQkSuoZ2tNOfV+fepg==} + '@changesets/types@7.0.0': + resolution: {integrity: sha512-c5GoiQyt3pxiXjrWSNoP8/GRf4kG+VnKzovx1OQM8dYYALlSwgedmkPmJ+ZqGxqwg9D3Bkj85Uo4KLd5BN3A0w==} engines: {node: ^22.11 || ^24 || >=26} - '@changesets/write@1.0.0-next.6': - resolution: {integrity: sha512-GhtCqRxadKGe2wkMxpX0PqeWgn3vBr7JELJRakKv7zit8EX+La9/a9dosaP98vWisOCyDm1kuO8bUAq2ljRyVw==} + '@changesets/write@1.0.0': + resolution: {integrity: sha512-xCK3/4C7Z7muQB/wguE6HcbjtY9iOtaK9orZKE+7xi573cMGD8rLZz7qlo6IvK7s+SIUIKajzj1l+F1QuP97tw==} engines: {node: ^22.11 || ^24 || >=26} '@clack/core@1.4.3': @@ -455,8 +455,8 @@ packages: cpu: [x64] os: [win32] - '@pnpm/deps.graph-sequencer@1100.0.0': - resolution: {integrity: sha512-IfhLdXMjNaAt2Z/r0hAqMvH4UN/Eb6LAbnSHqF9Ay1EhQId8rFX58yIWXLUit6VjJTJAptnSPtO8nSu2/ggQsg==} + '@pnpm/deps.graph-sequencer@1100.0.1': + resolution: {integrity: sha512-pOr5+q1fLYKwFN3LAJuGZEnfXDcQ73zqgDHMtGy+K+uIoUqyY+6MeDCWFwfu+4EFuq76I5EPFofoNAI+Bmmq4A==} engines: {node: '>=22.13'} '@quansync/fs@1.0.0': @@ -1245,6 +1245,10 @@ packages: resolution: {integrity: sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg==} engines: {node: '>=18'} + tinyexec@1.3.0: + resolution: {integrity: sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==} + engines: {node: '>=18'} + tinyglobby@0.2.17: resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} engines: {node: '>=12.0.0'} @@ -1449,115 +1453,117 @@ snapshots: '@biomejs/cli-win32-x64@2.5.4': optional: true - '@changesets/apply-release-plan@8.0.0-next.7': + '@changesets/apply-release-plan@8.0.0': dependencies: - '@changesets/config': 4.0.0-next.6 - '@changesets/format': 0.1.0 - '@changesets/git': 4.0.0-next.6 - '@changesets/should-skip-package': 1.0.0-next.6 - '@changesets/types': 7.0.0-next.6 + '@changesets/config': 4.0.0 + '@changesets/format': 0.1.1 + '@changesets/git': 4.0.0 + '@changesets/should-skip-package': 1.0.0 + '@changesets/types': 7.0.0 import-meta-resolve: 4.2.0 jsonc-parser: 3.3.1 semver: 7.8.5 - '@changesets/assemble-release-plan@7.0.0-next.7': + '@changesets/assemble-release-plan@7.0.0': dependencies: - '@changesets/errors': 1.0.0-next.3 - '@changesets/get-dependents-graph': 3.0.0-next.6 - '@changesets/should-skip-package': 1.0.0-next.6 - '@changesets/types': 7.0.0-next.6 + '@changesets/errors': 1.0.0 + '@changesets/get-dependents-graph': 3.0.0 + '@changesets/should-skip-package': 1.0.0 + '@changesets/types': 7.0.0 semver: 7.8.5 - '@changesets/changelog-git@1.0.0-next.6': + '@changesets/changelog-git@1.0.0': dependencies: - '@changesets/types': 7.0.0-next.6 + '@changesets/types': 7.0.0 - '@changesets/changelog-github@1.0.0-next.6': + '@changesets/changelog-github@1.0.0': dependencies: - '@changesets/get-github-info': 1.0.0-next.3 - '@changesets/types': 7.0.0-next.6 + '@changesets/get-github-info': 1.0.0 + '@changesets/types': 7.0.0 - '@changesets/cli@3.0.0-next.8': + '@changesets/cli@3.0.0': dependencies: - '@changesets/apply-release-plan': 8.0.0-next.7 - '@changesets/assemble-release-plan': 7.0.0-next.7 - '@changesets/changelog-git': 1.0.0-next.6 - '@changesets/config': 4.0.0-next.6 - '@changesets/errors': 1.0.0-next.3 - '@changesets/get-dependents-graph': 3.0.0-next.6 - '@changesets/git': 4.0.0-next.6 - '@changesets/pre': 3.0.0-next.6 - '@changesets/read': 1.0.0-next.7 - '@changesets/should-skip-package': 1.0.0-next.6 - '@changesets/types': 7.0.0-next.6 - '@changesets/write': 1.0.0-next.6 + '@changesets/apply-release-plan': 8.0.0 + '@changesets/assemble-release-plan': 7.0.0 + '@changesets/changelog-git': 1.0.0 + '@changesets/config': 4.0.0 + '@changesets/errors': 1.0.0 + '@changesets/get-dependents-graph': 3.0.0 + '@changesets/git': 4.0.0 + '@changesets/pre': 3.0.0 + '@changesets/read': 1.0.0 + '@changesets/should-skip-package': 1.0.0 + '@changesets/types': 7.0.0 + '@changesets/write': 1.0.0 '@clack/prompts': 1.7.0 '@manypkg/get-packages': 3.1.0 - '@pnpm/deps.graph-sequencer': 1100.0.0 + '@pnpm/deps.graph-sequencer': 1100.0.1 cac: 7.0.0 import-meta-resolve: 4.2.0 launch-editor: 2.14.1 + package-manager-detector: 1.7.0 semver: 7.8.5 - tinyexec: 1.2.4 + tinyexec: 1.3.0 - '@changesets/config@4.0.0-next.6': + '@changesets/config@4.0.0': dependencies: - '@changesets/get-dependents-graph': 3.0.0-next.6 - '@changesets/should-skip-package': 1.0.0-next.6 - '@changesets/types': 7.0.0-next.6 + '@changesets/get-dependents-graph': 3.0.0 + '@changesets/should-skip-package': 1.0.0 + '@changesets/types': 7.0.0 '@manypkg/get-packages': 3.1.0 picomatch: 4.0.5 - '@changesets/errors@1.0.0-next.3': {} + '@changesets/errors@1.0.0': {} - '@changesets/format@0.1.0': + '@changesets/format@0.1.1': dependencies: package-manager-detector: 1.7.0 + tinyexec: 1.2.4 - '@changesets/get-dependents-graph@3.0.0-next.6': + '@changesets/get-dependents-graph@3.0.0': dependencies: - '@changesets/types': 7.0.0-next.6 + '@changesets/types': 7.0.0 semver: 7.8.5 - '@changesets/get-github-info@1.0.0-next.3': + '@changesets/get-github-info@1.0.0': dependencies: dataloader: 2.2.3 - '@changesets/git@4.0.0-next.6': + '@changesets/git@4.0.0': dependencies: - '@changesets/errors': 1.0.0-next.3 - '@changesets/types': 7.0.0-next.6 + '@changesets/errors': 1.0.0 + '@changesets/types': 7.0.0 '@manypkg/get-packages': 3.1.0 picomatch: 4.0.5 - tinyexec: 1.2.4 + tinyexec: 1.3.0 - '@changesets/parse@1.0.0-next.7': + '@changesets/parse@1.0.0': dependencies: - '@changesets/types': 7.0.0-next.6 + '@changesets/types': 7.0.0 yaml: 2.9.0 - '@changesets/pre@3.0.0-next.6': + '@changesets/pre@3.0.0': dependencies: - '@changesets/errors': 1.0.0-next.3 - '@changesets/types': 7.0.0-next.6 + '@changesets/errors': 1.0.0 + '@changesets/types': 7.0.0 '@manypkg/get-packages': 3.1.0 - '@changesets/read@1.0.0-next.7': + '@changesets/read@1.0.0': dependencies: - '@changesets/git': 4.0.0-next.6 - '@changesets/parse': 1.0.0-next.7 - '@changesets/types': 7.0.0-next.6 + '@changesets/git': 4.0.0 + '@changesets/parse': 1.0.0 + '@changesets/types': 7.0.0 - '@changesets/should-skip-package@1.0.0-next.6': + '@changesets/should-skip-package@1.0.0': dependencies: - '@changesets/types': 7.0.0-next.6 + '@changesets/types': 7.0.0 - '@changesets/types@7.0.0-next.6': {} + '@changesets/types@7.0.0': {} - '@changesets/write@1.0.0-next.6': + '@changesets/write@1.0.0': dependencies: - '@changesets/format': 0.1.0 - '@changesets/types': 7.0.0-next.6 + '@changesets/format': 0.1.1 + '@changesets/types': 7.0.0 human-id: 4.2.0 '@clack/core@1.4.3': @@ -1738,7 +1744,7 @@ snapshots: '@oxfmt/binding-win32-x64-msvc@0.59.0': optional: true - '@pnpm/deps.graph-sequencer@1100.0.0': {} + '@pnpm/deps.graph-sequencer@1100.0.1': {} '@quansync/fs@1.0.0': dependencies: @@ -2294,6 +2300,8 @@ snapshots: tinyexec@1.2.4: {} + tinyexec@1.3.0: {} + tinyglobby@0.2.17: dependencies: fdir: 6.5.0(picomatch@4.0.5) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 11dc497..72117cc 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -9,5 +9,22 @@ blockExoticSubdeps: true dedupePeers: true dedupePeerDependents: true minimumReleaseAge: 10080 +minimumReleaseAgeExclude: + - "@changesets/apply-release-plan@8.0.0" + - "@changesets/assemble-release-plan@7.0.0" + - "@changesets/changelog-git@1.0.0" + - "@changesets/changelog-github@1.0.0" + - "@changesets/cli@3.0.0" + - "@changesets/config@4.0.0" + - "@changesets/errors@1.0.0" + - "@changesets/get-dependents-graph@3.0.0" + - "@changesets/get-github-info@1.0.0" + - "@changesets/git@4.0.0" + - "@changesets/parse@1.0.0" + - "@changesets/pre@3.0.0" + - "@changesets/read@1.0.0" + - "@changesets/should-skip-package@1.0.0" + - "@changesets/types@7.0.0" + - "@changesets/write@1.0.0" shellEmulator: true trustPolicy: no-downgrade From 3bcd17fc818d4fd868dd77c8777fbb0cd8248bc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Wed, 12 Aug 2026 14:21:03 +0200 Subject: [PATCH 2/5] Move checkout into CI setup action --- .github/actions/ci-setup/action.yml | 5 +++++ .github/workflows/ci.yml | 14 ++------------ .github/workflows/publish.yml | 28 ++++------------------------ 3 files changed, 11 insertions(+), 36 deletions(-) diff --git a/.github/actions/ci-setup/action.yml b/.github/actions/ci-setup/action.yml index 200c537..36a3cd9 100644 --- a/.github/actions/ci-setup/action.yml +++ b/.github/actions/ci-setup/action.yml @@ -14,6 +14,11 @@ inputs: runs: using: composite steps: + - name: Check out repo + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + persist-credentials: false + - name: Set up pnpm uses: pnpm/action-setup@91ab88e2619ed1f46221f0ba42d1492c02baf788 # v6.0.6 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8a454e5..a4b4860 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,12 +46,7 @@ jobs: # Save dprint plugins cache to node_nodules in CI for simpler caching DPRINT_CACHE_DIR: ${{ github.workspace }}/node_modules/.dprint-cache steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup - name: Build run: pnpm build @@ -71,12 +66,7 @@ jobs: os: [ubuntu-latest, windows-latest] fail-fast: false steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup - name: Set up Deno uses: denoland/setup-deno@22d081ff2d3a40755e97629de92e3bcbfa7cf2ed # v2.0.5 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c991476..53a7225 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -26,12 +26,7 @@ jobs: permissions: contents: read # to check out repo (actions/checkout) steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup with: skip-cache: true # avoid cache poisoning attacks @@ -52,12 +47,7 @@ jobs: permissions: contents: read # to check out repo (actions/checkout) steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup with: skip-cache: true # avoid cache poisoning attacks @@ -90,12 +80,7 @@ jobs: permissions: contents: read # to check out repo (actions/checkout) steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup with: skip-cache: true # avoid cache poisoning attacks @@ -118,12 +103,7 @@ jobs: contents: write # to create release (changesets/action) id-token: write # to use OpenID Connect token for trusted publishing (changesets/action) steps: - - name: Check out repo - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - with: - persist-credentials: false - - - uses: ./.github/actions/ci-setup + - uses: $/.github/actions/ci-setup with: skip-cache: true # avoid cache poisoning attacks From 929f2c36a9868a42a36e0794a604c99685c67e79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Wed, 12 Aug 2026 14:23:42 +0200 Subject: [PATCH 3/5] Build only during publish packing --- .github/workflows/publish.yml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 53a7225..a2bdc21 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -30,9 +30,6 @@ jobs: with: skip-cache: true # avoid cache poisoning attacks - - name: Build - run: pnpm build - - name: Select mode id: select-mode uses: changesets/action/select-mode@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 @@ -51,9 +48,6 @@ jobs: with: skip-cache: true # avoid cache poisoning attacks - - name: Build - run: pnpm build - - uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0 id: app-token with: @@ -107,9 +101,6 @@ jobs: with: skip-cache: true # avoid cache poisoning attacks - - name: Build - run: pnpm build - - name: Publish to npm uses: changesets/action/publish@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 with: From 8cb2ef05db026a37c9d020e94e8b9b08b3dbb030 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Wed, 12 Aug 2026 14:40:19 +0200 Subject: [PATCH 4/5] Clean up release versioning and pin zizmor --- .github/workflows/ci.yml | 3 ++- .github/workflows/publish.yml | 1 - package.json | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a4b4860..c4f71b5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,8 +32,9 @@ jobs: persist-credentials: false - name: Run zizmor - uses: zizmorcore/zizmor-action@192e21d79ab29983730a13d1382995c2307fbcaa # v0.5.7 + uses: zizmorcore/zizmor-action@3dc1ecc9bcb9e94e9b2c709687979e1298497054 # v0.6.2 with: + version: "1.29.0" persona: pedantic annotations: true advanced-security: false diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a2bdc21..d81393f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -61,7 +61,6 @@ jobs: uses: changesets/action/version@22ccf9aa43179fe9e27dc62e575971d28cce197c # v2.0.0 with: github-token: ${{ steps.app-token.outputs.token }} - script: pnpm version-packages pack: name: Pack diff --git a/package.json b/package.json index 5d5f633..9524e02 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,6 @@ "format": "oxfmt", "lint": "oxfmt --check", "typecheck": "tsc", - "version-packages": "changeset version", "release": "changeset publish" }, "dependencies": { From 2eb826dbc88a4031e0f340bdd6352ae3a6bdbc32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Wed, 12 Aug 2026 17:00:44 +0200 Subject: [PATCH 5/5] Remove obsolete publish script --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index 9524e02..6393d7a 100644 --- a/package.json +++ b/package.json @@ -22,8 +22,7 @@ "test": "vitest", "format": "oxfmt", "lint": "oxfmt --check", - "typecheck": "tsc", - "release": "changeset publish" + "typecheck": "tsc" }, "dependencies": { "package-manager-detector": "^1.7.0",