@sasjs/utils 4.1.0 → 4.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.
@@ -19,4 +19,4 @@ export declare class CompileTree {
19
19
  private validateDependency;
20
20
  private getFileName;
21
21
  }
22
- export declare const removeHeader: (content: string) => string;
22
+ export declare const removeHeader: (content: string, filePath?: string | undefined) => string;
@@ -16,6 +16,7 @@ exports.removeHeader = exports.CompileTree = void 0;
16
16
  const path_1 = __importDefault(require("path"));
17
17
  const __1 = require("../");
18
18
  const sasjsCli_1 = require("../sasjsCli");
19
+ const doxygenHeader_1 = require("./doxygenHeader");
19
20
  class CompileTree {
20
21
  constructor(treePath, tree = {}) {
21
22
  this._treePath = treePath;
@@ -32,7 +33,7 @@ class CompileTree {
32
33
  // Adds leaf
33
34
  addLeaf(leaf) {
34
35
  leaf.dependencies = (0, sasjsCli_1.getList)((0, sasjsCli_1.getDeprecatedHeader)(leaf.content, sasjsCli_1.DependencyHeader.Macro), leaf.content);
35
- leaf.content = (0, exports.removeHeader)(leaf.content);
36
+ leaf.content = (0, exports.removeHeader)(leaf.content, leaf.location);
36
37
  this._tree[this.getFileName(leaf.location)] = leaf;
37
38
  return leaf;
38
39
  }
@@ -84,6 +85,9 @@ exports.CompileTree = CompileTree;
84
85
  // Removes header from SAS file
85
86
  // If string begins with a multiline comment, remove the comment
86
87
  // Ignore any preceding white space or line breaks
87
- const removeHeader = (content) => content.replace(new RegExp(`^\\s*\\/(\\*){1,2}([\\s\\S]*?)(\\*){1,2}\\/`), '');
88
+ const removeHeader = (content, filePath) => {
89
+ (0, doxygenHeader_1.throwIfDoxygenHeaderClosesEarly)(content, filePath);
90
+ return content.replace(new RegExp(`^\\s*\\/(\\*){1,2}([\\s\\S]*?)(\\*){1,2}\\/`), '');
91
+ };
88
92
  exports.removeHeader = removeHeader;
89
93
  //# sourceMappingURL=compileTree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compileTree.js","sourceRoot":"","sources":["../../src/compileTree/compileTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compileTree.js","sourceRoot":"","sources":["../../src/compileTree/compileTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /** Where a doxygen header starts and where SAS actually ends it. */
2
+ export interface DoxygenHeader {
3
+ /** Index of the `/*` that opens the header. */
4
+ start: number;
5
+ /** Index of the comment terminator, as the SAS lexer sees it, or `null`. */
6
+ close: number | null;
7
+ /** Index of a nested `/*` that closes before the header does, or `null`. */
8
+ nestedComment: number | null;
9
+ /** Index of the first double-asterisk terminator at or after the close, or `null`. */
10
+ terminator: number | null;
11
+ }
12
+ /**
13
+ * Reads the doxygen header a file opens with.
14
+ *
15
+ * Returns `null` when the file does not open with a doxygen header (`/**`). A
16
+ * plain block comment is not a header, and files that open with one are the
17
+ * subject of the lint rule for header style, not of this check.
18
+ */
19
+ export declare const getDoxygenHeader: (content: string) => DoxygenHeader | null;
20
+ /**
21
+ * Fails when a doxygen header is cut short.
22
+ *
23
+ * A header is a SAS block comment, and SAS block comments do not nest: the
24
+ * first close marker ends the comment. A block comment inside the header ends
25
+ * it at that inner marker, and so does header text holding a close marker. In
26
+ * both cases the rest of the header is compiled as SAS. Without this the
27
+ * failure lands hundreds of lines away from the header, named by nothing
28
+ * useful.
29
+ *
30
+ * @param content - the raw content of a SAS file.
31
+ * @param filePath - path reported in the error, when the caller knows it.
32
+ */
33
+ export declare const throwIfDoxygenHeaderClosesEarly: (content: string, filePath?: string | undefined) => void;
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.throwIfDoxygenHeaderClosesEarly = exports.getDoxygenHeader = void 0;
4
+ const CLOSE = '*/';
5
+ const TERMINATOR = '**/';
6
+ const firstNonWhitespace = (content) => content.search(/\S/);
7
+ /**
8
+ * Reads the doxygen header a file opens with.
9
+ *
10
+ * Returns `null` when the file does not open with a doxygen header (`/**`). A
11
+ * plain block comment is not a header, and files that open with one are the
12
+ * subject of the lint rule for header style, not of this check.
13
+ */
14
+ const getDoxygenHeader = (content) => {
15
+ const start = firstNonWhitespace(content);
16
+ if (start === -1 || !content.startsWith('/**', start))
17
+ return null;
18
+ const close = content.indexOf(CLOSE, start + 2);
19
+ const nestedComment = content.indexOf('/*', start + 2);
20
+ return {
21
+ start,
22
+ close: close === -1 ? null : close,
23
+ nestedComment: nestedComment !== -1 && nestedComment < close ? nestedComment : null,
24
+ terminator: close === -1 ? null : getOwnTerminator(content, close)
25
+ };
26
+ };
27
+ exports.getDoxygenHeader = getDoxygenHeader;
28
+ // Finds the double-asterisk terminator that belongs to this header.
29
+ //
30
+ // Two things disqualify a candidate. It has to stand alone on its line, because
31
+ // the house style writes it that way and a terminator inside a statement ends
32
+ // that statement's comment. And it has to arrive before another header opens:
33
+ // one behind a later opener closes that header, not this one. Both bounds keep
34
+ // the verdict on one header local to it, so the same header is not reported or
35
+ // ignored depending on what happens to follow it.
36
+ const LATER_HEADER = /^[ \t]*\/\*\*/m;
37
+ const getOwnTerminator = (content, close) => {
38
+ let candidate = content.indexOf(TERMINATOR, close - 1);
39
+ while (candidate !== -1) {
40
+ const lineStart = content.lastIndexOf('\n', candidate - 1) + 1;
41
+ const lineLeading = !content.slice(lineStart, candidate).trim();
42
+ // Another header opens before this candidate, so nothing beyond it can be
43
+ // this header's end.
44
+ if (LATER_HEADER.test(content.slice(close + 2, candidate)))
45
+ return null;
46
+ if (lineLeading)
47
+ return candidate;
48
+ candidate = content.indexOf(TERMINATOR, candidate + 1);
49
+ }
50
+ return null;
51
+ };
52
+ const lineOf = (content, index) => content.slice(0, index).split('\n').length;
53
+ /**
54
+ * Fails when a doxygen header is cut short.
55
+ *
56
+ * A header is a SAS block comment, and SAS block comments do not nest: the
57
+ * first close marker ends the comment. A block comment inside the header ends
58
+ * it at that inner marker, and so does header text holding a close marker. In
59
+ * both cases the rest of the header is compiled as SAS. Without this the
60
+ * failure lands hundreds of lines away from the header, named by nothing
61
+ * useful.
62
+ *
63
+ * @param content - the raw content of a SAS file.
64
+ * @param filePath - path reported in the error, when the caller knows it.
65
+ */
66
+ const throwIfDoxygenHeaderClosesEarly = (content, filePath) => {
67
+ const header = (0, exports.getDoxygenHeader)(content);
68
+ // A header that closed at its own terminator was not cut short, and one with
69
+ // no terminator carries no evidence that it was meant to continue.
70
+ if (!header || header.close === null || header.terminator === null)
71
+ return;
72
+ if (header.terminator === header.close - 1)
73
+ return;
74
+ const nested = header.nestedComment;
75
+ const label = filePath ? `${filePath}: ` : '';
76
+ const closeLine = lineOf(content, header.close);
77
+ const terminatorLine = lineOf(content, header.terminator);
78
+ // The terminator stands alone on its line and the close marker is not
79
+ // whitespace, so the two are always on different lines.
80
+ const affected = `lines ${closeLine + 1}-${terminatorLine}`;
81
+ // `/*/` is a comment opener followed straight away by a close marker - the
82
+ // shape a glob such as `src/*/file.sas` leaves in header text.
83
+ const literalSequence = nested !== null && nested === header.close - 1;
84
+ const reword = literalSequence || nested === null;
85
+ const cause = literalSequence
86
+ ? `the /*/ on line ${closeLine} holds that close marker.`
87
+ : nested === null
88
+ ? `the close marker on line ${closeLine} is text in the header.`
89
+ : `the close marker on line ${closeLine} belongs to the block comment opened ${lineOf(content, nested) === closeLine
90
+ ? 'on the same line'
91
+ : `at line ${lineOf(content, nested)}`}.`;
92
+ throw new Error(`${label}the doxygen header is closed at line ${closeLine}, before its **/ terminator at line ${terminatorLine}: ` +
93
+ `${cause} ` +
94
+ `SAS block comments do not nest - a block comment ends at the first close marker it meets - so ${affected} - including the header's closing **/ - would be compiled as SAS. ` +
95
+ (reword
96
+ ? `Reword the header text so that it holds no comment terminator.`
97
+ : `Remove the block comment from the header, or move it below the header.`));
98
+ };
99
+ exports.throwIfDoxygenHeaderClosesEarly = throwIfDoxygenHeaderClosesEarly;
100
+ //# sourceMappingURL=doxygenHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doxygenHeader.js","sourceRoot":"","sources":["../../src/compileTree/doxygenHeader.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export * from './compileTree';
2
+ export * from './doxygenHeader';
@@ -11,4 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./compileTree"), exports);
14
+ __exportStar(require("./doxygenHeader"), exports);
14
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compileTree/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compileTree/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA6B;AAC7B,kDAA+B"}
package/package.json CHANGED
@@ -95,5 +95,5 @@
95
95
  "jwt-decode": "4.0.0",
96
96
  "prompts": "2.4.2"
97
97
  },
98
- "version": "4.1.0"
98
+ "version": "4.1.1"
99
99
  }
@@ -15,6 +15,7 @@ const _1 = require("./");
15
15
  const utils_2 = require("../utils");
16
16
  const file_1 = require("../file");
17
17
  const formatter_1 = require("../formatter");
18
+ const doxygenHeader_1 = require("../compileTree/doxygenHeader");
18
19
  // REFACTOR: move logic supporting SAS Macros dependencies to this file
19
20
  var DependencyType;
20
21
  (function (DependencyType) {
@@ -74,6 +75,10 @@ const getDependencies = (fileName, fileContent, folders, depType, compileTree) =
74
75
  }
75
76
  else {
76
77
  encodedFileContent = yield (0, file_1.readFile)(filePaths[0], depType === DependencyType.Binary ? 'base64' : undefined);
78
+ // Without a compile tree the file goes in as read, so its header
79
+ // reaches the compiled output unstripped and has to be checked here.
80
+ if (depType !== DependencyType.Binary)
81
+ (0, doxygenHeader_1.throwIfDoxygenHeaderClosesEarly)(encodedFileContent, filePaths[0]);
77
82
  }
78
83
  const depContent = compileDep(depType, encodedFileContent, dep.fileRef);
79
84
  foundDeps.push(depContent);
@@ -1 +1 @@
1
- {"version":3,"file":"getDependencies.js","sourceRoot":"","sources":["../../src/sasjsCli/getDependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getDependencies.js","sourceRoot":"","sources":["../../src/sasjsCli/getDependencies.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,10 @@ exports.getAllDependencies = exports.loadDependenciesFile = void 0;
13
13
  const types_1 = require("../types");
14
14
  const utils_1 = require("../utils");
15
15
  const _1 = require("./");
16
+ const doxygenHeader_1 = require("../compileTree/doxygenHeader");
16
17
  const file_1 = require("../file");
17
18
  const loadDependenciesFile = ({ filePath, fileContent, configuration, target, type, programFolders, macroFolders, buildSourceFolder, macroCorePath, binaryFolders, compileTree }) => __awaiter(void 0, void 0, void 0, function* () {
19
+ (0, doxygenHeader_1.throwIfDoxygenHeaderClosesEarly)(fileContent, filePath);
18
20
  const { init, initPath, term, termPath, startUpVars, initLeaf, termLeaf } = yield (0, _1.getInitTerm)({
19
21
  configuration,
20
22
  target,
@@ -1 +1 @@
1
- {"version":3,"file":"loadDependenciesFile.js","sourceRoot":"","sources":["../../src/sasjsCli/loadDependenciesFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadDependenciesFile.js","sourceRoot":"","sources":["../../src/sasjsCli/loadDependenciesFile.ts"],"names":[],"mappings":"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"}