@sanity/semantic-release-preset
Advanced tools
Comparing version 2.0.2 to 4.1.1
@@ -8,2 +8,78 @@ <!-- markdownlint-disable --><!-- textlint-disable --> | ||
## [4.1.1](https://github.com/sanity-io/semantic-release-preset/compare/v4.1.0...v4.1.1) (2023-04-12) | ||
### Bug Fixes | ||
- reduce GitHub rate limit errors ([#81](https://github.com/sanity-io/semantic-release-preset/issues/81)) ([b24eb19](https://github.com/sanity-io/semantic-release-preset/commit/b24eb1941eb19a0cf327c949b802b93b495ee690)) | ||
## [4.1.0](https://github.com/sanity-io/semantic-release-preset/compare/v4.0.2...v4.1.0) (2023-03-26) | ||
### Features | ||
- **deps:** update dependency semantic-release to v21 ([#74](https://github.com/sanity-io/semantic-release-preset/issues/74)) ([35024d4](https://github.com/sanity-io/semantic-release-preset/commit/35024d4d34d31bac73eadbc1c7bc0dad8cc52d42)) | ||
## [4.0.2](https://github.com/sanity-io/semantic-release-preset/compare/v4.0.1...v4.0.2) (2023-03-20) | ||
### Bug Fixes | ||
- update semver range ([a671b7b](https://github.com/sanity-io/semantic-release-preset/commit/a671b7b246b1725bbc1f52c12cf999ea1a6a041b)) | ||
## [4.0.1](https://github.com/sanity-io/semantic-release-preset/compare/v4.0.0...v4.0.1) (2023-03-20) | ||
### Bug Fixes | ||
- **deps:** update dependency semantic-release-license to ^1.0.3 ([#71](https://github.com/sanity-io/semantic-release-preset/issues/71)) ([286960d](https://github.com/sanity-io/semantic-release-preset/commit/286960de2de0bfd4e876687485ab05dbf3ce8d8b)) | ||
- **deps:** update semantic-release monorepo ([6f2956e](https://github.com/sanity-io/semantic-release-preset/commit/6f2956e942ba2b3565a4020c1d1071c4c897d531)) | ||
- make prettier PRs ([fe45bd9](https://github.com/sanity-io/semantic-release-preset/commit/fe45bd93f849776fc26dbf676c199af902e46f3d)) | ||
## [4.0.0](https://github.com/sanity-io/semantic-release-preset/compare/v3.0.2...v4.0.0) (2023-01-20) | ||
### ⚠ BREAKING CHANGES | ||
- if your package manager don't auto install peers add `semantic-release` manually: `npm install --save-dev semantic-release` | ||
### Code Refactoring | ||
- `semantic-release` is now a peer dep ([bcc84e7](https://github.com/sanity-io/semantic-release-preset/commit/bcc84e7a5d75cda1f50cc236778b716e1b792276)) | ||
## [3.0.2](https://github.com/sanity-io/semantic-release-preset/compare/v3.0.1...v3.0.2) (2023-01-08) | ||
### Bug Fixes | ||
- **deps:** update dependency semantic-release to v20.0.2 ([#48](https://github.com/sanity-io/semantic-release-preset/issues/48)) ([3a9554d](https://github.com/sanity-io/semantic-release-preset/commit/3a9554d71c9d32626b0457bd712d651d630ad1e6)) | ||
## [3.0.1](https://github.com/sanity-io/semantic-release-preset/compare/v3.0.0...v3.0.1) (2023-01-08) | ||
### Bug Fixes | ||
- **deps:** update dependency semantic-release to v20.0.1 ([#47](https://github.com/sanity-io/semantic-release-preset/issues/47)) ([c46e5a3](https://github.com/sanity-io/semantic-release-preset/commit/c46e5a388c0a34a2b37352ca8dc8ddfdfd836368)) | ||
## [3.0.0](https://github.com/sanity-io/semantic-release-preset/compare/v2.0.5...v3.0.0) (2023-01-07) | ||
### ⚠ BREAKING CHANGES | ||
- **deps:** Drops support for Node v16 and older | ||
### Bug Fixes | ||
- **deps:** update dependency semantic-release to v20 ([#40](https://github.com/sanity-io/semantic-release-preset/issues/40)) ([8dd50d9](https://github.com/sanity-io/semantic-release-preset/commit/8dd50d9a57b4c9f37e6e34305fb0bcf31eee2347)) | ||
## [2.0.5](https://github.com/sanity-io/semantic-release-preset/compare/v2.0.4...v2.0.5) (2023-01-01) | ||
### Bug Fixes | ||
- **deps:** lock file maintenance ([#39](https://github.com/sanity-io/semantic-release-preset/issues/39)) ([bcdd373](https://github.com/sanity-io/semantic-release-preset/commit/bcdd373d549e4a4dd3767e33fb3a7c6219a41e53)) | ||
## [2.0.4](https://github.com/sanity-io/semantic-release-preset/compare/v2.0.3...v2.0.4) (2022-12-16) | ||
### Bug Fixes | ||
- **deps:** lock file maintenance ([#36](https://github.com/sanity-io/semantic-release-preset/issues/36)) ([1a80d7d](https://github.com/sanity-io/semantic-release-preset/commit/1a80d7d7317a6abcac75f8ae127a213ffbdb8b3a)) | ||
## [2.0.3](https://github.com/sanity-io/semantic-release-preset/compare/v2.0.2...v2.0.3) (2022-12-06) | ||
### Bug Fixes | ||
- **deps:** update dependency @semantic-release/changelog to ^6.0.2 ([1d53742](https://github.com/sanity-io/semantic-release-preset/commit/1d537420680f39c79b10e157620cf51581c553c4)) | ||
## [2.0.2](https://github.com/sanity-io/semantic-release-preset/compare/v2.0.1...v2.0.2) (2022-10-06) | ||
@@ -10,0 +86,0 @@ |
@@ -55,3 +55,6 @@ // @ts-check | ||
addReleases: 'bottom', | ||
assets: '.semantic-release/*.tgz' | ||
assets: '.semantic-release/*.tgz', | ||
// These features currently frequently leads to GitHub API rate limit errors, so we disable them for now. | ||
successComment: false, | ||
releasedLabels: false | ||
} | ||
@@ -58,0 +61,0 @@ ] |
{ | ||
"name": "@sanity/semantic-release-preset", | ||
"version": "2.0.2", | ||
"version": "4.1.1", | ||
"description": "Recommended setup for releasing semantically using GitHub Actions workflows", | ||
@@ -51,17 +51,20 @@ "keywords": [ | ||
"dependencies": { | ||
"@semantic-release/changelog": "^6.0.1", | ||
"@semantic-release/exec": "^6.0.3", | ||
"@semantic-release/git": "^10.0.1", | ||
"conventional-changelog-conventionalcommits": "^5.0.0", | ||
"semantic-release": "^19.0.5", | ||
"semantic-release-license": "^1.0.3" | ||
"@semantic-release/changelog": "6", | ||
"@semantic-release/exec": "6", | ||
"@semantic-release/git": "10", | ||
"conventional-changelog-conventionalcommits": "5", | ||
"semantic-release-license": "1" | ||
}, | ||
"devDependencies": { | ||
"@types/semantic-release": "^17.2.4", | ||
"ls-engines": "^0.7.0", | ||
"prettier": "^2.7.1", | ||
"prettier-plugin-packagejson": "^2.3.0" | ||
"@types/semantic-release": "20.0.1", | ||
"ls-engines": "0.9.0", | ||
"prettier": "^2.8.5", | ||
"prettier-plugin-packagejson": "^2.4.3", | ||
"semantic-release": "21.0.1" | ||
}, | ||
"peerDependencies": { | ||
"semantic-release": "20 || 21" | ||
}, | ||
"engines": { | ||
"node": ">=16.0.0" | ||
"node": ">=18" | ||
}, | ||
@@ -68,0 +71,0 @@ "publishConfig": { |
@@ -23,6 +23,4 @@ <!-- markdownlint-disable-file MD025 --> | ||
- [Optional: Configure prerelease branches](#optional-configure-prerelease-branches) | ||
- [Optional: Advanced prerelease branches](#optional-advanced-prerelease-branches) | ||
- [Why not use `"prerelease": true`?](#why-not-use-prerelease-true) | ||
- [Minimal GitHub Release workflow](#minimal-github-release-workflow) | ||
- [If you're unable to make it work chances are your issue is documented in the `semantic-release` troubleshooting docs.](#if-youre-unable-to-make-it-work-chances-are-your-issue-is-documented-in-the-semantic-release-troubleshooting-docs) | ||
- [If you're unable to make it work chances are your issue is documented in the `semantic-release` troubleshooting docs](#if-youre-unable-to-make-it-work-chances-are-your-issue-is-documented-in-the-semantic-release-troubleshooting-docs) | ||
- [Opinionated GitHub Release workflow](#opinionated-github-release-workflow) | ||
@@ -38,18 +36,8 @@ - [TODO more docs are coming, we're actively exploring the optimal setup](#todo-more-docs-are-coming-were-actively-exploring-the-optimal-setup) | ||
<details> | ||
<summary>Why isn't <code>semantic-release</code> a peer dependency?</summary> | ||
If your package manager don't auto install peer dependencies make sure to install `semantic-release`: | ||
There's a [convention](https://github.com/semantic-release/gitlab-config#install) in `semantic-release` presets to have it as a peer, which would make the install setup look like this: | ||
```bash | ||
npm install --save-dev semantic-release @sanity/semantic-release-preset | ||
npm i -D semantic-release | ||
``` | ||
This leaves it to you to keep both dependencies up to date. This package is primarily designed to ease our own internal `@sanity` npm packages, and thus we prefer for it to be a single dependency. | ||
That way we avoid mismatch bugs where bots might make a PR that updates `semantic-release` to a new, breaking, major version. But fail to also update `@sanity/semantic-release-preset` causing it to fail. | ||
By declaring it as a normal `dependency` we avoid these issues, and reduce churn and PR noise. | ||
</details> | ||
## Setup the release config | ||
@@ -70,6 +58,6 @@ | ||
If you have stable releases going out from the git branch `main`, and want commits on the branch `v3` to result in only being installable with the npm dist-tag `dev-preview`: | ||
If you have stable releases going out from the git branch `main`, and want commits on the branch `beta` to result in only being installable with the npm dist-tag `beta`: | ||
```bash | ||
npm i package-name@dev-preview | ||
npm i package-name@beta | ||
``` | ||
@@ -88,59 +76,6 @@ | ||
"extends": "@sanity/semantic-release-preset", | ||
"branches": [ | ||
"main", | ||
{ "name": "v3", "channel": "dev-preview", "prerelease": true } | ||
] | ||
"branches": ["main", { "name": "beta", "prerelease": true }] | ||
} | ||
``` | ||
### Optional: Advanced prerelease branches | ||
On many studio v3 plugins we're using the `main` git branch to push prereleases that are installable as: | ||
```bash | ||
npm i package-name@studio-v3 | ||
``` | ||
And that's saved to the `package.json` as: | ||
```json | ||
{ | ||
"dependencies": { | ||
"package-name": "^1.0.0-v3-studio.1" | ||
} | ||
} | ||
``` | ||
To run that setup use: | ||
```json | ||
{ | ||
"extends": "@sanity/semantic-release-preset", | ||
"branches": [ | ||
{ "name": "studio-v2", "channel": "latest" }, | ||
{ "name": "main", "channel": "studio-v3", "prerelease": "v3-studio" } | ||
] | ||
} | ||
``` | ||
### Why not use `"prerelease": true`? | ||
If `prerelease` is `true` instead of `v3-studio` this is what happens when it's installed: | ||
```json | ||
{ | ||
"dependencies": { | ||
"package-name": "^1.0.0-studio-v3.1" | ||
} | ||
} | ||
``` | ||
Since we use the name `studio-v3` as the `channel`, the prerelease increment makes it look like the studio version is `v3.1`, which is confusing. Alternatively, you could set `channel` to `v3-studio` but then the install command would change to this: | ||
```bash | ||
npm i package-name@v3-studio | ||
``` | ||
And since we always say "Studio v3" and never "v3 Studio" when talking about the new version it's better to use both `channel` and `prerelease` to set the optimal ordering individually. | ||
## Minimal GitHub Release workflow | ||
@@ -168,4 +103,4 @@ | ||
with: | ||
cache: npm | ||
node-version: lts/* | ||
cache: 'npm' | ||
- run: npm ci | ||
@@ -185,3 +120,3 @@ - run: npm test --if-present | ||
[You need two secrets](https://semantic-release.gitbook.io/semantic-release/usage/ci-configuration#authentication-for-plugins), `secrets.GITHUB_TOKEN` is always provided to GitHub actions, but if you try to `--dry-run` locally [you'll need to create a token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line). | ||
[You need two secrets](https://semantic-release.gitbook.io/semantic-release/usage/ci-configuration#authentication-for-plugins), `secrets.GITHUB_TOKEN` is always provided to GitHub actions, but if you try to `--dry-run` locally [you'll need to create a token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line). | ||
It's easiest to just push commits and inspect the workflow output. You can add `--debug` to the `npx semantic-release` command to see more verbose logs if there's a tricky error. | ||
@@ -217,4 +152,4 @@ | ||
with: | ||
cache: npm | ||
node-version: lts/* | ||
cache: 'npm' | ||
- run: npm ci | ||
@@ -221,0 +156,0 @@ - run: npm test --if-present |
Sorry, the diff of this file is not supported yet
20266
59
5
186
+ Added@octokit/auth-token@4.0.0(transitive)
+ Added@octokit/core@5.2.0(transitive)
+ Added@octokit/endpoint@9.0.5(transitive)
+ Added@octokit/graphql@7.1.0(transitive)
+ Added@octokit/openapi-types@20.0.022.2.0(transitive)
+ Added@octokit/plugin-paginate-rest@9.2.1(transitive)
+ Added@octokit/plugin-retry@6.0.1(transitive)
+ Added@octokit/plugin-throttling@8.2.0(transitive)
+ Added@octokit/request@8.4.0(transitive)
+ Added@octokit/request-error@5.1.0(transitive)
+ Added@octokit/types@12.6.013.5.0(transitive)
+ Added@semantic-release/commit-analyzer@10.0.4(transitive)
+ Added@semantic-release/error@4.0.0(transitive)
+ Added@semantic-release/github@9.2.6(transitive)
+ Added@semantic-release/npm@10.0.6(transitive)
+ Added@semantic-release/release-notes-generator@11.0.7(transitive)
+ Added@sindresorhus/merge-streams@2.3.0(transitive)
+ Addedaggregate-error@5.0.0(transitive)
+ Addedargparse@2.0.1(transitive)
+ Addedclean-stack@5.2.0(transitive)
+ Addedcliui@8.0.1(transitive)
+ Addedconventional-changelog-angular@6.0.0(transitive)
+ Addedconventional-changelog-writer@6.0.1(transitive)
+ Addedconventional-commits-filter@3.0.04.0.0(transitive)
+ Addedconventional-commits-parser@5.0.0(transitive)
+ Addedcosmiconfig@8.3.6(transitive)
+ Addedcrypto-random-string@4.0.0(transitive)
+ Addedenv-ci@9.1.1(transitive)
+ Addedescape-string-regexp@5.0.0(transitive)
+ Addedexeca@7.2.08.0.1(transitive)
+ Addedfigures@5.0.0(transitive)
+ Addedfind-up@6.3.0(transitive)
+ Addedfind-versions@5.1.0(transitive)
+ Addedget-stream@7.0.18.0.1(transitive)
+ Addedglobby@14.0.2(transitive)
+ Addedhook-std@3.0.0(transitive)
+ Addedhosted-git-info@7.0.2(transitive)
+ Addedhuman-signals@4.3.15.0.0(transitive)
+ Addedindent-string@5.0.0(transitive)
+ Addedinto-stream@7.0.0(transitive)
+ Addedis-stream@3.0.0(transitive)
+ Addedis-text-path@2.0.0(transitive)
+ Addedis-unicode-supported@1.3.0(transitive)
+ Addedjs-yaml@4.1.0(transitive)
+ Addedjson-parse-even-better-errors@3.0.2(transitive)
+ Addedlines-and-columns@2.0.4(transitive)
+ Addedlocate-path@7.2.0(transitive)
+ Addedlodash-es@4.17.21(transitive)
+ Addedlru-cache@10.3.0(transitive)
+ Addedmarked@5.1.2(transitive)
+ Addedmeow@12.1.1(transitive)
+ Addedmime@4.0.3(transitive)
+ Addedmimic-fn@4.0.0(transitive)
+ Addednormalize-package-data@6.0.2(transitive)
+ Addednormalize-url@8.0.1(transitive)
+ Addednpm@9.9.3(transitive)
+ Addednpm-run-path@5.3.0(transitive)
+ Addedonetime@6.0.0(transitive)
+ Addedp-each-series@3.0.0(transitive)
+ Addedp-filter@4.1.0(transitive)
+ Addedp-limit@4.0.0(transitive)
+ Addedp-locate@6.0.0(transitive)
+ Addedp-map@7.0.2(transitive)
+ Addedp-reduce@3.0.0(transitive)
+ Addedparse-json@7.1.1(transitive)
+ Addedpath-exists@5.0.0(transitive)
+ Addedpath-key@4.0.0(transitive)
+ Addedpath-type@5.0.0(transitive)
+ Addedread-pkg@8.1.0(transitive)
+ Addedread-pkg-up@10.1.0(transitive)
+ Addedsemantic-release@21.1.2(transitive)
+ Addedsemver-diff@4.0.0(transitive)
+ Addedsemver-regex@4.0.5(transitive)
+ Addedsignal-exit@4.1.0(transitive)
+ Addedslash@5.1.0(transitive)
+ Addedsplit2@4.2.0(transitive)
+ Addedstrip-final-newline@3.0.0(transitive)
+ Addedtemp-dir@3.0.0(transitive)
+ Addedtempy@3.1.0(transitive)
+ Addedtext-extensions@2.4.0(transitive)
+ Addedtype-fest@1.4.02.19.03.13.14.21.0(transitive)
+ Addedunicorn-magic@0.1.0(transitive)
+ Addedunique-string@3.0.0(transitive)
+ Addedurl-join@5.0.0(transitive)
+ Addedyargs@17.7.2(transitive)
+ Addedyargs-parser@21.1.1(transitive)
+ Addedyocto-queue@1.1.1(transitive)
- Removedsemantic-release@^19.0.5
- Removed@octokit/auth-token@3.0.4(transitive)
- Removed@octokit/core@4.2.4(transitive)
- Removed@octokit/endpoint@7.0.6(transitive)
- Removed@octokit/graphql@5.0.6(transitive)
- Removed@octokit/openapi-types@18.1.1(transitive)
- Removed@octokit/plugin-paginate-rest@6.1.2(transitive)
- Removed@octokit/plugin-retry@4.1.6(transitive)
- Removed@octokit/plugin-throttling@5.2.3(transitive)
- Removed@octokit/request@6.2.8(transitive)
- Removed@octokit/request-error@3.0.3(transitive)
- Removed@octokit/tsconfig@1.0.2(transitive)
- Removed@octokit/types@9.3.2(transitive)
- Removed@semantic-release/commit-analyzer@9.0.2(transitive)
- Removed@semantic-release/github@8.1.0(transitive)
- Removed@semantic-release/npm@9.0.2(transitive)
- Removed@semantic-release/release-notes-generator@10.0.3(transitive)
- Removed@types/parse-json@4.0.2(transitive)
- Removedarray-union@2.1.0(transitive)
- Removedbalanced-match@1.0.2(transitive)
- Removedbrace-expansion@1.1.11(transitive)
- Removedcliui@7.0.4(transitive)
- Removedconcat-map@0.0.1(transitive)
- Removedconventional-changelog-angular@5.0.13(transitive)
- Removedconventional-changelog-writer@5.0.1(transitive)
- Removedconventional-commits-filter@2.0.7(transitive)
- Removedconventional-commits-parser@3.2.4(transitive)
- Removedcosmiconfig@7.1.0(transitive)
- Removedcrypto-random-string@2.0.0(transitive)
- Removeddel@6.1.1(transitive)
- Removedenv-ci@5.5.0(transitive)
- Removedfigures@3.2.0(transitive)
- Removedfind-versions@4.0.0(transitive)
- Removedfromentries@1.3.2(transitive)
- Removedfs.realpath@1.0.0(transitive)
- Removedglob@7.2.3(transitive)
- Removedglobby@11.1.0(transitive)
- Removedhook-std@2.0.0(transitive)
- Removedhosted-git-info@4.1.0(transitive)
- Removedinflight@1.0.6(transitive)
- Removedinto-stream@6.0.0(transitive)
- Removedis-path-cwd@2.2.0(transitive)
- Removedis-path-inside@3.0.3(transitive)
- Removedis-plain-object@5.0.0(transitive)
- Removedis-text-path@1.0.1(transitive)
- Removedlru-cache@6.0.0(transitive)
- Removedmarked@4.3.0(transitive)
- Removedmime@3.0.0(transitive)
- Removedminimatch@3.1.2(transitive)
- Removednode-fetch@2.7.0(transitive)
- Removednormalize-package-data@3.0.3(transitive)
- Removednormalize-url@6.1.0(transitive)
- Removednpm@8.19.4(transitive)
- Removedp-each-series@2.2.0(transitive)
- Removedp-filter@2.1.0(transitive)
- Removedp-map@2.1.04.0.0(transitive)
- Removedpath-is-absolute@1.0.1(transitive)
- Removedreadable-stream@3.6.2(transitive)
- Removedrimraf@3.0.2(transitive)
- Removedsemantic-release@19.0.5(transitive)
- Removedsemver@6.3.1(transitive)
- Removedsemver-diff@3.1.1(transitive)
- Removedsemver-regex@3.1.4(transitive)
- Removedslash@3.0.0(transitive)
- Removedsplit2@3.2.2(transitive)
- Removedtemp-dir@2.0.0(transitive)
- Removedtempy@1.0.1(transitive)
- Removedtext-extensions@1.9.0(transitive)
- Removedthrough2@4.0.2(transitive)
- Removedtr46@0.0.3(transitive)
- Removedtype-fest@0.16.00.18.1(transitive)
- Removedunique-string@2.0.0(transitive)
- Removedurl-join@4.0.1(transitive)
- Removedwebidl-conversions@3.0.1(transitive)
- Removedwhatwg-url@5.0.0(transitive)
- Removedyallist@4.0.0(transitive)
- Removedyaml@1.10.2(transitive)
- Removedyargs@16.2.0(transitive)
Updated@semantic-release/exec@6
Updated@semantic-release/git@10
Updatedsemantic-release-license@1