@abaplint/cli 2.102.64 → 2.102.65
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/build/cli.js +10 -4
- package/package.json +2 -2
package/build/cli.js
CHANGED
|
@@ -50139,7 +50139,7 @@ class Registry {
|
|
|
50139
50139
|
}
|
|
50140
50140
|
static abaplintVersion() {
|
|
50141
50141
|
// magic, see build script "version.sh"
|
|
50142
|
-
return "2.102.
|
|
50142
|
+
return "2.102.65";
|
|
50143
50143
|
}
|
|
50144
50144
|
getDDICReferences() {
|
|
50145
50145
|
return this.ddicReferences;
|
|
@@ -67398,6 +67398,7 @@ class SlowParameterPassing {
|
|
|
67398
67398
|
key: "slow_parameter_passing",
|
|
67399
67399
|
title: "Slow Parameter Passing",
|
|
67400
67400
|
shortDescription: `Detects slow pass by value passing for methods where parameter is not changed`,
|
|
67401
|
+
extendedInformation: `Method parameters defined in interfaces is not checked`,
|
|
67401
67402
|
tags: [_irule_1.RuleTag.Performance],
|
|
67402
67403
|
};
|
|
67403
67404
|
}
|
|
@@ -67420,17 +67421,22 @@ class SlowParameterPassing {
|
|
|
67420
67421
|
const methods = this.listMethodNodes(top);
|
|
67421
67422
|
for (const m of methods) {
|
|
67422
67423
|
const vars = m.getData().vars;
|
|
67424
|
+
if (m.getIdentifier().sname.includes("~")) {
|
|
67425
|
+
// skip methods defined in interfaces
|
|
67426
|
+
// todo: checking for just "~" is not correct, there might be ALIASES
|
|
67427
|
+
continue;
|
|
67428
|
+
}
|
|
67423
67429
|
for (const v in vars) {
|
|
67424
67430
|
const id = vars[v];
|
|
67425
67431
|
if (id.getMeta().includes("pass_by_value" /* IdentifierMeta.PassByValue */) === false) {
|
|
67426
67432
|
continue;
|
|
67427
67433
|
}
|
|
67434
|
+
else if (this.reg.isFileDependency(id.getFilename()) === true) {
|
|
67435
|
+
continue;
|
|
67436
|
+
}
|
|
67428
67437
|
const writes = this.listWritePositions(m, id);
|
|
67429
67438
|
if (writes.length === 0) {
|
|
67430
67439
|
const message = "Parameter " + id.getName() + " passed by VALUE but not changed";
|
|
67431
|
-
if (this.reg.isFileDependency(id.getFilename()) === true) {
|
|
67432
|
-
continue;
|
|
67433
|
-
}
|
|
67434
67440
|
issues.push(issue_1.Issue.atIdentifier(id, message, this.getMetadata().key, this.getConfig().severity));
|
|
67435
67441
|
}
|
|
67436
67442
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.102.
|
|
3
|
+
"version": "2.102.65",
|
|
4
4
|
"description": "abaplint - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"homepage": "https://abaplint.org",
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@abaplint/core": "^2.102.
|
|
41
|
+
"@abaplint/core": "^2.102.65",
|
|
42
42
|
"@types/chai": "^4.3.9",
|
|
43
43
|
"@types/glob": "^7.2.0",
|
|
44
44
|
"@types/minimist": "^1.2.4",
|