-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Extract npm and github publish to plugins #515
Conversation
e06ae1f
to
b5d3c44
Compare
b5d3c44
to
9ad2634
Compare
Codecov Report
@@ Coverage Diff @@
## caribou #515 +/- ##
======================================
Coverage 100% 100%
======================================
Files 15 13 -2
Lines 276 248 -28
Branches 45 47 +2
======================================
- Hits 276 248 -28
Continue to review full report at Codecov.
|
9ad2634
to
851e6f1
Compare
851e6f1
to
202a13a
Compare
I’m wondering about the note in the 2nd breaking change:
is there a package you are using to read out the npm rc auth? If yes, maybe we can recommend it in the release notes? No need to update commits, we can update release notes later |
I'm using https://github.com/kevva/npm-conf here I can update the commit as I have to reference https://github.com/semantic-release/github version 1.0.0 when it's released |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
whenever you are ready 🎉
d605473
to
30ad3cf
Compare
- Add a new plugin type: `publish` - Add support for multi-plugin. A plugin module can now return an object with a property for each plugin type - Uses by default [npm](https://github.com/semantic-release/npm) and [github](https://github.com/semantic-release/github) in addition of Travis for the verify condition plugin - Uses by default [npm](https://github.com/semantic-release/npm) and [github](https://github.com/semantic-release/github) for the publish plugin - `gitTag` if one can be found is passed to `generateNotes` for both `lastRelease` and `nextRelease` - `semantic-release` now verifies the plugin configuration (in the `release` property of `package.json`) and throws an error if it's invalid - `semantic-release` now verifies each plugin output and will throw an error if a plugin returns an unexpected value. BREAKING CHANGE: `githubToken`, `githubUrl` and `githubApiPathPrefix` have to be set at the [github](https://github.com/semantic-release/github) plugin level. They can be set via `GH_TOKEN`, `GH_URL` and `GH_PREFIX` environment variables. BREAKING CHANGE: the `npm` parameter is not passed to any plugin anymore. Each plugin have to read `.npmrc` if they needs to (with https://github.com/kevva/npm-conf for example).
Isn't npm-conf deprecated? |
Could you give an example how to use an arbitrary shell command as a publish step? E.g. |
That is not possible yet. I'm working on a plugin that would allow to do that. |
Do existing plugins like https://github.com/finom/last-release-git sill work with 10.0.0? Btw, thank you for all the work @pvdlg! These updates are very exciting. |
I cannot tell you about https://github.com/finom/last-release-git |
Even better! |
publish
gitTag
if one can be found is passed togenerateNotes
for bothlastRelease
andnextRelease
semantic-release
now verifies the plugin configuration (in therelease
property ofpackage.json
) and throws an error if it's invalidsemantic-release
now verifies each plugin output and will throw an error if a plugin returns an unexpected value.To be merged only when https://github.com/semantic-release/github is released.
Fix #484, Fix #459, Fix #504, Fix #465, Fix #425, Fix #215, Fix #244