npm-update-package 0.39.0 → 0.41.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
@@ -27,6 +27,7 @@ Commit message template
27
27
  - `newVersion`: new package version
28
28
  - `packageName`: package name
29
29
  - `level`: semver level (major/minor/patch)
30
+ - `dependencyType`: dependency type (dependencies/devDependencies/peerDependencies/optionalDependencies)
30
31
  - default: `chore(deps): {{{level}}} update {{{packageName}}} to v{{{newVersion}}}`
31
32
 
32
33
  ### `--github-token`
@@ -74,6 +75,7 @@ Pull request title template
74
75
  - `newVersion`: new package version
75
76
  - `packageName`: package name
76
77
  - `level`: semver level (major/minor/patch)
78
+ - `dependencyType`: dependency type (dependencies/devDependencies/peerDependencies/optionalDependencies)
77
79
  - default: `chore(deps): {{{level}}} update {{{packageName}}} to v{{{newVersion}}}`
78
80
 
79
81
  ### `--reviewers`
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-update-package",
3
- "version": "0.39.0",
3
+ "version": "0.41.1",
4
4
  "description": "CLI tool for creating pull requests to update npm packages",
5
5
  "scripts": {
6
6
  "build": "tsc --project tsconfig.build.json",
@@ -11,11 +11,13 @@ class CommitMessageCreator {
11
11
  const currentVersion = outdatedPackage.currentVersion.version;
12
12
  const newVersion = outdatedPackage.newVersion.version;
13
13
  const level = outdatedPackage.level;
14
+ const dependencyType = outdatedPackage.dependencyType;
14
15
  return (0, mustache_1.render)(this.template, {
15
16
  packageName,
16
17
  currentVersion,
17
18
  newVersion,
18
- level
19
+ level,
20
+ dependencyType
19
21
  });
20
22
  }
21
23
  }
@@ -49,14 +49,21 @@ class GitHub {
49
49
  ref: `heads/${branch}`
50
50
  });
51
51
  }
52
- // TODO: fetch all branches with page option
53
52
  async fetchBranches({ owner, repo }) {
54
- const { data } = await this.octokit.repos.listBranches({
55
- owner,
56
- repo,
57
- per_page: 100
58
- });
59
- return data;
53
+ const branches = [];
54
+ for (let page = 1;; page++) {
55
+ const { data } = await this.octokit.repos.listBranches({
56
+ owner,
57
+ repo,
58
+ per_page: 100,
59
+ page
60
+ });
61
+ if (data.length === 0) {
62
+ break;
63
+ }
64
+ branches.push(...data);
65
+ }
66
+ return branches;
60
67
  }
