@abaplint/cli 2.120.61 → 2.120.63

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/build/cli.js +11 -11
  2. package/package.json +2 -2
package/build/cli.js CHANGED
@@ -53,9 +53,8 @@ const BUFS = new Set([
53
53
  CH_DOT, CH_COMMA, CH_COLON, 40 /* ( */, 41 /* ) */, 91 /* [ */,
54
54
  93 /* ] */, 43 /* + */, CH_AT
55
55
  ]);
56
- // characters that may follow the closing "'", "`" or "|" of a literal, anything else
57
- // is a syntax error, "There must be a space or equivalent character after ...",
58
- // note that "(" is allowed, ie. text elements like 'text'(001)
56
+ // characters treated as separators after ping literals and string templates.
57
+ // Single-quoted text literals always end at their closing quote.
59
58
  const AFTER_LITERAL = new Set([
60
59
  EOF, CH_SPACE, CH_TAB, CH_NL, CH_DOT, CH_COMMA, CH_COLON, CH_DQUOTE,
61
60
  40 /* ( */, 41 /* ) */, 91 /* [ */, 93 /* ] */
@@ -373,9 +372,7 @@ class Lexer {
373
372
  && ahead !== CH_QUOTE
374
373
  && this.buffer.countIsEven(CH_QUOTE)) {
375
374
  // end of string
376
- if (AFTER_LITERAL.has(ahead)) {
377
- this.add();
378
- }
375
+ this.add();
379
376
  if (ahead === CH_DQUOTE) {
380
377
  this.m = ModeComment;
381
378
  }
@@ -3094,7 +3091,8 @@ class ExpandMacros {
3094
3091
  for (const input of inputs) {
3095
3092
  const search = "&" + i;
3096
3093
  const reg = new RegExp(search, "g");
3097
- str = str.replace(reg, input);
3094
+ // a function replacement: "$`" and "$'" in the argument are text, not patterns
3095
+ str = str.replace(reg, () => input);
3098
3096
  i++;
3099
3097
  }
3100
3098
  const file = new memory_file_1.MemoryFile("expand_macros.abap.prog", str);
@@ -16838,7 +16836,7 @@ class ModifyEntities {
16838
16836
  const mapped = (0, combi_1.seq)("MAPPED", expressions_1.Target);
16839
16837
  const reported = (0, combi_1.seq)("REPORTED", expressions_1.Target);
16840
16838
  const end = (0, combi_1.optPrio)((0, combi_1.per)(failed, result, mapped, reported));
16841
- const entities = (0, combi_1.seq)((0, combi_1.optPrio)("AUGMENTING"), "ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.plusPrio)((0, combi_1.seq)("ENTITY", expressions_1.NamespaceSimpleName, (0, combi_1.plus)(operation))));
16839
+ const entities = (0, combi_1.seq)((0, combi_1.optPrio)("AUGMENTING"), "ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.optPrio)((0, combi_1.altPrio)("IN LOCAL MODE", (0, combi_1.seq)((0, combi_1.opt)("FORWARDING"), "PRIVILEGED"))), (0, combi_1.plusPrio)((0, combi_1.seq)("ENTITY", expressions_1.NamespaceSimpleName, (0, combi_1.plus)(operation))));
16842
16840
  const dynamic = (0, combi_1.seq)("ENTITIES", (0, combi_1.optPrio)((0, combi_1.altPrio)("IN LOCAL MODE", (0, combi_1.seq)((0, combi_1.opt)("FORWARDING"), "PRIVILEGED"))), "OPERATIONS", expressions_1.Source);
16843
16841
  const create2 = (0, combi_1.seq)("CREATE", fieldsWith, (0, combi_1.opt)((0, combi_1.seq)("CREATE BY", expressions_1.EMLEntityPath, fieldsWith)));
16844
16842
  const create3 = (0, combi_1.seq)("CREATE BY", expressions_1.EMLEntityPath, fieldsWith);
@@ -70765,7 +70763,7 @@ class Registry {
70765
70763
  }
70766
70764
  static abaplintVersion() {
70767
70765
  // magic, see build script "version.js"
70768
- return "2.120.61";
70766
+ return "2.120.63";
70769
70767
  }
70770
70768
  getDDICReferences() {
70771
70769
  return this.ddicReferences;
@@ -101876,6 +101874,8 @@ class XMLConsistencyConf extends _basic_rule_config_1.BasicRuleConfig {
101876
101874
  this.textAndTranslationLengthSeverity = severity_1.Severity.Error;
101877
101875
  /** Problem severity for data element(DTEL) field checks */
101878
101876
  this.dataElementSeverity = severity_1.Severity.Error;
101877
+ /** Problem severity for transparent table checks */
101878
+ this.transparentTableSeverity = severity_1.Severity.Error;
101879
101879
  }
101880
101880
  }
101881
101881
  exports.XMLConsistencyConf = XMLConsistencyConf;
@@ -102163,11 +102163,11 @@ class XMLConsistency {
102163
102163
  if (obj.getTableCategory() === Objects.TableCategory.Transparent) {
102164
102164
  if (!((_c = obj.getDeliveryClass()) === null || _c === void 0 ? void 0 : _c.trim())) {
102165
102165
  const message = `Transparent table must have delivery class(CONTFLAG in DD02V) set`;
102166
- issues.push(issue_1.Issue.atRow(file, 1, message, this.getMetadata().key, this.conf.severity));
102166
+ issues.push(issue_1.Issue.atRow(file, 1, message, this.getMetadata().key, this.conf.transparentTableSeverity));
102167
102167
  }
102168
102168
  if (!((_d = obj.getSizeCategory()) === null || _d === void 0 ? void 0 : _d.trim())) {
102169
102169
  const message = `Transparent table must have size category(TABKAT in DD09L) set`;
102170
- issues.push(issue_1.Issue.atRow(file, 1, message, this.getMetadata().key, this.conf.severity));
102170
+ issues.push(issue_1.Issue.atRow(file, 1, message, this.getMetadata().key, this.conf.transparentTableSeverity));
102171
102171
  }
102172
102172
  }
102173
102173
  return issues;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.120.61",
3
+ "version": "2.120.63",
4
4
  "description": "abaplint - Command Line Interface",
5
5
  "funding": "https://github.com/sponsors/larshp",
6
6
  "bin": {
@@ -39,7 +39,7 @@
39
39
  },
40
40
  "homepage": "https://abaplint.org",
41
41
  "devDependencies": {
42
- "@abaplint/core": "^2.120.61",
42
+ "@abaplint/core": "^2.120.63",
43
43
  "@types/chai": "^4.3.20",
44
44
  "@types/minimist": "^1.2.5",
45
45
  "@types/mocha": "^10.0.10",