trm-core 7.2.1 → 7.3.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/README.md CHANGED
@@ -14,6 +14,10 @@ This module contains the core functionalities of [TRM (Transport Request Manager
14
14
 
15
15
  TRM is a software designed to make transports between SAP ECC/S4 systems easy.
16
16
 
17
+ # Requirements
18
+
19
+ - [Node ^22.12.0](https://github.com/nodejs/node/releases/tag/v22.12.0)
20
+
17
21
  # Documentation <!-- {docsify-remove} -->
18
22
 
19
23
  Full documentation can be seen at [https://docs.trmregistry.com/](https://docs.trmregistry.com).
package/changelog.txt CHANGED
@@ -8,6 +8,10 @@ Legend
8
8
  + : added
9
9
  - : removed
10
10
 
11
+ 2025-07-08 v7.3.0
12
+ + enforce node engine ^22.12.0 with post install script
13
+ * install package hierarchy
14
+
11
15
  2025-06-04 v7.2.1
12
16
  -------------------
13
17
  * inquirer/logger prefix on install dependency
@@ -69,10 +69,11 @@ exports.generateDevclass = {
69
69
  }
70
70
  trm_commons_1.Logger.loading(`Updating ABAP packages hierarchy...`);
71
71
  const aDummyTdevc = [];
72
+ var parentcl;
72
73
  const originalPackageHierarchy = (0, commons_1.getPackageHierarchy)(context.runtime.packageTransportsData.tdevc);
73
74
  for (const packageReplacement of context.rawInput.installData.installDevclass.replacements) {
75
+ parentcl = '';
74
76
  const originalRoot = originalPackageHierarchy.devclass === packageReplacement.originalDevclass;
75
- var parentcl;
76
77
  if (!originalRoot) {
77
78
  const originalParentCl = context.runtime.packageTransportsData.tdevc.find(o => o.devclass === packageReplacement.originalDevclass).parentcl;
78
79
  if (originalParentCl) {
@@ -81,7 +82,7 @@ exports.generateDevclass = {
81
82
  }
82
83
  aDummyTdevc.push({
83
84
  devclass: packageReplacement.installDevclass,
84
- parentcl: parentcl || ''
85
+ parentcl: parentcl
85
86
  });
86
87
  }
87
88
  const installPackageHierarchy = (0, commons_1.getPackageHierarchy)(aDummyTdevc);
@@ -20,7 +20,10 @@ function getPackageHierarchy(input) {
20
20
  roots.push(child);
21
21
  }
22
22
  });
23
- if (roots.length > 1) {
23
+ if (roots.length === 0) {
24
+ throw new Error(`No root found in package hierarchy.`);
25
+ }
26
+ else if (roots.length > 1) {
24
27
  throw new Error(`Multiple roots found in package hierarchy.`);
25
28
  }
26
29
  return roots[0];
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const fs_1 = require("fs");
4
+ const path_1 = require("path");
5
+ const semver_1 = require("semver");
6
+ const currentVersion = process.version;
7
+ const pkgPath = (0, path_1.resolve)(__dirname, '../../package.json');
8
+ const pkg = JSON.parse((0, fs_1.readFileSync)(pkgPath, 'utf8'));
9
+ const requiredRange = pkg.engines && pkg.engines.node;
10
+ if (!requiredRange) {
11
+ console.warn('No "engines.node" field in package.json. Skipping Node version check.');
12
+ process.exit(0);
13
+ }
14
+ if (!(0, semver_1.satisfies)(currentVersion, requiredRange)) {
15
+ console.error(`\nERROR: This package requires Node.js ${requiredRange}, but you are using ${currentVersion}.\n`);
16
+ process.exit(1);
17
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trm-core",
3
- "version": "7.2.1",
3
+ "version": "7.3.0",
4
4
  "description": "TRM (Transport Request Manager) Core",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -17,7 +17,8 @@
17
17
  "cleanBuild": "rimraf dist/",
18
18
  "build": "npm run cleanBuild && tsc --sourceMap false",
19
19
  "test": "jest",
20
- "prepublishOnly": "npm run build"
20
+ "prepublishOnly": "npm run build",
21
+ "postinstall": "node dist/scripts/checkEngine.js"
21
22
  },
22
23
  "keywords": [
23
24
  "trm",
@@ -26,7 +27,7 @@
26
27
  "homepage": "https://www.trmregistry.com",
27
28
  "repository": {
28
29
  "type": "git",
29
- "url": "https://github.com/RegestaItalia/trm-core.git"
30
+ "url": "git+https://github.com/RegestaItalia/trm-core.git"
30
31
  },
31
32
  "author": {
32
33
  "name": "Simone Gaffurini",
@@ -86,5 +87,8 @@
86
87
  "ts-jest": "^29.1.2",
87
88
  "ts-node": "^10.9.2",
88
89
  "typescript": "^5.8.2"
90
+ },
91
+ "engines": {
92
+ "node": "^22.12.0"
89
93
  }
90
94
  }