-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build: use default channel for prereleases #609
build: use default channel for prereleases #609
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. Join @davidlj95 and the rest of your teammates on Graphite |
📦 Bundle size (Angular v17)Git ref:
|
📦 Bundle size (Angular v16)Git ref:
|
📦 Bundle size (Angular v18)Git ref:
|
📦 Bundle size (Angular v15)Git ref:
|
2aaf322
to
85b1214
Compare
🎉 This PR is included in version 1.0.0-beta.5 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Issue or need
Until now, semantic releases have been done in the
main
channel by mistake. This meant having amain
NPM dist tag for every release. In order to get thelatest
tag for pre-releases,tag
was set tolatest
inpackage.json
'spublishConfig
.But that's a misconfiguration workaround. The proper way is to indicate pre-releases on the default channel in semantic release. Which means using the
latest
dist tag on npm.Related to this:
npm publish
default was to addlatest
tag to every publish. But as that can be not desired it some scenarios, seems this default may change soonProposed changes
Use default channel for pre-releases in semantic release configuration. Remove
tag
inpackage.json
used to addlatest
apart frommain
dist tag.In order to migrate existing releases to the default channel, manually updated git notes. Git notes are used by semantic release to track in which channel(s) a release has been performed.
Relevant commands:
git for-each-ref 'refs/notes/*' # to list local notes refs
--format '%(refname)' --shell
git ls-remote 'refs/notes/*' # to list remote notes
git fetch origin 'refs/notes/*:refs/notes/*' # to fetch remote notes
git update-ref -d 'refs/notes/<ref>' # to remove local ref
git push --delete origin 'refs/notes/<ref>' # to remove remote ref
git notes --ref <note-ref> add -f -m 'content' <ref> # to add a note to a ref
Notes content is (to indicate default branch):
{"channels":[null]}
Notes ref name is (recently changed though)
https://github.com/semantic-release/semantic-release/blob/v23.1.1/lib/git.js#L344-L350
Name was before
semantic-release
for all tagsQuick reminders