Ari Porad
7ceac76689
feat(plugins): add getLastRelease hook
...
The code to determine the last-release is now in its own repository: https://github.com/semantic-release/last-release-npm
One can overwrite that behavior by defining a "getLastRelease" plugin. This way
one can decouple semantic-release from npm, e.g. by implementing a git-tag
based version. This is already worked on: https://github.com/semantic-release/last-release-git-tag
Closes #56
2015-08-18 13:56:24 +02:00
Stephan Bönnemann
76d9e3d2be
fix(last-release): encode scoped packages
2015-07-30 17:10:06 +01:00
Stephan Bönnemann
d9eeb3fcae
refactor: use one config object instead of passing arguments to plugins on their own
...
This commit does a lot but it's all connected and tries to make everything more extensible and future proof.
1. CLI arguments and options from the "package.json" are no longer treated as two different things. You can now pass options either way.
BREAKING CHANGE: cli arguments are now normalized to camelCase, so e.g. `options['github-url']` is now `options.githubUrl`
2. Plugins no longer receive config they need one by one, but in one huge object. This way it's easier to pass more info in the future w/o breaking existing plugins that rely on the position of the callback in the arguments array.
BREAKING CHANGE: Plugins now need to read their passed options from one huge config object.
Old:
```js
module.exports = function (pluginConfig, foo, bar, cb) {…}
```
New:
```js
// ES5
module.exports = function(pluginConfig, config, cb) {
var foo = config.foo
var bar = config.bar
…
}
// ES6
module.exports = function (pluginConfig, {foo, bar}, cb) {…}
```
2015-07-19 15:34:30 +02:00
Stephan Bönnemann
8892ec7f7a
fix(plugins): typo in plugin name
2015-07-17 16:51:06 +02:00
Stephan Bönnemann
59d852d6fb
feat(post): initial
2015-07-16 17:30:23 +02:00
Stephan Bönnemann
431babb42e
fix(verify): ensure repo url in package.json is well formed
2015-07-16 14:07:52 +02:00
Stephan Bönnemann
dbea5cc1b1
feat(last-release): add custom dist-tag
2015-07-16 11:51:33 +02:00
Stephan Bönnemann
13e2f5ce78
feat(cli): add verifyConditions hook
2015-07-14 21:13:36 +02:00
Stephan Bönnemann
af15fb4c61
fix(last-release): normalized registry url
2015-07-14 21:13:36 +02:00
Stephan Bönnemann
caf09c9be0
fix(cli): only write npmrc when necessary
2015-07-14 18:30:30 +02:00
Stephan Bönnemann
0316babf7a
refactor(error): use error module
2015-07-14 12:25:36 +02:00
Stephan Bönnemann
43c8df0bfe
fix(plugins): require user plugins relative to the cwd
2015-07-13 12:03:05 +02:00
Stephan Bönnemann
150273c8fe
fix(plugins): rename plugins
2015-07-13 11:53:32 +02:00
Stephan Bönnemann
2eff4a4467
style(type): add dot at end of sentence
2015-07-09 02:10:39 +02:00
Stephan Bönnemann
e1d5da5864
fix(plugins): pass right path to generateNotes
2015-07-09 02:10:39 +02:00
Stephan Bönnemann
a0190b7ad3
feat(bin): implement cli
2015-07-09 02:10:39 +02:00
Stephan Bönnemann
4d58af7145
test(base-scenario): creates nixt testing base
2015-07-09 02:10:38 +02:00
Stephan Bönnemann
c59b5cac9c
feat(nerf-dart): copy in nerf-dart module from npm
2015-06-19 18:35:25 -07:00
Stephan Bönnemann
057e8e9759
feat(plugins): normalize plugins and have unified function signature
2015-06-18 16:48:28 -07:00
Stephan Bönnemann
b63a43fa53
feat(verify): initial verification for pkg, options and env
2015-06-17 15:42:14 -07:00
Stephan Bönnemann
a4fe18cade
feat(pre): plugging last-release, commits and type together
2015-06-14 21:49:50 -07:00
Stephan Bönnemann
6df67828fe
refactor(commits,type): simplify interfaces
2015-06-14 21:49:39 -07:00
Stephan Bönnemann
a405021d08
feat(type): initial functionality
2015-06-14 19:40:05 -07:00
Stephan Bönnemann
861debb85e
feat(commits): initial functionality
2015-06-14 18:17:25 -07:00
Stephan Bönnemann
f62525ad7e
feat(last-release): initial functionality
2015-06-14 18:17:25 -07:00