release-it 14.14.0 → 14.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +102 -0
- package/README.md +8 -0
- package/lib/plugin/GitRelease.js +1 -1
- package/lib/plugin/gitlab/GitLab.js +2 -1
- package/package.json +8 -7
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
This document lists breaking changes for each major release.
|
|
4
|
+
|
|
5
|
+
See the GitHub Releases page for detailed changelogs:
|
|
6
|
+
[https://github.com/release-it/release-it/releases](https://github.com/release-it/release-it/releases)
|
|
7
|
+
|
|
8
|
+
## v14
|
|
9
|
+
|
|
10
|
+
- Removed `global` property from plugins. Use `this.config[key]` instead.
|
|
11
|
+
- Removed deprecated `npm.access` option. Set this in `package.json` instead.
|
|
12
|
+
|
|
13
|
+
## v13
|
|
14
|
+
|
|
15
|
+
- Dropped support for Node v8
|
|
16
|
+
- Dropped support for GitLab v11.6 and lower.
|
|
17
|
+
- Deprecated `scripts` are removed (in favor of [hooks](https://github.com/release-it/release-it#hooks)).
|
|
18
|
+
- Removed deprecated `--non-interactive` (`-n`) argument. Use `--ci` instead.
|
|
19
|
+
- Removed old `%s` and `[REV_RANGE]` syntax in command substitutions. Use `${version}` and `${latestTag}` instead.
|
|
20
|
+
|
|
21
|
+
## v12
|
|
22
|
+
|
|
23
|
+
- The `--follow-tags` argument for `git push` has been moved to the default configuration. This is only a breaking
|
|
24
|
+
change if `git.pushArgs` was not empty (it was empty by default).
|
|
25
|
+
|
|
26
|
+
## v11
|
|
27
|
+
|
|
28
|
+
- The custom `conventional-changelog` increment (e.g. `"increment": "conventional:angular"`) with additional script
|
|
29
|
+
configuration is replaced with a plugin. Please see
|
|
30
|
+
[conventional changelog](https://github.com/release-it/release-it/blob/master/docs/changelog.md#conventional-changelog)
|
|
31
|
+
how to use this plugin.
|
|
32
|
+
- The `pkgFiles` option has been removed. If there's a need to bump other files than what `npm version` bumps, it should
|
|
33
|
+
be (part of) a plugin.
|
|
34
|
+
- By default, the latest version was derived from the latest Git tag. From v11, if the repo has a `package.json` then
|
|
35
|
+
that `version` is used instead. The `use` option has been removed. Also see
|
|
36
|
+
[latest version](https://github.com/release-it/release-it#latest-version).
|
|
37
|
+
- `scripts.changelog` has been moved to `git.changelog`
|
|
38
|
+
|
|
39
|
+
## v10
|
|
40
|
+
|
|
41
|
+
- Dropped support for Node v6
|
|
42
|
+
- Deprecated options from v9 are removed, the `dist.repo` config in particular (also see
|
|
43
|
+
[distribution repository](https://github.com/release-it/release-it/blob/master/docs/recipes/distribution-repo.md) for
|
|
44
|
+
alternatives).
|
|
45
|
+
- Drop the `--debug` flag. `DEBUG=release-it:* ...` still works.
|
|
46
|
+
|
|
47
|
+
## v9
|
|
48
|
+
|
|
49
|
+
There should be no breaking changes, but there have been major internal refactorings and an improved UI. A bunch of new
|
|
50
|
+
features and bug fixes have been implemented. Last but not least, the configuration structure is changed significantly.
|
|
51
|
+
For this (backwards compatible) change, deprecation warnings are shown, and configurations must be migrated with the
|
|
52
|
+
next major release (v10).
|
|
53
|
+
|
|
54
|
+
- All "command hooks" have been moved to `scripts.*`, and some have been renamed.
|
|
55
|
+
- All `src.*` options have been moved to `git.*` (and `scripts.*`).
|
|
56
|
+
- The `dist.repo` configuration and functionality has been removed.
|
|
57
|
+
|
|
58
|
+
## v8
|
|
59
|
+
|
|
60
|
+
- Drop the `--force` flag. It's only use was to move a Git tag.
|
|
61
|
+
|
|
62
|
+
## v7
|
|
63
|
+
|
|
64
|
+
- No longer adds untracked files to release commit. (#230)
|
|
65
|
+
|
|
66
|
+
## v6
|
|
67
|
+
|
|
68
|
+
- Default value for `requireCleanWorkingDir` is now `true` (previously: `false`). (#173)
|
|
69
|
+
- Skip prompt (interactive) if corresponding task (non-interactive) is disabled. E.g. `npm.publish: false` will also not
|
|
70
|
+
show "publish" prompt.
|
|
71
|
+
|
|
72
|
+
## v5
|
|
73
|
+
|
|
74
|
+
- Drop support for Node v4.
|
|
75
|
+
|
|
76
|
+
[Release notes for v5](https://github.com/release-it/release-it/releases/tag/5.0.0-beta.0)
|
|
77
|
+
|
|
78
|
+
## v4
|
|
79
|
+
|
|
80
|
+
- Use `shell.exec` for build commands by default (previously this required a `!` prefix).
|
|
81
|
+
|
|
82
|
+
[Release notes for v4](https://github.com/release-it/release-it/releases/tag/4.0.0-rc.0)
|
|
83
|
+
|
|
84
|
+
## v3
|
|
85
|
+
|
|
86
|
+
- Configuration filename must be `.release-it.json` (previously `.release.json`).
|
|
87
|
+
- Refactored configuration structure in this file (and the CLI arguments with it).
|
|
88
|
+
|
|
89
|
+
[Release notes for v3](https://github.com/release-it/release-it/releases/tag/3.0.0)
|
|
90
|
+
|
|
91
|
+
## v2
|
|
92
|
+
|
|
93
|
+
- Build command is executed before git commit/push.
|
|
94
|
+
- Configuration options are better organized. Most of them are backwards compatible with a deprecation notice.
|
|
95
|
+
|
|
96
|
+
[Release notes for v2](https://github.com/release-it/release-it/releases/tag/2.0.0)
|
|
97
|
+
|
|
98
|
+
## v1
|
|
99
|
+
|
|
100
|
+
Initial major release.
|
|
101
|
+
|
|
102
|
+
[Release notes for v1](https://github.com/release-it/release-it/releases/tag/1.0.0)
|
package/README.md
CHANGED
|
@@ -271,6 +271,14 @@ Use `--verbose` to log the output of the commands.
|
|
|
271
271
|
For the sake of verbosity, the full list of hooks is actually: `init`, `beforeBump`, `bump`, `beforeRelease`, `release`
|
|
272
272
|
or `afterRelease`. However, hooks like `before:beforeRelease` look weird and are usually not useful in practice.
|
|
273
273
|
|
|
274
|
+
Note that arguments need to be quoted properly when used from the command line:
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
release-it --'hooks.after:release="echo Successfully released ${name} v${version} to ${repo.repository}."'
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
Using Inquirer.js inside custom hook scripts might cause issues (since release-it also uses this itself).
|
|
281
|
+
|
|
274
282
|
## Plugins
|
|
275
283
|
|
|
276
284
|
Since v11, release-it can be extended in many, many ways. Here are some plugins:
|
package/lib/plugin/GitRelease.js
CHANGED
|
@@ -10,7 +10,7 @@ class GitRelease extends GitBase {
|
|
|
10
10
|
getInitialOptions(options) {
|
|
11
11
|
const baseOptions = super.getInitialOptions(...arguments);
|
|
12
12
|
const git = options.git || defaultConfig.git;
|
|
13
|
-
const gitOptions = _.pick(git, ['tagName', 'pushRepo', 'changelog']);
|
|
13
|
+
const gitOptions = _.pick(git, ['tagName', 'tagMatch', 'pushRepo', 'changelog']);
|
|
14
14
|
return _.defaults(baseOptions, gitOptions);
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -4,6 +4,7 @@ const got = require('got');
|
|
|
4
4
|
const globby = require('globby');
|
|
5
5
|
const FormData = require('form-data');
|
|
6
6
|
const _ = require('lodash');
|
|
7
|
+
const allSettled = require('promise.allsettled');
|
|
7
8
|
const Release = require('../GitRelease');
|
|
8
9
|
const { format, e } = require('../../util');
|
|
9
10
|
const prompts = require('./prompts');
|
|
@@ -148,7 +149,7 @@ class GitLab extends Release {
|
|
|
148
149
|
});
|
|
149
150
|
});
|
|
150
151
|
try {
|
|
151
|
-
await
|
|
152
|
+
await allSettled(requests).then(results => {
|
|
152
153
|
for (const result of results) {
|
|
153
154
|
if (result.status === 'rejected') {
|
|
154
155
|
throw e('Missing one or more milestones in GitLab. Creating a GitLab release will fail.', docs);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "release-it",
|
|
3
|
-
"version": "14.14.
|
|
3
|
+
"version": "14.14.1",
|
|
4
4
|
"description": "Generic CLI tool to automate versioning and package publishing related tasks.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"build",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"globby": "11.0.4",
|
|
68
68
|
"got": "11.8.3",
|
|
69
69
|
"import-cwd": "3.0.0",
|
|
70
|
-
"inquirer": "8.2.
|
|
70
|
+
"inquirer": "8.2.0",
|
|
71
71
|
"is-ci": "3.0.1",
|
|
72
72
|
"lodash": "4.17.21",
|
|
73
73
|
"mime-types": "2.1.35",
|
|
@@ -76,7 +76,8 @@
|
|
|
76
76
|
"ora": "5.4.1",
|
|
77
77
|
"os-name": "4.0.1",
|
|
78
78
|
"parse-json": "5.2.0",
|
|
79
|
-
"
|
|
79
|
+
"promise.allsettled": "1.0.5",
|
|
80
|
+
"semver": "7.3.6",
|
|
80
81
|
"shelljs": "0.8.5",
|
|
81
82
|
"update-notifier": "5.1.0",
|
|
82
83
|
"url-join": "4.0.1",
|
|
@@ -88,17 +89,17 @@
|
|
|
88
89
|
"devDependencies": {
|
|
89
90
|
"@octokit/request-error": "2.1.0",
|
|
90
91
|
"ava": "3.15.0",
|
|
91
|
-
"eslint": "
|
|
92
|
+
"eslint": "7.32.0",
|
|
92
93
|
"eslint-config-prettier": "8.5.0",
|
|
93
94
|
"eslint-plugin-ava": "13.2.0",
|
|
94
|
-
"eslint-plugin-import": "2.
|
|
95
|
+
"eslint-plugin-import": "2.26.0",
|
|
95
96
|
"eslint-plugin-prettier": "4.0.0",
|
|
96
97
|
"markdown-toc": "1.2.0",
|
|
97
|
-
"mock-fs": "
|
|
98
|
+
"mock-fs": "4.14.0",
|
|
98
99
|
"mock-stdio": "1.0.3",
|
|
99
100
|
"nock": "13.2.4",
|
|
100
101
|
"node-fetch": "2.6.7",
|
|
101
|
-
"prettier": "2.6.
|
|
102
|
+
"prettier": "2.6.2",
|
|
102
103
|
"proxyquire": "2.1.3",
|
|
103
104
|
"sinon": "13.0.1",
|
|
104
105
|
"strip-ansi": "6.0.0"
|