npm-update-package 1.5.1 → 1.5.3
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/dist/package.json +4 -3
- package/dist/src/ncu/Dependency.js +13 -0
- package/dist/src/ncu/Ncu.js +19 -30
- package/dist/src/ncu/createDepOptionValue.js +11 -0
- package/dist/src/ncu/toDependency.js +21 -0
- package/dist/src/package-json/index.js +1 -0
- package/dist/src/package-json/readPackageJson.js +11 -0
- package/package.json +4 -3
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "npm-update-package",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.3",
|
|
4
4
|
"description": "CLI tool for creating pull requests to update npm packages",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc --project tsconfig.build.json",
|
|
@@ -31,7 +31,8 @@
|
|
|
31
31
|
"type-guards": "0.15.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@eslint-recommended/eslint-config-typescript": "1.3.
|
|
34
|
+
"@eslint-recommended/eslint-config-typescript": "1.3.1",
|
|
35
|
+
"@npm-update-package/eslint-config-typescript": "0.1.1",
|
|
35
36
|
"@tsconfig/node14": "1.0.3",
|
|
36
37
|
"@types/mustache": "4.2.1",
|
|
37
38
|
"@types/node": "14.18.32",
|
|
@@ -45,7 +46,7 @@
|
|
|
45
46
|
"eslint-plugin-import": "2.26.0",
|
|
46
47
|
"eslint-plugin-import-newlines": "1.2.3",
|
|
47
48
|
"eslint-plugin-jest": "27.1.3",
|
|
48
|
-
"eslint-plugin-jsdoc": "39.
|
|
49
|
+
"eslint-plugin-jsdoc": "39.6.2",
|
|
49
50
|
"eslint-plugin-n": "15.4.0",
|
|
50
51
|
"eslint-plugin-promise": "6.1.1",
|
|
51
52
|
"eslint-plugin-tsdoc": "0.2.17",
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isDependency = exports.Dependency = void 0;
|
|
4
|
+
exports.Dependency = {
|
|
5
|
+
Bundle: 'bundle',
|
|
6
|
+
Dev: 'dev',
|
|
7
|
+
Optional: 'optional',
|
|
8
|
+
Peer: 'peer',
|
|
9
|
+
Prod: 'prod'
|
|
10
|
+
};
|
|
11
|
+
const values = Object.values(exports.Dependency);
|
|
12
|
+
const isDependency = (value) => values.includes(value);
|
|
13
|
+
exports.isDependency = isDependency;
|
package/dist/src/ncu/Ncu.js
CHANGED
|
@@ -3,44 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Ncu = void 0;
|
|
4
4
|
const npm_check_updates_1 = require("npm-check-updates");
|
|
5
5
|
const type_guards_1 = require("type-guards");
|
|
6
|
-
const file_1 = require("../file");
|
|
7
6
|
const logger_1 = require("../logger");
|
|
8
7
|
const package_json_1 = require("../package-json");
|
|
9
8
|
const semver_1 = require("../semver");
|
|
9
|
+
const createDepOptionValue_1 = require("./createDepOptionValue");
|
|
10
10
|
const NcuResult_1 = require("./NcuResult");
|
|
11
11
|
// TODO: Add test
|
|
12
|
+
// TODO: Rename to NpmCheckUpdates
|
|
12
13
|
class Ncu {
|
|
13
14
|
constructor(options) {
|
|
14
15
|
this.options = options;
|
|
15
16
|
}
|
|
16
17
|
async check() {
|
|
18
|
+
const dep = (0, createDepOptionValue_1.createDepOptionValue)(this.options.dependencyTypes);
|
|
19
|
+
logger_1.logger.trace(`dep=${dep}`);
|
|
17
20
|
return await this.run({
|
|
18
21
|
packageManager: this.options.packageManager,
|
|
19
22
|
jsonUpgraded: true,
|
|
20
|
-
dep
|
|
23
|
+
dep,
|
|
21
24
|
reject: this.options.ignorePackages
|
|
22
25
|
});
|
|
23
26
|
}
|
|
24
|
-
createDepOptionValue() {
|
|
25
|
-
return this.options.dependencyTypes
|
|
26
|
-
.map((dependencyType) => {
|
|
27
|
-
switch (dependencyType) {
|
|
28
|
-
case package_json_1.DependencyType.Dependencies:
|
|
29
|
-
return 'prod';
|
|
30
|
-
case package_json_1.DependencyType.DevDependencies:
|
|
31
|
-
return 'dev';
|
|
32
|
-
case package_json_1.DependencyType.PeerDependencies:
|
|
33
|
-
return 'peer';
|
|
34
|
-
case package_json_1.DependencyType.BundledDependencies:
|
|
35
|
-
return 'bundle';
|
|
36
|
-
case package_json_1.DependencyType.OptionalDependencies:
|
|
37
|
-
return 'optional';
|
|
38
|
-
default:
|
|
39
|
-
throw new Error();
|
|
40
|
-
}
|
|
41
|
-
})
|
|
42
|
-
.join(',');
|
|
43
|
-
}
|
|
44
27
|
async update(outdatedPackage) {
|
|
45
28
|
return await this.run({
|
|
46
29
|
packageManager: this.options.packageManager,
|
|
@@ -50,15 +33,17 @@ class Ncu {
|
|
|
50
33
|
});
|
|
51
34
|
}
|
|
52
35
|
async run(options) {
|
|
53
|
-
// Read package.json before running
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
36
|
+
// Read package.json before running npm-check-updates
|
|
37
|
+
const pkg = await (0, package_json_1.readPackageJson)('./package.json');
|
|
38
|
+
logger_1.logger.trace(`pkg=${JSON.stringify(pkg)}`);
|
|
39
|
+
// Run npm-check-updates
|
|
57
40
|
const result = await (0, npm_check_updates_1.run)(options);
|
|
58
|
-
logger_1.logger.
|
|
41
|
+
logger_1.logger.trace(`result=${JSON.stringify(result)}`);
|
|
59
42
|
if (!(0, NcuResult_1.isNcuResult)(result)) {
|
|
60
|
-
throw new Error(
|
|
43
|
+
throw new Error(`npm-check-updates has outputted unexpected result. result=${JSON.stringify(result)}`);
|
|
61
44
|
}
|
|
45
|
+
const resultEntries = Object.entries(result);
|
|
46
|
+
logger_1.logger.trace(`resultEntries=${JSON.stringify(resultEntries)}`);
|
|
62
47
|
const { dependencies, devDependencies, peerDependencies, bundledDependencies, optionalDependencies } = pkg;
|
|
63
48
|
const toCurrentVersionString = (packageName) => {
|
|
64
49
|
if (dependencies?.[packageName] !== undefined) {
|
|
@@ -94,20 +79,22 @@ class Ncu {
|
|
|
94
79
|
return package_json_1.DependencyType.OptionalDependencies;
|
|
95
80
|
}
|
|
96
81
|
};
|
|
97
|
-
const resultEntries = Object.entries(result);
|
|
98
82
|
const outdatedPackages = resultEntries
|
|
99
83
|
.map(([name, newVersionString]) => {
|
|
100
84
|
const currentVersionString = toCurrentVersionString(name);
|
|
85
|
+
logger_1.logger.trace(`currentVersionString=${String(currentVersionString)}`);
|
|
101
86
|
if (currentVersionString === undefined) {
|
|
102
87
|
return undefined;
|
|
103
88
|
}
|
|
104
89
|
const dependencyType = toDependencyType(name);
|
|
90
|
+
logger_1.logger.trace(`currentVersionString=${String(dependencyType)}`);
|
|
105
91
|
if (dependencyType === undefined) {
|
|
106
92
|
return undefined;
|
|
107
93
|
}
|
|
108
94
|
const currentVersion = semver_1.SemVer.of(currentVersionString);
|
|
109
95
|
const newVersion = semver_1.SemVer.of(newVersionString);
|
|
110
96
|
const level = (0, semver_1.compareSemVers)(currentVersion, newVersion);
|
|
97
|
+
logger_1.logger.trace(`level=${String(level)}`);
|
|
111
98
|
if (level === undefined) {
|
|
112
99
|
return undefined;
|
|
113
100
|
}
|
|
@@ -118,12 +105,14 @@ class Ncu {
|
|
|
118
105
|
level,
|
|
119
106
|
dependencyType
|
|
120
107
|
};
|
|
108
|
+
logger_1.logger.trace(`outdatedPackage=${JSON.stringify(outdatedPackage)}`);
|
|
121
109
|
return outdatedPackage;
|
|
122
110
|
})
|
|
123
111
|
// eslint-disable-next-line unicorn/no-array-callback-reference
|
|
124
112
|
.filter(type_guards_1.isNotUndefined);
|
|
113
|
+
logger_1.logger.trace(`outdatedPackages=${JSON.stringify(outdatedPackages)}`);
|
|
125
114
|
if (resultEntries.length !== outdatedPackages.length) {
|
|
126
|
-
throw new Error(
|
|
115
|
+
throw new Error(`Failed to running npm-check-updates. result=${JSON.stringify(result)}`);
|
|
127
116
|
}
|
|
128
117
|
return outdatedPackages;
|
|
129
118
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createDepOptionValue = void 0;
|
|
4
|
+
const toDependency_1 = require("./toDependency");
|
|
5
|
+
// TODO: Add test
|
|
6
|
+
const createDepOptionValue = (dependencyTypes) => {
|
|
7
|
+
return dependencyTypes
|
|
8
|
+
.map((dependencyType) => (0, toDependency_1.toDependency)(dependencyType))
|
|
9
|
+
.join(',');
|
|
10
|
+
};
|
|
11
|
+
exports.createDepOptionValue = createDepOptionValue;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toDependency = void 0;
|
|
4
|
+
const package_json_1 = require("../package-json");
|
|
5
|
+
const Dependency_1 = require("./Dependency");
|
|
6
|
+
// TODO: Add test
|
|
7
|
+
const toDependency = (dependencyType) => {
|
|
8
|
+
switch (dependencyType) {
|
|
9
|
+
case package_json_1.DependencyType.Dependencies:
|
|
10
|
+
return Dependency_1.Dependency.Prod;
|
|
11
|
+
case package_json_1.DependencyType.DevDependencies:
|
|
12
|
+
return Dependency_1.Dependency.Dev;
|
|
13
|
+
case package_json_1.DependencyType.PeerDependencies:
|
|
14
|
+
return Dependency_1.Dependency.Peer;
|
|
15
|
+
case package_json_1.DependencyType.BundledDependencies:
|
|
16
|
+
return Dependency_1.Dependency.Bundle;
|
|
17
|
+
case package_json_1.DependencyType.OptionalDependencies:
|
|
18
|
+
return Dependency_1.Dependency.Optional;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.toDependency = toDependency;
|
|
@@ -18,3 +18,4 @@ __exportStar(require("./DependencyType"), exports);
|
|
|
18
18
|
__exportStar(require("./extractRepository"), exports);
|
|
19
19
|
__exportStar(require("./PackageMetadata"), exports);
|
|
20
20
|
__exportStar(require("./parsePackageJson"), exports);
|
|
21
|
+
__exportStar(require("./readPackageJson"), exports);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.readPackageJson = void 0;
|
|
4
|
+
const file_1 = require("../file");
|
|
5
|
+
const parsePackageJson_1 = require("./parsePackageJson");
|
|
6
|
+
// TODO: Add test
|
|
7
|
+
const readPackageJson = async (path) => {
|
|
8
|
+
const json = await (0, file_1.readFile)(path);
|
|
9
|
+
return (0, parsePackageJson_1.parsePackageJson)(json);
|
|
10
|
+
};
|
|
11
|
+
exports.readPackageJson = readPackageJson;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "npm-update-package",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.3",
|
|
4
4
|
"description": "CLI tool for creating pull requests to update npm packages",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc --project tsconfig.build.json",
|
|
@@ -31,7 +31,8 @@
|
|
|
31
31
|
"type-guards": "0.15.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@eslint-recommended/eslint-config-typescript": "1.3.
|
|
34
|
+
"@eslint-recommended/eslint-config-typescript": "1.3.1",
|
|
35
|
+
"@npm-update-package/eslint-config-typescript": "0.1.1",
|
|
35
36
|
"@tsconfig/node14": "1.0.3",
|
|
36
37
|
"@types/mustache": "4.2.1",
|
|
37
38
|
"@types/node": "14.18.32",
|
|
@@ -45,7 +46,7 @@
|
|
|
45
46
|
"eslint-plugin-import": "2.26.0",
|
|
46
47
|
"eslint-plugin-import-newlines": "1.2.3",
|
|
47
48
|
"eslint-plugin-jest": "27.1.3",
|
|
48
|
-
"eslint-plugin-jsdoc": "39.
|
|
49
|
+
"eslint-plugin-jsdoc": "39.6.2",
|
|
49
50
|
"eslint-plugin-n": "15.4.0",
|
|
50
51
|
"eslint-plugin-promise": "6.1.1",
|
|
51
52
|
"eslint-plugin-tsdoc": "0.2.17",
|