61
68
  async fetchLabel({ owner, repo, name }) {
62
69
  const { data } = await this.octokit.issues.getLabel({
@@ -15,10 +15,7 @@ class PullRequestBodyCreator {
15
15
  }
16
16
  async create(outdatedPackage) {
17
17
  const gitRepo = await this.extractRepository(outdatedPackage);
18
- const outdatedPackagesTable = this.createOutdatedPackagesTable({
19
- outdatedPackage,
20
- gitRepo
21
- });
18
+ const outdatedPackagesTable = this.createOutdatedPackagesTable(outdatedPackage);
22
19
  const metadataSection = this.createMetadataSection(outdatedPackage);
23
20
  const footer = this.createFooter();
24
21
  const body = `This PR updates these packages:
@@ -71,10 +68,10 @@ ${footer}`;
71
68
 
72
69
  ${items.join('\n')}`;
73
70
  }
74
- createOutdatedPackagesTable({ outdatedPackage, gitRepo }) {
71
+ createOutdatedPackagesTable(outdatedPackage) {
75
72
  const packageName = outdatedPackage.name;
76
73
  const packageLink = `[${packageName}](https://www.npmjs.com/package/${packageName})`;
77
- const repositoryLink = gitRepo !== undefined ? `[${gitRepo.owner}/${gitRepo.name}](${gitRepo.url.toString()})` : '-';
74
+ const dependencyType = outdatedPackage.dependencyType;
78
75
  const level = outdatedPackage.level;
79
76
  const currentVersion = outdatedPackage.currentVersion.version;
80
77
  const currentVersionLink = `[\`${currentVersion}\`](https://www.npmjs.com/package/${packageName}/v/${currentVersion})`;
@@ -82,9 +79,9 @@ ${items.join('\n')}`;
82
79
  const newVersionLink = `[\`${newVersion}\`](https://www.npmjs.com/package/${packageName}/v/${newVersion})`;
83
80
  const diffLink = `[diff](https://renovatebot.com/diffs/npm/${packageName}/${currentVersion}/${newVersion})`;
84
81
  const version = `${currentVersionLink} -> ${newVersionLink} (${diffLink})`;
85
- return `|Package|Repository|Level|Version|
82
+ return `|Package|Dependency type|Level|Version|
86
83
  |---|---|---|---|
87
- |${packageLink}|${repositoryLink}|${level}|${version}|`;
84
+ |${packageLink}|${dependencyType}|${level}|${version}|`;
88
85
  }
89
86
  createMetadataSection(outdatedPackage) {
90
87
  const metadata = (0, metadata_1.createPullRequestMetadata)([outdatedPackage]);
@@ -11,11 +11,13 @@ class PullRequestTitleCreator {
11
11
  const currentVersion = outdatedPackage.currentVersion.version;
12
12
  const newVersion = outdatedPackage.newVersion.version;
13
13
  const level = outdatedPackage.level;
14
+ const dependencyType = outdatedPackage.dependencyType;
14
15
  return (0, mustache_1.render)(this.template, {
15
16
  packageName,
16
17
  currentVersion,
17
18
  newVersion,
18
- level
19
+ level,
20
+ dependencyType
19
21
  });
20
22
  }
21
23
  }
@@ -34,19 +34,46 @@ class Ncu {
34
34
  if (!(0, NcuResult_1.isNcuResult)(result)) {
35
35
  throw new Error('Failed to running ncu.');
36
36
  }
37
- const currentDependencies = {
38
- ...pkg.dependencies,
39
- ...pkg.devDependencies,
40
- ...pkg.peerDependencies,
41
- ...pkg.optionalDependencies
37
+ const { dependencies, devDependencies, peerDependencies, optionalDependencies } = pkg;
38
+ const toCurrentVersionString = (packageName) => {
39
+ if ((dependencies === null || dependencies === void 0 ? void 0 : dependencies[packageName]) !== undefined) {
40
+ return dependencies[packageName];
41
+ }
42
+ else if ((devDependencies === null || devDependencies === void 0 ? void 0 : devDependencies[packageName]) !== undefined) {
43
+ return devDependencies[packageName];
44
+ }
45
+ else if ((peerDependencies === null || peerDependencies === void 0 ? void 0 : peerDependencies[packageName]) !== undefined) {
46
+ return peerDependencies[packageName];
47
+ }
48
+ else if ((optionalDependencies === null || optionalDependencies === void 0 ? void 0 : optionalDependencies[packageName]) !== undefined) {
49
+ return optionalDependencies[packageName];
50
+ }
51
+ };
52
+ const toDependencyType = (packageName) => {
53
+ if ((dependencies === null || dependencies === void 0 ? void 0 : dependencies[packageName]) !== undefined) {
54
+ return package_json_1.DependencyType.Dependencies;
55
+ }
56
+ else if ((devDependencies === null || devDependencies === void 0 ? void 0 : devDependencies[packageName]) !== undefined) {
57
+ return package_json_1.DependencyType.DevDependencies;
58
+ }
59
+ else if ((peerDependencies === null || peerDependencies === void 0 ? void 0 : peerDependencies[packageName]) !== undefined) {
60
+ return package_json_1.DependencyType.PeerDependencies;
61
+ }
62
+ else if ((optionalDependencies === null || optionalDependencies === void 0 ? void 0 : optionalDependencies[packageName]) !== undefined) {
63
+ return package_json_1.DependencyType.OptionalDependencies;
64
+ }
42
65
  };
43
66
  const resultEntries = Object.entries(result);
44
67
  const outdatedPackages = resultEntries
45
68
  .map(([name, newVersionString]) => {
46
- const currentVersionString = currentDependencies[name];
69
+ const currentVersionString = toCurrentVersionString(name);
47
70
  if (currentVersionString === undefined) {
48
71
  return undefined;
49
72
  }
73
+ const dependencyType = toDependencyType(name);
74
+ if (dependencyType === undefined) {
75
+ return undefined;
76
+ }
50
77
  const currentVersion = semver_1.SemVer.of(currentVersionString);
51
78
  const newVersion = semver_1.SemVer.of(newVersionString);
52
79
  const level = (0, semver_1.compareSemVers)(currentVersion, newVersion);
@@ -57,7 +84,8 @@ class Ncu {
57
84
  name,
58
85
  currentVersion,
59
86
  newVersion,
60
- level
87
+ level,
88
+ dependencyType
61
89
  };
62
90
  return outdatedPackage;
63
91
  })
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDependencyType = exports.DependencyType = void 0;
4
+ exports.DependencyType = {
5
+ Dependencies: 'dependencies',
6
+ DevDependencies: 'devDependencies',
7
+ PeerDependencies: 'peerDependencies',
8
+ OptionalDependencies: 'optionalDependencies'
9
+ };
10
+ const dependencyTypes = Object.values(exports.DependencyType);
11
+ const isDependencyType = (value) => dependencyTypes.includes(value);
12
+ exports.isDependencyType = isDependencyType;
@@ -10,6 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./DependencyType"), exports);
13
14
  __exportStar(require("./extractRepository"), exports);
14
15
  __exportStar(require("./PackageMetadata"), exports);
15
16
  __exportStar(require("./parsePackageJson"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-update-package",
3
- "version": "0.39.0",
3
+ "version": "0.41.1",
4
4
  "description": "CLI tool for creating pull requests to update npm packages",
5
5
  "scripts": {
6
6
  "build": "tsc --project tsconfig.build.json",