npm-update-package 0.13.0 → 0.16.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/README.md CHANGED
@@ -5,10 +5,6 @@
5
5
 
6
6
  CLI tool for creating pull request to update npm packages
7
7
 
8
- ## Caution
9
-
10
- This package is currently under development, so the major version is 0 yet.
11
-
12
8
  ## Usage
13
9
 
14
10
  ```sh
@@ -53,7 +49,7 @@ Template strings such as `--branch-name` can embed variables like `{{packageName
53
49
 
54
50
  Branch name template
55
51
 
56
- - value: template string
52
+ - type: string
57
53
  - variables:
58
54
  - `currentVersion`
59
55
  - `newVersion`
@@ -66,7 +62,7 @@ Branch name template
66
62
 
67
63
  Commit message template
68
64
 
69
- - value: template string
65
+ - type: string
70
66
  - variables:
71
67
  - `currentVersion`
72
68
  - `newVersion`
@@ -79,17 +75,19 @@ Commit message template
79
75
 
80
76
  GitHub token
81
77
 
82
- - value: string
78
+ - type: string
83
79
  - required: true
84
80
 
85
81
  ### `--log-level`
86
82
 
87
83
  Log level to show
88
84
 
89
- - value: string
90
- - `error`
91
- - `info`
92
- - `debug`
85
+ - type: string
86
+ - allowed values:
87
+ - `off`: Do not output any logs.
88
+ - `error`: Output error logs.
89
+ - `info`: Output error/info logs.
90
+ - `debug`: Output error/info/debug logs.
93
91
  - required: false
94
92
  - default: `info`
95
93
 
@@ -97,7 +95,8 @@ Log level to show
97
95
 
98
96
  Package manager of your project
99
97
 
100
- - value: string
98
+ - type: string
99
+ - allowed values:
101
100
  - `npm`
102
101
  - `yarn`
103
102
  - required: false
@@ -107,7 +106,7 @@ Package manager of your project
107
106
 
108
107
  Pull request body template
109
108
 
110
- - value: template string
109
+ - type: string
111
110
  - variables:
112
111
  - `appName`
113
112
  - `appVersion`
@@ -134,7 +133,7 @@ This PR has been generated by [{{{appName}}}]({{{appWeb}}}) v{{appVersion}}
134
133
 
135
134
  Pull request title template
136
135
 
137
- - value: template string
136
+ - type: string
138
137
  - variables:
139
138
  - `currentVersion`
140
139
  - `newVersion`
@@ -142,3 +141,9 @@ Pull request title template
142
141
  - `updateType`
143
142
  - required: false
144
143
  - default: `chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}`
144
+
145
+ ## FAQ
146
+
147
+ ### Conflicts have occurred in PR. What should I do?
148
+
149
+ If conflicts have occurred in PR, close it and run npm-update-package again.
package/dist/app.js CHANGED
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.app = void 0;
4
4
  exports.app = {
5
5
  name: 'npm-update-package',
6
- version: '0.13.0',
6
+ version: '0.16.1',
7
7
  web: 'https://github.com/npm-update-package/npm-update-package'
8
8
  };
package/dist/git/index.js CHANGED
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Git = exports.CommitMessageCreator = exports.BranchNameCreator = void 0;
3
+ exports.GitRepository = exports.Git = exports.CommitMessageCreator = exports.BranchNameCreator = void 0;
4
4
  var BranchNameCreator_1 = require("./BranchNameCreator");
5
5
  Object.defineProperty(exports, "BranchNameCreator", { enumerable: true, get: function () { return BranchNameCreator_1.BranchNameCreator; } });
6
6
  var CommitMessageCreator_1 = require("./CommitMessageCreator");
7
7
  Object.defineProperty(exports, "CommitMessageCreator", { enumerable: true, get: function () { return CommitMessageCreator_1.CommitMessageCreator; } });
8
8
  var Git_1 = require("./Git");
9
9
  Object.defineProperty(exports, "Git", { enumerable: true, get: function () { return Git_1.Git; } });
10
+ var GitRepository_1 = require("./GitRepository");
11
+ Object.defineProperty(exports, "GitRepository", { enumerable: true, get: function () { return GitRepository_1.GitRepository; } });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PullRequestCreator = void 0;
4
- // TODO: add test
5
4
  class PullRequestCreator {
6
5
  constructor({ github, gitRepo, githubRepo, pullRequestTitleCreator, pullRequestBodyCreator, logger }) {
7
6
  this.github = github;
@@ -16,7 +15,7 @@ class PullRequestCreator {
16
15
  this.logger.debug(`title=${title}`);
17
16
  const body = this.pullRequestBodyCreator.create(outdatedPackage);
18
17
  this.logger.debug(`body=${body}`);
19
- const createdPullRequest = await this.github.createPullRequest({
18
+ const pullRequest = await this.github.createPullRequest({
20
19
  owner: this.gitRepo.owner,
21
20
  repo: this.gitRepo.name,
22
21
  base: this.githubRepo.default_branch,
@@ -24,8 +23,8 @@ class PullRequestCreator {
24
23
  title,
25
24
  body
26
25
  });
27
- this.logger.debug(`createdPullRequest=${JSON.stringify(createdPullRequest)}`);
28
- this.logger.info(`Pull request for ${outdatedPackage.name} has created. ${createdPullRequest.html_url}`);
26
+ this.logger.debug(`pullRequest=${JSON.stringify(pullRequest)}`);
27
+ this.logger.info(`Pull request for ${outdatedPackage.name} has created. ${pullRequest.html_url}`);
29
28
  }
30
29
  }
31
30
  exports.PullRequestCreator = PullRequestCreator;
@@ -4,7 +4,8 @@ exports.isLogLevel = exports.LogLevel = void 0;
4
4
  exports.LogLevel = {
5
5
  Debug: 'debug',
6
6
  Error: 'error',
7
- Info: 'info'
7
+ Info: 'info',
8
+ Off: 'off'
8
9
  };
9
10
  const logLevels = Object.values(exports.LogLevel);
10
11
  const isLogLevel = (value) => logLevels.includes(value);
package/dist/main.js CHANGED
@@ -11,7 +11,10 @@ const processors_1 = require("./processors");
11
11
  const terminal_1 = require("./terminal");
12
12
  // TODO: add test
13
13
  const main = async ({ options, logger }) => {
14
- logger.debug(`options=${JSON.stringify(options)}`);
14
+ logger.debug(`options=${JSON.stringify({
15
+ ...options,
16
+ githubToken: options.githubToken !== '' ? '***' : ''
17
+ })}`);
15
18
  const packageJsonParser = new package_json_1.PackageJsonParser(logger);
16
19
  const packageJsonReader = new package_json_1.PackageJsonReader({
17
20
  packageJsonParser,
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -8,7 +8,7 @@ const Options = (0, io_ts_1.type)({
8
8
  branchName: io_ts_1.string,
9
9
  commitMessage: io_ts_1.string,
10
10
  githubToken: io_ts_1.string,
11
- logLevel: (0, io_ts_1.union)([(0, io_ts_1.literal)(logger_1.LogLevel.Error), (0, io_ts_1.literal)(logger_1.LogLevel.Info), (0, io_ts_1.literal)(logger_1.LogLevel.Debug)]),
11
+ logLevel: (0, io_ts_1.union)([(0, io_ts_1.literal)(logger_1.LogLevel.Off), (0, io_ts_1.literal)(logger_1.LogLevel.Error), (0, io_ts_1.literal)(logger_1.LogLevel.Info), (0, io_ts_1.literal)(logger_1.LogLevel.Debug)]),
12
12
  packageManager: (0, io_ts_1.union)([(0, io_ts_1.literal)(package_manager_1.PackageManagerName.Npm), (0, io_ts_1.literal)(package_manager_1.PackageManagerName.Yarn)]),
13
13
  pullRequestBody: io_ts_1.string,
14
14
  pullRequestTitle: io_ts_1.string
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cliOptions = void 0;
4
+ const logger_1 = require("../logger");
5
+ const package_manager_1 = require("../package-manager");
6
+ exports.cliOptions = [
7
+ {
8
+ name: 'branch-name',
9
+ description: 'Branch name template',
10
+ required: false,
11
+ default: 'npm-update-package/{{{packageName}}}/v{{newVersion}}'
12
+ },
13
+ {
14
+ name: 'commit-message',
15
+ description: 'Commit message template',
16
+ required: false,
17
+ default: 'chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}'
18
+ },
19
+ {
20
+ name: 'github-token',
21
+ description: 'GitHub token',
22
+ required: true
23
+ },
24
+ {
25
+ name: 'log-level',
26
+ description: 'Log level to show',
27
+ required: false,
28
+ choices: [
29
+ logger_1.LogLevel.Off,
30
+ logger_1.LogLevel.Error,
31
+ logger_1.LogLevel.Info,
32
+ logger_1.LogLevel.Debug
33
+ ],
34
+ default: logger_1.LogLevel.Info
35
+ },
36
+ {
37
+ name: 'package-manager',
38
+ description: 'Package manager of your project',
39
+ required: false,
40
+ choices: [
41
+ package_manager_1.PackageManagerName.Npm,
42
+ package_manager_1.PackageManagerName.Yarn
43
+ ],
44
+ default: package_manager_1.PackageManagerName.Npm
45
+ },
46
+ {
47
+ name: 'pull-request-body',
48
+ description: 'Pull request body template',
49
+ required: false,
50
+ default: `This PR updates these packages:
51
+
52
+ |package|type|current version|new version|
53
+ |---|---|---|---|
54
+ |[{{{packageName}}}](https://www.npmjs.com/package/{{{packageName}}})|{{updateType}}|\`{{currentVersion}}\`|\`{{newVersion}}\`|
55
+
56
+ ---
57
+ This PR has been generated by [{{{appName}}}]({{{appWeb}}}) v{{appVersion}}`
58
+ },
59
+ {
60
+ name: 'pull-request-title',
61
+ description: 'Pull request title template',
62
+ required: false,
63
+ default: 'chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}'
64
+ }
65
+ ];
@@ -3,38 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initOptions = void 0;
4
4
  const commander_1 = require("commander");
5
5
  const app_1 = require("../app");
6
- const logger_1 = require("../logger");
7
- const package_manager_1 = require("../package-manager");
6
+ const cliOptions_1 = require("./cliOptions");
8
7
  const Options_1 = require("./Options");
8
+ const toCommanderOption_1 = require("./toCommanderOption");
9
9
  // TODO: add test
10
10
  const initOptions = () => {
11
- commander_1.program
12
- .version(app_1.app.version)
13
- .option('--branch-name <value>', 'Branch name template', 'npm-update-package/{{{packageName}}}/v{{newVersion}}')
14
- .option('--commit-message <value>', 'Commit message template', 'chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}')
15
- .requiredOption('--github-token <value>', 'GitHub token')
16
- .addOption(new commander_1.Option('--log-level <value>', 'Log level to show')
17
- .choices([
18
- logger_1.LogLevel.Error,
19
- logger_1.LogLevel.Info,
20
- logger_1.LogLevel.Debug
21
- ])
22
- .default(logger_1.LogLevel.Info))
23
- .addOption(new commander_1.Option('--package-manager <value>', 'Package manager of your project')
24
- .choices([
25
- package_manager_1.PackageManagerName.Npm,
26
- package_manager_1.PackageManagerName.Yarn
27
- ])
28
- .default(package_manager_1.PackageManagerName.Npm))
29
- .option('--pull-request-body <value>', 'Pull request body template', `This PR updates these packages:
30
-
31
- |package|type|current version|new version|
32
- |---|---|---|---|
33
- |[{{{packageName}}}](https://www.npmjs.com/package/{{{packageName}}})|{{updateType}}|\`{{currentVersion}}\`|\`{{newVersion}}\`|
34
-
35
- ---
36
- This PR has been generated by [{{{appName}}}]({{{appWeb}}}) v{{appVersion}}`)
37
- .option('--pull-request-title <value>', 'Pull request title template', 'chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}');
11
+ commander_1.program.version(app_1.app.version);
12
+ cliOptions_1.cliOptions
13
+ .map(toCommanderOption_1.toCommanderOption)
14
+ .forEach(option => commander_1.program.addOption(option));
38
15
  commander_1.program.parse(process.argv);
39
16
  const options = commander_1.program.opts();
40
17
  if (!(0, Options_1.isOptions)(options)) {
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toCommanderOption = void 0;
4
+ const commander_1 = require("commander");
5
+ // TODO: add test
6
+ const toCommanderOption = (cliOption) => {
7
+ const option = new commander_1.Option(`--${cliOption.name} <value>`, cliOption.description);
8
+ option.makeOptionMandatory(cliOption.required);
9
+ if (cliOption.choices !== undefined) {
10
+ option.choices(cliOption.choices);
11
+ }
12
+ if (!cliOption.required) {
13
+ option.default(cliOption.default);
14
+ }
15
+ return option;
16
+ };
17
+ exports.toCommanderOption = toCommanderOption;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-update-package",
3
- "version": "0.13.0",
3
+ "version": "0.16.1",
4
4
  "description": "CLI tool for creating pull request to update npm packages",
5
5
  "scripts": {
6
6
  "build": "tsc --project tsconfig.build.json",
@@ -24,7 +24,7 @@
24
24
  "io-ts": "2.2.16",
25
25
  "log4js": "6.3.0",
26
26
  "mustache": "4.1.0",
27
- "npm-check-updates": "12.0.3",
27
+ "npm-check-updates": "12.0.5",
28
28
  "parse-github-url": "1.0.2",
29
29
  "semver": "7.3.5"
30
30
  },
@@ -36,22 +36,22 @@
36
36
  "@types/node": "12.20.15",
37
37
  "@types/parse-github-url": "1.0.0",
38
38
  "@types/semver": "7.3.9",
39
- "@typescript-eslint/eslint-plugin": "5.6.0",
40
- "eslint": "8.4.1",
39
+ "@typescript-eslint/eslint-plugin": "5.8.0",
40
+ "eslint": "8.5.0",
41
41
  "eslint-config-standard-with-typescript": "21.0.1",
42
42
  "eslint-plugin-import": "2.25.3",
43
43
  "eslint-plugin-jest": "25.3.0",
44
44
  "eslint-plugin-node": "11.1.0",
45
- "eslint-plugin-promise": "5.2.0",
45
+ "eslint-plugin-promise": "6.0.0",
46
46
  "eslint-plugin-tsdoc": "0.2.14",
47
47
  "husky": "7.0.4",
48
48
  "jest": "27.0.6",
49
- "lint-staged": "12.1.2",
49
+ "lint-staged": "12.1.4",
50
50
  "npm-run-all": "4.1.5",
51
51
  "rimraf": "3.0.2",
52
- "ts-jest": "27.1.1",
52
+ "ts-jest": "27.1.2",
53
53
  "ts-node": "10.4.0",
54
- "typescript": "4.5.3",
54
+ "typescript": "4.5.4",
55
55
  "utility-types": "3.10.0"
56
56
  },
57
57
  "repository": {