@comet/upgrade 1.13.0 → 1.14.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.
Files changed (2) hide show
  1. package/lib/index.js +13 -15
  2. package/package.json +3 -3
package/lib/index.js CHANGED
@@ -39,29 +39,26 @@ const fs_1 = __importDefault(require("fs"));
39
39
  const path_1 = __importDefault(require("path"));
40
40
  const semver_1 = __importDefault(require("semver"));
41
41
  const execute_command_util_1 = require("./util/execute-command.util");
42
- const VERSION_NUMBER = /^v?\d+$/;
43
42
  const microservices = ["api", "admin", "site"];
44
43
  function microserviceExists(microservice) {
45
44
  return fs_1.default.existsSync(`${microservice}/package.json`);
46
45
  }
47
46
  function main() {
48
47
  return __awaiter(this, void 0, void 0, function* () {
49
- let targetVersionArg = process.argv[2];
48
+ const targetVersionArg = process.argv[2];
50
49
  if (targetVersionArg === undefined) {
51
50
  console.error("Missing target version! Usage: npx @comet/upgrade <version>");
52
51
  process.exit(-1);
53
52
  }
54
- if (!VERSION_NUMBER.test(targetVersionArg)) {
53
+ const targetVersion = semver_1.default.coerce(targetVersionArg, { includePrerelease: true });
54
+ if (!targetVersion) {
55
55
  console.error("Can't parse version number. Example usage: npx @comet/upgrade v4");
56
56
  process.exit(-1);
57
57
  }
58
- if (targetVersionArg.startsWith("v")) {
59
- targetVersionArg = targetVersionArg.substring(1);
60
- }
61
- const targetVersion = Number(targetVersionArg);
62
- const scriptsFolder = path_1.default.join(__dirname, `v${targetVersion}`);
58
+ const targetVersionFolder = `v${targetVersion.major}`;
59
+ const scriptsFolder = path_1.default.join(__dirname, targetVersionFolder);
63
60
  if (!fs_1.default.existsSync(scriptsFolder)) {
64
- console.error(`Can't find target version 'v${targetVersionArg}'`);
61
+ console.error(`Can't find upgrade scripts for target version '${targetVersionFolder}'`);
65
62
  listTargetVersions();
66
63
  process.exit(-1);
67
64
  }
@@ -69,7 +66,7 @@ function main() {
69
66
  console.info(`Upgrading from v${currentVersion} to v${targetVersion}`);
70
67
  console.info("Updating dependencies");
71
68
  yield updateDependencies(targetVersion);
72
- yield runUpgradeScripts(targetVersion);
69
+ yield runUpgradeScripts(targetVersionFolder);
73
70
  yield runEslintFix();
74
71
  });
75
72
  }
@@ -130,23 +127,24 @@ function updateDependencies(targetVersion) {
130
127
  "--no-audit",
131
128
  "--loglevel",
132
129
  "error",
133
- ...dependencies.map((dependency) => `${dependency}@${targetVersion}`),
134
- ...devDependencies.map((dependency) => `${dependency}@${targetVersion}`),
130
+ targetVersion.prerelease.length > 0 ? "--save-exact" : "",
131
+ ...dependencies.map((dependency) => `${dependency}@${targetVersion.version}`),
132
+ ...devDependencies.map((dependency) => `${dependency}@${targetVersion.version}`),
135
133
  ]);
136
134
  }
137
135
  });
138
136
  }
139
- function runUpgradeScripts(targetVersion) {
137
+ function runUpgradeScripts(targetVersionFolder) {
140
138
  return __awaiter(this, void 0, void 0, function* () {
141
139
  var _a;
142
- const scriptsFolder = path_1.default.join(__dirname, `v${targetVersion}`);
140
+ const scriptsFolder = path_1.default.join(__dirname, targetVersionFolder);
143
141
  for (const fileName of fs_1.default.readdirSync(scriptsFolder)) {
144
142
  const upgradeScript = yield (_a = path_1.default.join(scriptsFolder, fileName), Promise.resolve().then(() => __importStar(require(_a))));
145
143
  try {
146
144
  yield upgradeScript.default();
147
145
  }
148
146
  catch (error) {
149
- console.error(`Script 'v${targetVersion}/${fileName}' failed to execute. See original error below`);
147
+ console.error(`Script '${targetVersionFolder}/${fileName}' failed to execute. See original error below`);
150
148
  console.error(error);
151
149
  }
152
150
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comet/upgrade",
3
- "version": "1.13.0",
3
+ "version": "1.14.0",
4
4
  "description": "Upgrade scripts for Comet DXP",
5
5
  "homepage": "https://github.com/vivid-planet/comet-upgrade#readme",
6
6
  "bugs": {
@@ -31,14 +31,14 @@
31
31
  "eslint": "^8.56.0",
32
32
  "glob": "^10.3.10",
33
33
  "prettier": "^2.8.1",
34
- "semver": "^7.3.8",
34
+ "semver": "^7.6.2",
35
35
  "ts-morph": "^22.0.0"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@comet/eslint-config": "^3.2.1",
39
39
  "@types/node": "^20.0.0",
40
40
  "@types/prettier": "^2.7.1",
41
- "@types/semver": "^7.3.13",
41
+ "@types/semver": "^7.5.8",
42
42
  "husky": "^8.0.2",
43
43
  "lint-staged": "^13.1.0",
44
44
  "npm-run-all": "^4.1.5",