trm-core 8.1.0 → 8.1.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/changelog.txt CHANGED
@@ -8,7 +8,7 @@ Legend
8
8
  + : added
9
9
  - : removed
10
10
 
11
- 2025-10-27 v8.1.0
11
+ 2025-11-04 v8.1.1
12
12
  -------------------
13
13
  + moved lock file generation to core
14
14
  + lock file can be used to determine dependency version
@@ -16,6 +16,10 @@ Legend
16
16
  + release tags
17
17
  ! getPackageHierarchy ignore multiple roots in setDevclass method
18
18
 
19
+ 2025-10-30 v8.0.2
20
+ -------------------
21
+ * fix no dependency detection comparison with latest release
22
+
19
23
  2025-10-24 v8.0.1
20
24
  -------------------
21
25
  * fix transport relevant for dependency detection issue
@@ -47,6 +47,7 @@ type WorkflowRuntime = {
47
47
  };
48
48
  };
49
49
  export type FindDependenciesActionOutput = {
50
+ abort: boolean;
50
51
  trmPackageDependencies: {
51
52
  withTrmPackage: TrmDependency[];
52
53
  withoutTrmPackage: TrmDependency[];
@@ -40,6 +40,7 @@ function findDependencies(inputData) {
40
40
  });
41
41
  trm_commons_1.Logger.log(`Workflow ${WORKFLOW_NAME} result: ${(0, util_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
42
42
  return {
43
+ abort: !!result.runtime.abort,
43
44
  trmPackageDependencies: {
44
45
  withTrmPackage: result.runtime.dependencies.withTrmPackage,
45
46
  withoutTrmPackage: result.runtime.dependencies.withoutTrmPackage,
@@ -52,52 +52,55 @@ exports.findDependencies = {
52
52
  trm_commons_1.Logger.log(`Ready to execute sub-workflow ${SUBWORKFLOW_NAME}, input data: ${(0, trm_commons_1.inspect)(inputData, { breakLength: Infinity, compact: true })}`, true);
53
53
  const result = yield (0, __1.findDependencies)(inputData);
54
54
  trm_commons_1.Logger.log(`Workflow ${SUBWORKFLOW_NAME} result: ${(0, trm_commons_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
55
- const aUnknownDependencyDevclass = (result.trmPackageDependencies.withoutTrmPackage).map(o => o.devclass);
56
- if (aUnknownDependencyDevclass.length > 0) {
57
- trm_commons_1.Logger.error(`Package "${context.rawInput.packageData.devclass}" has ${aUnknownDependencyDevclass.length} missing ${aUnknownDependencyDevclass.length === 1 ? 'dependency' : 'dependencies'}:`);
58
- aUnknownDependencyDevclass.forEach((d, i) => {
59
- trm_commons_1.Logger.error(` (${i + 1}/${aUnknownDependencyDevclass.length}) ${d}`);
60
- });
61
- throw new Error(`Resolve missing dependencies by publishing them as TRM packages.`);
62
- }
63
- trm_commons_1.Logger.info(`Package "${context.rawInput.packageData.devclass}" has ${result.trmPackageDependencies.withTrmPackage.length} TRM package ${result.trmPackageDependencies.withTrmPackage.length === 1 ? 'dependency' : 'dependencies'} and ${result.objectDependencies.sapObjects.reduce((sum, obj) => sum + obj.dependencies.length, 0)} required SAP ${result.objectDependencies.sapObjects.reduce((sum, obj) => sum + obj.dependencies.length, 0) === 1 ? 'object' : 'objects'}.`);
64
- trm_commons_1.Logger.log(`Adding TRM package dependencies to manifest`, true);
65
- trm_commons_1.Logger.loading(`Updating manifest...`);
66
- result.trmPackageDependencies.withTrmPackage.forEach((o, i) => {
67
- if (o.package.registry.getRegistryType() === registry_1.RegistryType.LOCAL) {
68
- trm_commons_1.Logger.error(` (${i + 1}/${result.trmPackageDependencies.withTrmPackage.length}) Cannot have dependency with ABAP package "${o.devclass}": TRM package was installed manually`);
55
+ context.rawInput.publishData.noDependenciesDetection = result.abort;
56
+ if (!context.rawInput.publishData.noDependenciesDetection) {
57
+ const aUnknownDependencyDevclass = (result.trmPackageDependencies.withoutTrmPackage).map(o => o.devclass);
58
+ if (aUnknownDependencyDevclass.length > 0) {
59
+ trm_commons_1.Logger.error(`Package "${context.rawInput.packageData.devclass}" has ${aUnknownDependencyDevclass.length} missing ${aUnknownDependencyDevclass.length === 1 ? 'dependency' : 'dependencies'}:`);
60
+ aUnknownDependencyDevclass.forEach((d, i) => {
61
+ trm_commons_1.Logger.error(` (${i + 1}/${aUnknownDependencyDevclass.length}) ${d}`);
62
+ });
63
+ throw new Error(`Resolve missing dependencies by publishing them as TRM packages.`);
69
64
  }
70
- else {
71
- if (o.package.manifest) {
72
- const dependencyManifest = o.package.manifest.get();
73
- const dependencyVersionRange = `^${dependencyManifest.version}`;
74
- const dependencyRegistry = o.package.registry.getRegistryType() === registry_1.RegistryType.PUBLIC ? undefined : o.package.registry.endpoint;
75
- context.runtime.trmPackage.manifest.dependencies.push({
76
- name: dependencyManifest.name,
77
- version: dependencyVersionRange,
78
- registry: dependencyRegistry
79
- });
65
+ trm_commons_1.Logger.info(`Package "${context.rawInput.packageData.devclass}" has ${result.trmPackageDependencies.withTrmPackage.length} TRM package ${result.trmPackageDependencies.withTrmPackage.length === 1 ? 'dependency' : 'dependencies'} and ${result.objectDependencies.sapObjects.reduce((sum, obj) => sum + obj.dependencies.length, 0)} required SAP ${result.objectDependencies.sapObjects.reduce((sum, obj) => sum + obj.dependencies.length, 0) === 1 ? 'object' : 'objects'}.`);
66
+ trm_commons_1.Logger.log(`Adding TRM package dependencies to manifest`, true);
67
+ trm_commons_1.Logger.loading(`Updating manifest...`);
68
+ result.trmPackageDependencies.withTrmPackage.forEach((o, i) => {
69
+ if (o.package.registry.getRegistryType() === registry_1.RegistryType.LOCAL) {
70
+ trm_commons_1.Logger.error(` (${i + 1}/${result.trmPackageDependencies.withTrmPackage.length}) Cannot have dependency with ABAP package "${o.devclass}": TRM package was installed manually`);
80
71
  }
81
72
  else {
82
- trm_commons_1.Logger.error(` (${i + 1}/${result.trmPackageDependencies.withTrmPackage.length}) Cannot find manifest of dependency in ABAP package "${o.devclass}"`);
73
+ if (o.package.manifest) {
74
+ const dependencyManifest = o.package.manifest.get();
75
+ const dependencyVersionRange = `^${dependencyManifest.version}`;
76
+ const dependencyRegistry = o.package.registry.getRegistryType() === registry_1.RegistryType.PUBLIC ? undefined : o.package.registry.endpoint;
77
+ context.runtime.trmPackage.manifest.dependencies.push({
78
+ name: dependencyManifest.name,
79
+ version: dependencyVersionRange,
80
+ registry: dependencyRegistry
81
+ });
82
+ }
83
+ else {
84
+ trm_commons_1.Logger.error(` (${i + 1}/${result.trmPackageDependencies.withTrmPackage.length}) Cannot find manifest of dependency in ABAP package "${o.devclass}"`);
85
+ }
83
86
  }
84
- }
85
- });
86
- trm_commons_1.Logger.log(`Adding SAP objects dependencies to manifest`, true);
87
- trm_commons_1.Logger.loading(`Updating manifest...`);
88
- result.objectDependencies.sapObjects.forEach(o => {
89
- if (!context.runtime.trmPackage.manifest.sapEntries[o.table]) {
90
- context.runtime.trmPackage.manifest.sapEntries[o.table] = [];
91
- }
92
- o.dependencies.forEach(k => {
93
- var tableKeys = k.object;
94
- if (o.table === 'TADIR') {
95
- delete tableKeys['DEVCLASS'];
96
- }
97
- if (!context.runtime.trmPackage.manifest.sapEntries[o.table].some(o => _isObjectEqual(o, tableKeys))) {
98
- context.runtime.trmPackage.manifest.sapEntries[o.table].push(tableKeys);
87
+ });
88
+ trm_commons_1.Logger.log(`Adding SAP objects dependencies to manifest`, true);
89
+ trm_commons_1.Logger.loading(`Updating manifest...`);
90
+ result.objectDependencies.sapObjects.forEach(o => {
91
+ if (!context.runtime.trmPackage.manifest.sapEntries[o.table]) {
92
+ context.runtime.trmPackage.manifest.sapEntries[o.table] = [];
99
93
  }
94
+ o.dependencies.forEach(k => {
95
+ var tableKeys = k.object;
96
+ if (o.table === 'TADIR') {
97
+ delete tableKeys['DEVCLASS'];
98
+ }
99
+ if (!context.runtime.trmPackage.manifest.sapEntries[o.table].some(o => _isObjectEqual(o, tableKeys))) {
100
+ context.runtime.trmPackage.manifest.sapEntries[o.table].push(tableKeys);
101
+ }
102
+ });
100
103
  });
101
- });
104
+ }
102
105
  })
103
106
  };
@@ -93,10 +93,11 @@ exports.setManifestValues = {
93
93
  }
94
94
  });
95
95
  if (missingDependencies.length > 0) {
96
+ trm_commons_1.Logger.warning(`Latest version of the package had the ${missingDependencies.length} dependencies that are now missing`);
96
97
  if (!context.rawInput.contextData.noInquirer) {
97
98
  const inq = yield trm_commons_1.Inquirer.prompt({
98
99
  type: 'select',
99
- message: `Dependency`,
100
+ message: `Include dependencies (if still relevant)`,
100
101
  name: 'dependencies',
101
102
  choices: missingDependencies.map(o => {
102
103
  var name;
@@ -115,7 +116,6 @@ exports.setManifestValues = {
115
116
  context.runtime.trmPackage.manifest.dependencies = (context.runtime.trmPackage.manifest.dependencies || []).concat((inq.dependencies || []));
116
117
  }
117
118
  else {
118
- trm_commons_1.Logger.warning(`Latest version of the package had the following dependencies:`);
119
119
  missingDependencies.forEach(o => {
120
120
  if (o.registry) {
121
121
  trm_commons_1.Logger.warning(` ${o.name} (${o.registry})`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trm-core",
3
- "version": "8.1.0",
3
+ "version": "8.1.1",
4
4
  "description": "TRM (Transport Request Manager) Core",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -63,7 +63,7 @@
63
63
  "semver": "^7.5.4",
64
64
  "semver-sort": "^1.0.0",
65
65
  "spdx-license-ids": "^3.0.13",
66
- "trm-registry-types": "^2.0.0",
66
+ "trm-registry-types": "^2.1.0",
67
67
  "uuid": "^9.0.1",
68
68
  "xml-beautify": "^1.2.3",
69
69
  "xml-js": "^1.6.11"