Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update semantic-release to the latest version 馃殌 #137

Merged
merged 2 commits into from Jan 10, 2020

Conversation

greenkeeper[bot]
Copy link
Contributor

@greenkeeper greenkeeper bot commented Jan 9, 2020

The devDependency semantic-release was updated from 15.14.0 to 16.0.0.

This version is not covered by your current version range.

If you don鈥檛 accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.


Publisher: semantic-release-bot
License: MIT

Release Notes for v16.0.0

16.0.0 (2020-01-09)

Bug Fixes

  • add channel to publish success log (5744c5e)
  • add a flag indicate which branch is the main one (2caafba)
  • Add helpful detail to ERELEASEBRANCHES error message (#1188) (37bcc9e)
  • allow multiple branches with same channel (63f51ae)
  • allow to set ci option via API and config file (2faff26)
  • call getTagHead only when necessary (de77a79)
  • call success plugin only once for releases added to a channel (9a023b4)
  • correct log when adding channel to tag (61665be)
  • correctly determine next pre-release version (0457a07)
  • correctly determine release to add to a channel (aec96c7)
  • correctly handle skipped releases (89663d3)
  • display erroring git commands properly (1edae67)
  • do not call addChannelfor 2 merged branches configured with the same channel (4aad9cd)
  • do not create tags in dry-run mode for released to add to a channel (97748c5)
  • fetch all release branches on CI (b729183)
  • fix branch type regexp to handle version with multiple digits (52ca0b3)
  • fix maintenance branch regex (a022996)
  • fix range regexp to handle version with multiple digits (9a04e64)
  • handle branch properties set to false (751a5f1)
  • harmonize parameters passed to getError (f96c660)
  • ignore lasst release only if pre-release on the same channel as current branch (990e85f)
  • increase next version on prerelease branch based on highest commit type (9ecc7a3)
  • look also for previous prerelease versions to determine the next one (9772563)
  • modify fetch function to handle CircleCI specifics (cbef9d1)
  • on maintenance branch add to channel only version >= to start range (c22ae17)
  • remove confusing logs when searching for releases to add to a channel (162b4b9)
  • remove hack to workaround GitHub Rebase & Merge (844e0b0)
  • remove unnecessary await (9a1af4d)
  • simplify get-tags algorithm (00420a8)
  • throws error if the commit associated with a tag cannot be found (1317348)
  • update plugin versions (0785a84)
  • update plugins dependencies (9890584)
  • verify is branch is up to date by comparing remote and local HEAD (a8747c4)
  • pacjage: update @semantic-release/github and @semantic-release/npm (d55fda3)
  • package: update @semantic-release/commit-analyzer to version 7.0.0-beta.2 (725780b)
  • package: update @semantic-release/github to version 5.3.0-beta.5 (c1c96a8)
  • package: update @semantic-release/github to version 5.6.0-beta.1 (6053b89)
  • package: update @semantic-release/npm to version 5.2.0-beta.3 (390e966)
  • package: update @semantic-release/npm to version 6.0.0-beta.3 (65c4122)
  • package: update @semantic-release/github (9a30f35)
  • package: update @semantic-release/npm and @semantic-release/github (d6731b9)
  • package: update aggregate-error to version 2.0.0 (5d6fd7c)
  • package: update execa to version 3.0.0 (9537927)
  • package: update marked to version 0.6.0 (d0891bf)
  • package: update micromatch to version 3.1.10 (e5344cd)
  • package: update micromatch to version 4.0.2 (5618641)
  • package: update p-each-series to version 2.1.0 (2c655b2)
  • package: update semver-diff to version 3.1.1 (581998c)
  • remove unnecessary branch parameter from push function (968b996)
  • revert to the correct refspec in fetch function (9948a74)
  • update plugins dependencies (73f0c77)
  • repositoryUrl: on beta repositoryUrl needs auth for pre-release flows (#1186) (3610422)

Features

  • allow addChannel plugins to return false in order to signify no release was done (e1c7269)
  • allow publish plugins to return false in order to signify no release was done (47484f5)
  • allow to release any version on a branch if up to date with next branch (916c268)
  • require Node.js >=10.13 (0716a45)
  • require Node.js >=8.15 (f1d983d)
  • support multiple branches and distribution channels (7b40524)
  • use Git notes to store the channels on which a version has been released (b2c1b2c)
  • package: update @semantic-release/commit-analyzer to version 7.0.0 (e63e753)

Performance Improvements

  • use git tag --merge <branch> to filter tags present in a branch history (cffe9a8)

Reverts

  • feat: create annotated tags (0629f3c)
  • fix: prefix git auth url with "x-access-token:" when run in a GitHub Action (f67a667)
  • fix: revert to execa ^1.0.0 (fa62d0b)
  • fix(package): update @semantic-release/github back to a build from the beta branch (d120eae)

BREAKING CHANGES

  • Require Node.js >= 10.13
  • this feature change the way semantic-release keep track of the channels on which a version has been released.
    It now use a JSON object stored in a Git note instead of Git tags formatted as v{version}@{channel}.

The tags formatted as v{version}@{channel} will now be ignored. If you have made releases with v16.0.0 on branches other than the default one you will have to update your repository.

The changes to make consist in:

  • Finding all the versions that have been released on a branch other than the default one by searching for all tags formatted v{version}@{channel}
  • For each of those version:
    • Create a tag without the {@channel} if none doesn't already exists
    • Add a Git note to the tag without the {@channel} containing the channels on which the version was released formatted as {"channels":["channel1","channel2"]} and using null for the default channel (for example.{"channels":[null,"channel1","channel2"]})
    • Push the tags and notes
    • Update the GitHub releases that refer to a tag formatted as v{version}@{channel} to use the tag without it
    • Delete the tags formatted as v{version}@{channel}
  • Git CLI version 2.7.1 or higher is now required

The --merge option of the git tag command has been added in Git version 2.7.1 and is now used by semantic-release

  • Require Node.js => 8.15
  • package: Regexp are not supported anymore for property matching in the releaseRules option.

Regex are replaced by globs. For example /core-.*/ should be changed to 'core-*'.

  • the branch option has been removed in favor of branches

The new branches option expect either an Array or a single branch definition. To migrate your configuration:

  • If you want to publish package from multiple branches, please the configuration documentation
  • If you use the default configuration and want to publish only from master: nothing to change
  • If you use the branch configuration and want to publish only from one branch: replace branch by branches ("branch": "my-release-branch" => "branches": "my-release-branch")
Commits

The new version differs by 114 commits.

  • 0785a84 fix: update plugin versions
  • 152bf45 Merge remote-tracking branch 'origin/beta'
  • 3ba8f2a Merge remote-tracking branch 'origin/master' into beta
  • 9772563 fix: look also for previous prerelease versions to determine the next one
  • 61665be fix: correct log when adding channel to tag
  • a8747c4 fix: verify is branch is up to date by comparing remote and local HEAD
  • 9a1af4d fix: remove unnecessary await
  • 9ecc7a3 fix: increase next version on prerelease branch based on highest commit type
  • c16fcc9 Merge branch 'master' into beta
  • 0716a45 feat: require Node.js >=10.13
  • 916c268 feat: allow to release any version on a branch if up to date with next branch
  • 534c0db Merge branch 'master' into beta
  • ec54c0b test: fix calls to fetch in tests
  • cbef9d1 fix: modify fetch function to handle CircleCI specifics
  • b2c1b2c feat: use Git notes to store the channels on which a version has been released

There are 114 commits in total.

See the full diff


FAQ and help

There is a collection of frequently asked questions. If those don鈥檛 help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper bot 馃尨

@keithamus keithamus merged commit 195a6b7 into master Jan 10, 2020
@keithamus keithamus deleted the greenkeeper/semantic-release-16.0.0 branch January 10, 2020 11:12
@keithamus
Copy link
Owner

馃帀 This PR is included in version 1.38.3 馃帀

The release is available on:

Your semantic-release bot 馃摝馃殌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant