@deot/dev-updater 2.6.2 → 2.7.0

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/index.cjs CHANGED
@@ -36,16 +36,8 @@ const fitVersion = (versions, version, commandOptions) => {
36
36
  let originalPrefix = (version.match(/([^\d]*).*/) || ["", ""])[1];
37
37
  let prefix = major ? ">=" : minor ? "^" : patch ? "~" : originalPrefix;
38
38
  let oldVersion = version.match(vRegex)[1];
39
- let newVersion = oldVersion;
40
39
  let vailds = versions.slice(versions.indexOf(oldVersion) + 1);
41
- for (let i = 0; i < vailds.length; i++) {
42
- if (!semver.satisfies(vailds[i], prefix + oldVersion)) {
43
- newVersion = i - 1 < 0 ? oldVersion : vailds[i - 1];
44
- break;
45
- } else {
46
- newVersion = vailds[i];
47
- }
48
- }
40
+ let newVersion = semver.maxSatisfying(vailds, prefix + oldVersion) || oldVersion;
49
41
  return `${originalPrefix}${newVersion}`;
50
42
  };
51
43
 
@@ -133,6 +125,7 @@ class Update {
133
125
  if (commandOptions.dryRun) {
134
126
  devShared.Logger.log(chalk.magenta(`CHANGED: `) + chalk.yellow(`Skipping ${path__namespace.relative(cwd, packageDir)} Update`));
135
127
  } else {
128
+ fs.removeSync(`${packageDir}/node_modules`);
136
129
  fs.outputFileSync(`${packageDir}/package.json`, JSON.stringify(packageOptions, null, 2));
137
130
  }
138
131
  }
@@ -144,6 +137,9 @@ class Update {
144
137
  devShared.Logger.log(chalk.yellow(`Skipping pnpm-lock.yaml Update`));
145
138
  } else {
146
139
  devShared.Logger.log(chalk.magenta(`CHANGED: `) + `pnpm-lock.yaml`);
140
+ const locals = devShared.Locals.impl();
141
+ const { cwd } = locals;
142
+ await fs.remove(`${cwd}/node_modules`);
147
143
  await devShared.Shell.spawn("npx", ["pnpm", "install", "--lockfile-only"]);
148
144
  }
149
145
  }
@@ -210,8 +206,10 @@ ${message}`);
210
206
  });
211
207
  });
212
208
  const { all } = this.commandOptions;
213
- const packageFolderNames = all ? ["*"] : await this.updatePackageOptions(changed);
214
- message = `chore${packageFolderNames.length ? "(" : ""}${packageFolderNames.join(",")}${packageFolderNames.length ? ")" : ""}: ${message}`;
209
+ let packageFolderNames = await this.updatePackageOptions(changed);
210
+ let hasChanged = packageFolderNames.length;
211
+ packageFolderNames = hasChanged && all ? ["*"] : packageFolderNames;
212
+ message = `chore${hasChanged ? "(" : ""}${packageFolderNames.join(",")}${hasChanged ? ")" : ""}: ${message}`;
215
213
  await this.updateLock();
216
214
  await this.test();
217
215
  await this.commit(message);
package/dist/index.js CHANGED
@@ -13,16 +13,8 @@ const fitVersion = (versions, version, commandOptions) => {
13
13
  let originalPrefix = (version.match(/([^\d]*).*/) || ["", ""])[1];
14
14
  let prefix = major ? ">=" : minor ? "^" : patch ? "~" : originalPrefix;
15
15
  let oldVersion = version.match(vRegex)[1];
16
- let newVersion = oldVersion;
17
16
  let vailds = versions.slice(versions.indexOf(oldVersion) + 1);
18
- for (let i = 0; i < vailds.length; i++) {
19
- if (!semver.satisfies(vailds[i], prefix + oldVersion)) {
20
- newVersion = i - 1 < 0 ? oldVersion : vailds[i - 1];
21
- break;
22
- } else {
23
- newVersion = vailds[i];
24
- }
25
- }
17
+ let newVersion = semver.maxSatisfying(vailds, prefix + oldVersion) || oldVersion;
26
18
  return `${originalPrefix}${newVersion}`;
27
19
  };
28
20
 
@@ -110,6 +102,7 @@ class Update {
110
102
  if (commandOptions.dryRun) {
111
103
  Logger.log(chalk.magenta(`CHANGED: `) + chalk.yellow(`Skipping ${path.relative(cwd, packageDir)} Update`));
112
104
  } else {
105
+ fs.removeSync(`${packageDir}/node_modules`);
113
106
  fs.outputFileSync(`${packageDir}/package.json`, JSON.stringify(packageOptions, null, 2));
114
107
  }
115
108
  }
@@ -121,6 +114,9 @@ class Update {
121
114
  Logger.log(chalk.yellow(`Skipping pnpm-lock.yaml Update`));
122
115
  } else {
123
116
  Logger.log(chalk.magenta(`CHANGED: `) + `pnpm-lock.yaml`);
117
+ const locals = Locals.impl();
118
+ const { cwd } = locals;
119
+ await fs.remove(`${cwd}/node_modules`);
124
120
  await Shell.spawn("npx", ["pnpm", "install", "--lockfile-only"]);
125
121
  }
126
122
  }
@@ -187,8 +183,10 @@ ${message}`);
187
183
  });
188
184
  });
189
185
  const { all } = this.commandOptions;
190
- const packageFolderNames = all ? ["*"] : await this.updatePackageOptions(changed);
191
- message = `chore${packageFolderNames.length ? "(" : ""}${packageFolderNames.join(",")}${packageFolderNames.length ? ")" : ""}: ${message}`;
186
+ let packageFolderNames = await this.updatePackageOptions(changed);
187
+ let hasChanged = packageFolderNames.length;
188
+ packageFolderNames = hasChanged && all ? ["*"] : packageFolderNames;
189
+ message = `chore${hasChanged ? "(" : ""}${packageFolderNames.join(",")}${hasChanged ? ")" : ""}: ${message}`;
192
190
  await this.updateLock();
193
191
  await this.test();
194
192
  await this.commit(message);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deot/dev-updater",
3
- "version": "2.6.2",
3
+ "version": "2.7.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,9 +19,9 @@
19
19
  "access": "public"
20
20
  },
21
21
  "dependencies": {
22
- "@deot/dev-shared": "^2.6.2",
22
+ "@deot/dev-shared": "^2.7.0",
23
23
  "chalk": "^5.3.0",
24
- "fs-extra": "^11.1.1",
24
+ "fs-extra": "^11.2.0",
25
25
  "ora": "^7.0.1",
26
26
  "semver": "^7.5.4"
27
27
  }