@sanity/semantic-release-preset
Advanced tools
Comparing version 3.0.2 to 4.1.1
@@ -8,2 +8,38 @@ <!-- 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) | ||
@@ -10,0 +46,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": "3.0.2", | ||
"version": "4.1.1", | ||
"description": "Recommended setup for releasing semantically using GitHub Actions workflows", | ||
@@ -51,15 +51,18 @@ "keywords": [ | ||
"dependencies": { | ||
"@semantic-release/changelog": "6.0.2", | ||
"@semantic-release/exec": "6.0.3", | ||
"@semantic-release/git": "10.0.1", | ||
"conventional-changelog-conventionalcommits": "5.0.0", | ||
"semantic-release": "20.0.2", | ||
"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.8.0", | ||
"prettier": "^2.8.2", | ||
"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": { | ||
@@ -66,0 +69,0 @@ "node": ">=18" |
@@ -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 | ||
@@ -216,4 +151,4 @@ - run: npm test --if-present | ||
with: | ||
cache: npm | ||
node-version: lts/* | ||
cache: 'npm' | ||
- run: npm ci | ||
@@ -220,0 +155,0 @@ - run: npm test --if-present |
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/changelog@6.0.3(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)
+ Addedclean-stack@5.2.0(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)
+ Addedcrypto-random-string@4.0.0(transitive)
+ Addedenv-ci@9.1.1(transitive)
+ Addedexeca@7.2.08.0.1(transitive)
+ Addedget-stream@7.0.18.0.1(transitive)
+ Addedglobby@14.0.2(transitive)
+ Addedhosted-git-info@7.0.2(transitive)
+ Addedhuman-signals@4.3.15.0.0(transitive)
+ Addedinto-stream@7.0.0(transitive)
+ Addedis-text-path@2.0.0(transitive)
+ Addedjson-parse-even-better-errors@3.0.2(transitive)
+ Addedlines-and-columns@2.0.4(transitive)
+ Addedlru-cache@10.3.0(transitive)
+ Addedmarked@5.1.2(transitive)
+ Addedmeow@12.1.1(transitive)
+ Addedmime@4.0.3(transitive)
+ Addednormalize-package-data@6.0.2(transitive)
+ Addednormalize-url@8.0.1(transitive)
+ Addednpm@9.9.3(transitive)
+ Addedp-filter@4.1.0(transitive)
+ Addedp-map@7.0.2(transitive)
+ Addedparse-json@7.1.1(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)
+ Addedsignal-exit@4.1.0(transitive)
+ Addedslash@5.1.0(transitive)
+ Addedsplit2@4.2.0(transitive)
+ Addedtemp-dir@3.0.0(transitive)
+ Addedtempy@3.1.0(transitive)
+ Addedtext-extensions@2.4.0(transitive)
+ Addedtype-fest@1.4.03.13.14.21.0(transitive)
+ Addedunicorn-magic@0.1.0(transitive)
+ Addedunique-string@3.0.0(transitive)
+ Addedurl-join@5.0.0(transitive)
- Removedsemantic-release@20.0.2
- 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/changelog@6.0.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)
- Removedaggregate-error@4.0.1(transitive)
- Removedarray-union@2.1.0(transitive)
- Removedbalanced-match@1.0.2(transitive)
- Removedbrace-expansion@1.1.11(transitive)
- Removedclean-stack@4.2.0(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)
- Removedcrypto-random-string@2.0.0(transitive)
- Removeddel@6.1.1(transitive)
- Removedenv-ci@8.0.0(transitive)
- Removedexeca@6.1.0(transitive)
- Removedfs.realpath@1.0.0(transitive)
- Removedglob@7.2.3(transitive)
- Removedglobby@11.1.0(transitive)
- Removedhosted-git-info@4.1.06.1.1(transitive)
- Removedhuman-signals@3.0.1(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.07.18.3(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-filter@2.1.0(transitive)
- Removedp-map@2.1.04.0.0(transitive)
- Removedpath-is-absolute@1.0.1(transitive)
- Removedread-pkg@7.1.0(transitive)
- Removedread-pkg-up@9.1.0(transitive)
- Removedreadable-stream@3.6.2(transitive)
- Removedrimraf@3.0.2(transitive)
- Removedsemantic-release@20.0.2(transitive)
- Removedsemver@6.3.1(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)
Updated@semantic-release/exec@6
Updated@semantic-release/git@10
Updatedsemantic-release-license@1