@atlisp/lint 0.1.2 → 0.1.3

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 (113) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -2
  3. package/atlisp-lint.default.json +22 -3
  4. package/bin/atlisp-lint +1 -1
  5. package/dist/atlisp-lint.default.json +22 -3
  6. package/dist/checks/append-single.d.ts +3 -0
  7. package/dist/checks/append-single.d.ts.map +1 -0
  8. package/dist/checks/append-single.js +17 -0
  9. package/dist/checks/append-single.js.map +1 -0
  10. package/dist/checks/comment-style.d.ts +3 -0
  11. package/dist/checks/comment-style.d.ts.map +1 -0
  12. package/dist/checks/comment-style.js +21 -0
  13. package/dist/checks/comment-style.js.map +1 -0
  14. package/dist/checks/dynamic-doc.d.ts +3 -0
  15. package/dist/checks/dynamic-doc.d.ts.map +1 -0
  16. package/dist/checks/dynamic-doc.js +21 -0
  17. package/dist/checks/dynamic-doc.js.map +1 -0
  18. package/dist/checks/empty-catch.d.ts +3 -0
  19. package/dist/checks/empty-catch.d.ts.map +1 -0
  20. package/dist/checks/empty-catch.js +31 -0
  21. package/dist/checks/empty-catch.js.map +1 -0
  22. package/dist/checks/eq-usage.d.ts +3 -0
  23. package/dist/checks/eq-usage.d.ts.map +1 -0
  24. package/dist/checks/eq-usage.js +22 -0
  25. package/dist/checks/eq-usage.js.map +1 -0
  26. package/dist/checks/function-order.d.ts +3 -0
  27. package/dist/checks/function-order.d.ts.map +1 -0
  28. package/dist/checks/function-order.js +33 -0
  29. package/dist/checks/function-order.js.map +1 -0
  30. package/dist/checks/index.d.ts +3 -0
  31. package/dist/checks/index.d.ts.map +1 -0
  32. package/dist/checks/index.js +108 -0
  33. package/dist/checks/index.js.map +1 -0
  34. package/dist/checks/lambda-syntax.d.ts +3 -0
  35. package/dist/checks/lambda-syntax.d.ts.map +1 -0
  36. package/dist/checks/lambda-syntax.js +22 -0
  37. package/dist/checks/lambda-syntax.js.map +1 -0
  38. package/dist/checks/long-function-call.d.ts +3 -0
  39. package/dist/checks/long-function-call.d.ts.map +1 -0
  40. package/dist/checks/long-function-call.js +48 -0
  41. package/dist/checks/long-function-call.js.map +1 -0
  42. package/dist/checks/loop-optimization.d.ts +3 -0
  43. package/dist/checks/loop-optimization.d.ts.map +1 -0
  44. package/dist/checks/loop-optimization.js +17 -0
  45. package/dist/checks/loop-optimization.js.map +1 -0
  46. package/dist/checks/magic-number.d.ts +3 -0
  47. package/dist/checks/magic-number.d.ts.map +1 -0
  48. package/dist/checks/magic-number.js +21 -0
  49. package/dist/checks/magic-number.js.map +1 -0
  50. package/dist/checks/missing-doc.js +1 -1
  51. package/dist/checks/missing-doc.js.map +1 -1
  52. package/dist/checks/mixed-indent.d.ts +3 -0
  53. package/dist/checks/mixed-indent.d.ts.map +1 -0
  54. package/dist/checks/mixed-indent.js +19 -0
  55. package/dist/checks/mixed-indent.js.map +1 -0
  56. package/dist/checks/no-return.d.ts +3 -0
  57. package/dist/checks/no-return.d.ts.map +1 -0
  58. package/dist/checks/no-return.js +45 -0
  59. package/dist/checks/no-return.js.map +1 -0
  60. package/dist/checks/nth-usage.d.ts +3 -0
  61. package/dist/checks/nth-usage.d.ts.map +1 -0
  62. package/dist/checks/nth-usage.js +17 -0
  63. package/dist/checks/nth-usage.js.map +1 -0
  64. package/dist/checks/quote-style.d.ts +3 -0
  65. package/dist/checks/quote-style.d.ts.map +1 -0
  66. package/dist/checks/quote-style.js +22 -0
  67. package/dist/checks/quote-style.js.map +1 -0
  68. package/dist/checks/redundant-if.d.ts +3 -0
  69. package/dist/checks/redundant-if.d.ts.map +1 -0
  70. package/dist/checks/redundant-if.js +17 -0
  71. package/dist/checks/redundant-if.js.map +1 -0
  72. package/dist/checks/redundant-progn.d.ts +3 -0
  73. package/dist/checks/redundant-progn.d.ts.map +1 -0
  74. package/dist/checks/redundant-progn.js +22 -0
  75. package/dist/checks/redundant-progn.js.map +1 -0
  76. package/dist/checks/setq-multiple.d.ts +3 -0
  77. package/dist/checks/setq-multiple.d.ts.map +1 -0
  78. package/dist/checks/setq-multiple.js +17 -0
  79. package/dist/checks/setq-multiple.js.map +1 -0
  80. package/dist/checks/shadow-builtin.d.ts +3 -0
  81. package/dist/checks/shadow-builtin.d.ts.map +1 -0
  82. package/dist/checks/shadow-builtin.js +29 -0
  83. package/dist/checks/shadow-builtin.js.map +1 -0
  84. package/dist/checks/type-check.d.ts +3 -0
  85. package/dist/checks/type-check.d.ts.map +1 -0
  86. package/dist/checks/type-check.js +26 -0
  87. package/dist/checks/type-check.js.map +1 -0
  88. package/dist/checks/unused-variable.d.ts.map +1 -1
  89. package/dist/checks/unused-variable.js +16 -4
  90. package/dist/checks/unused-variable.js.map +1 -1
  91. package/dist/config.d.ts.map +1 -1
  92. package/dist/config.js +22 -3
  93. package/dist/config.js.map +1 -1
  94. package/dist/index.d.ts +1 -1
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +111 -21
  97. package/dist/index.js.map +1 -1
  98. package/dist/locale.d.ts.map +1 -1
  99. package/dist/locale.js +46 -2
  100. package/dist/locale.js.map +1 -1
  101. package/dist/rules.d.ts.map +1 -1
  102. package/dist/rules.js +22 -3
  103. package/dist/rules.js.map +1 -1
  104. package/dist/runner.d.ts +11 -2
  105. package/dist/runner.d.ts.map +1 -1
  106. package/dist/runner.js +69 -66
  107. package/dist/runner.js.map +1 -1
  108. package/dist/validate.d.ts.map +1 -1
  109. package/dist/validate.js +5 -1
  110. package/dist/validate.js.map +1 -1
  111. package/dist/worker.js +2 -47
  112. package/dist/worker.js.map +1 -1
  113. package/package.json +8 -1
package/dist/runner.js CHANGED
@@ -33,78 +33,55 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.parseIgnoreFile = parseIgnoreFile;
36
37
  exports.lintFiles = lintFiles;
37
38
  exports.lintFilesParallel = lintFilesParallel;
38
39
  exports.fixFile = fixFile;
40
+ exports.clearCache = clearCache;
39
41
  const fs = __importStar(require("fs"));
40
42
  const path = __importStar(require("path"));
41
43
  const worker_threads_1 = require("worker_threads");
42
44
  const os = __importStar(require("os"));
43
- const encoding_1 = require("./checks/encoding");
44
- const parens_1 = require("./checks/parens");
45
- const cl_syntax_1 = require("./checks/cl-syntax");
46
- const dangerous_calls_1 = require("./checks/dangerous-calls");
47
- const vlax_1 = require("./checks/vlax");
48
- const token_in_url_1 = require("./checks/token-in-url");
49
- const open_close_1 = require("./checks/open-close");
50
- const bare_names_1 = require("./checks/bare-names");
51
- const module_reg_1 = require("./checks/module-reg");
52
- const namespace_header_1 = require("./checks/namespace-header");
53
- const trailing_ws_1 = require("./checks/trailing-ws");
54
- const line_length_1 = require("./checks/line-length");
55
- const function_complexity_1 = require("./checks/function-complexity");
56
- const parameter_naming_1 = require("./checks/parameter-naming");
57
- const unused_variable_1 = require("./checks/unused-variable");
58
- const missing_doc_1 = require("./checks/missing-doc");
59
- const error_handling_1 = require("./checks/error-handling");
60
- const global_naming_1 = require("./checks/global-naming");
61
- const extra_parens_1 = require("./checks/extra-parens");
62
- const arg_count_1 = require("./checks/arg-count");
63
- const strcat_usage_1 = require("./checks/strcat-usage");
64
- const cond_simplify_1 = require("./checks/cond-simplify");
45
+ const index_1 = require("./checks/index");
65
46
  const config_1 = require("./config");
66
47
  const locale_1 = require("./locale");
67
- const disable_1 = require("./disable");
68
- function runChecks(content, file, config) {
69
- const issues = [];
70
- const disableMap = (0, disable_1.parseDisableComments)(content);
71
- function addIfEnabled(rule, fn) {
72
- const results = fn();
73
- for (const r of results) {
74
- if (!(0, disable_1.isDisabled)(r.rule, r.line, disableMap)) {
75
- issues.push(r);
76
- }
48
+ const cache_1 = require("./cache");
49
+ function parseIgnoreFile(rootDir) {
50
+ const ignorePath = path.join(rootDir, '.atlisp-lint-ignore');
51
+ if (!fs.existsSync(ignorePath))
52
+ return [];
53
+ const patterns = [];
54
+ for (const line of fs.readFileSync(ignorePath, 'utf-8').split('\n')) {
55
+ const trimmed = line.trim();
56
+ if (!trimmed || trimmed.startsWith('#'))
57
+ continue;
58
+ try {
59
+ const str = trimmed
60
+ .replace(/\./g, '\\.')
61
+ .replace(/\*\*/g, '.*')
62
+ .replace(/\*/g, '[^/]*');
63
+ patterns.push(new RegExp(`^${str}$`));
77
64
  }
65
+ catch { /* skip invalid patterns */ }
78
66
  }
79
- addIfEnabled('encoding', () => (0, encoding_1.checkEncoding)(content, file));
80
- addIfEnabled('parens', () => (0, parens_1.checkParens)(content, file));
81
- addIfEnabled('cl_syntax', () => (0, cl_syntax_1.checkClSyntax)(content, file, config.cl_syntax.keywords));
82
- addIfEnabled('quit_exit', () => (0, dangerous_calls_1.checkDangerousCalls)(content, file, config.dangerous_calls));
83
- addIfEnabled('vlax_without_loading', () => (0, vlax_1.checkVlaxWithoutLoading)(content, file));
84
- addIfEnabled('token_in_url', () => (0, token_in_url_1.checkTokenInUrl)(content, file));
85
- addIfEnabled('open_without_close', () => (0, open_close_1.checkOpenWithoutClose)(content, file));
86
- addIfEnabled('bare_function_names', () => (0, bare_names_1.checkBareFunctionNames)(content, file, config.bare_function_names.allowlist, config.bare_function_names.namespace_pattern));
87
- addIfEnabled('module_registration', () => (0, module_reg_1.checkModuleRegistration)(content, file, file, config.module_registration));
88
- addIfEnabled('namespace_header', () => (0, namespace_header_1.checkNamespaceHeader)(content, file, config.namespace_header));
89
- addIfEnabled('line_length', () => (0, line_length_1.checkLineLength)(content, file, config.line_length.max, config.line_length.tab_width));
90
- addIfEnabled('function_complexity', () => (0, function_complexity_1.checkFunctionComplexity)(content, file, config.function_complexity.max_lines, config.function_complexity.max_nesting));
91
- addIfEnabled('parameter_naming', () => (0, parameter_naming_1.checkParameterNaming)(content, file));
92
- addIfEnabled('unused_variable', () => (0, unused_variable_1.checkUnusedVariable)(content, file));
93
- addIfEnabled('missing_doc', () => (0, missing_doc_1.checkMissingDoc)(content, file));
94
- addIfEnabled('error_handling', () => (0, error_handling_1.checkErrorHandling)(content, file));
95
- addIfEnabled('global_naming', () => (0, global_naming_1.checkGlobalNaming)(content, file));
96
- addIfEnabled('extra_parens', () => (0, extra_parens_1.checkExtraParens)(content, file));
97
- addIfEnabled('arg_count', () => (0, arg_count_1.checkArgCount)(content, file));
98
- addIfEnabled('strcat_usage', () => (0, strcat_usage_1.checkStrcatUsage)(content, file));
99
- addIfEnabled('cond_simplify', () => (0, cond_simplify_1.checkCondSimplify)(content, file));
100
- addIfEnabled('trailing_whitespace', () => (0, trailing_ws_1.checkTrailingWhitespace)(content, file));
101
- return issues;
67
+ return patterns;
102
68
  }
103
- function lintFiles(files, config, rootDir) {
69
+ function lintFiles(files, config, rootDir, options) {
104
70
  (0, locale_1.setLocale)(config.locale || 'zh');
105
71
  const allIssues = [];
106
- for (const filepath of files) {
72
+ const ignorePatterns = options?.ignorePatterns || [];
73
+ const useCache = options?.useCache ?? false;
74
+ for (let idx = 0; idx < files.length; idx++) {
75
+ const filepath = files[idx];
107
76
  const relPath = path.relative(rootDir, filepath);
77
+ // Check ignore patterns
78
+ const relForward = relPath.replace(/\\/g, '/');
79
+ if (ignorePatterns.some(re => re.test(relForward)))
80
+ continue;
81
+ // Check cache
82
+ if (useCache && (0, cache_1.isCached)(filepath, rootDir))
83
+ continue;
84
+ options?.onProgress?.(idx + 1, files.length);
108
85
  let content;
109
86
  try {
110
87
  content = fs.readFileSync(filepath, 'utf-8');
@@ -119,23 +96,41 @@ function lintFiles(files, config, rootDir) {
119
96
  // Per-directory config override
120
97
  const override = (0, config_1.findOverrides)(filepath);
121
98
  const effectiveConfig = override ? (0, config_1.mergeOverrides)(config, override) : config;
122
- allIssues.push(...runChecks(content, relPath, effectiveConfig));
99
+ const fileIssues = (0, index_1.runChecks)(content, relPath, effectiveConfig);
100
+ // Mark as cached if no issues found
101
+ if (useCache && fileIssues.length === 0) {
102
+ (0, cache_1.markCached)(filepath, rootDir);
103
+ }
104
+ allIssues.push(...fileIssues);
123
105
  }
124
106
  return allIssues;
125
107
  }
126
- function lintFilesParallel(files, config, rootDir) {
108
+ function lintFilesParallel(files, config, rootDir, options) {
127
109
  (0, locale_1.setLocale)(config.locale || 'zh');
128
- return new Promise((resolve, reject) => {
110
+ const ignorePatterns = options?.ignorePatterns || [];
111
+ return new Promise((resolve) => {
129
112
  const allIssues = [];
130
113
  let completed = 0;
131
114
  const maxWorkers = Math.min(os.cpus().length, files.length);
132
115
  let nextIndex = 0;
133
116
  function startWorker() {
134
- if (nextIndex >= files.length)
117
+ if (nextIndex >= files.length) {
118
+ if (completed >= files.length)
119
+ resolve(allIssues);
135
120
  return;
121
+ }
136
122
  const idx = nextIndex++;
137
123
  const filepath = files[idx];
138
124
  const relPath = path.relative(rootDir, filepath);
125
+ // Check ignore patterns
126
+ const relForward = relPath.replace(/\\/g, '/');
127
+ if (ignorePatterns.some(re => re.test(relForward))) {
128
+ completed++;
129
+ startWorker();
130
+ if (completed >= files.length)
131
+ resolve(allIssues);
132
+ return;
133
+ }
139
134
  const worker = new worker_threads_1.Worker(path.join(__dirname, 'worker.js'), {
140
135
  workerData: { filepath, relPath, config },
141
136
  eval: false,
@@ -143,16 +138,13 @@ function lintFilesParallel(files, config, rootDir) {
143
138
  worker.on('message', (msg) => {
144
139
  allIssues.push(...msg.issues);
145
140
  completed++;
141
+ options?.onProgress?.(completed, files.length);
146
142
  worker.terminate();
147
143
  startWorker();
148
144
  if (completed >= files.length)
149
145
  resolve(allIssues);
150
146
  });
151
- worker.on('error', (err) => {
152
- allIssues.push({
153
- file: relPath, line: 1, severity: 'error', rule: 'worker',
154
- message: err.message,
155
- });
147
+ worker.on('error', () => {
156
148
  completed++;
157
149
  worker.terminate();
158
150
  startWorker();
@@ -181,9 +173,20 @@ function fixFile(filepath) {
181
173
  content = content.slice(1);
182
174
  fixes.push('encoding (BOM)');
183
175
  }
176
+ // Fix comment style: ;text -> ; text
177
+ const commentFixed = content.split('\n').map(l => {
178
+ return l.replace(/^(\s*);([^ ;|])/gm, '$1; $2');
179
+ }).join('\n');
180
+ if (commentFixed !== content) {
181
+ content = commentFixed;
182
+ fixes.push('comment_style');
183
+ }
184
184
  if (fixes.length > 0) {
185
185
  fs.writeFileSync(filepath, content, 'utf-8');
186
186
  }
187
187
  return fixes;
188
188
  }
189
+ function clearCache(rootDir) {
190
+ (0, cache_1.clearCache)(rootDir);
191
+ }
189
192
  //# sourceMappingURL=runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAY,MAAM,SAAS,CAAC;AAc/C,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,EAAE,CA8CpE"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAY,MAAM,SAAS,CAAC;AAkB/C,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,EAAE,CA8CpE"}
package/dist/validate.js CHANGED
@@ -7,7 +7,11 @@ const VALID_RULES = [
7
7
  'open_without_close', 'bare_function_names', 'line_length',
8
8
  'function_complexity', 'parameter_naming', 'unused_variable', 'missing_doc',
9
9
  'error_handling', 'global_naming', 'extra_parens', 'arg_count',
10
- 'strcat_usage', 'cond_simplify', 'trailing_whitespace',
10
+ 'strcat_usage', 'cond_simplify', 'redundant_progn', 'quote_style', 'eq_usage',
11
+ 'lambda_syntax', 'comment_style', 'empty_catch', 'nth_usage', 'append_single', 'setq_multiple',
12
+ 'function_order', 'magic_number', 'mixed_indent', 'long_function_call',
13
+ 'no_return', 'shadow_builtin', 'dynamic_doc', 'loop_optimization',
14
+ 'type_check', 'redundant_if', 'trailing_whitespace',
11
15
  'module_registration', 'namespace_header',
12
16
  ];
13
17
  const VALID_SEVERITIES = ['off', 'warn', 'error'];
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
package/dist/worker.js CHANGED
@@ -3,58 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const worker_threads_1 = require("worker_threads");
4
4
  const fs_1 = require("fs");
5
5
  const locale_1 = require("./locale");
6
- const disable_1 = require("./disable");
7
- const encoding_1 = require("./checks/encoding");
8
- const parens_1 = require("./checks/parens");
9
- const cl_syntax_1 = require("./checks/cl-syntax");
10
- const dangerous_calls_1 = require("./checks/dangerous-calls");
11
- const vlax_1 = require("./checks/vlax");
12
- const token_in_url_1 = require("./checks/token-in-url");
13
- const open_close_1 = require("./checks/open-close");
14
- const bare_names_1 = require("./checks/bare-names");
15
- const module_reg_1 = require("./checks/module-reg");
16
- const namespace_header_1 = require("./checks/namespace-header");
17
- const line_length_1 = require("./checks/line-length");
18
- const function_complexity_1 = require("./checks/function-complexity");
19
- const parameter_naming_1 = require("./checks/parameter-naming");
20
- const unused_variable_1 = require("./checks/unused-variable");
21
- const missing_doc_1 = require("./checks/missing-doc");
22
- const trailing_ws_1 = require("./checks/trailing-ws");
23
- function runChecks(content, file, config) {
24
- const issues = [];
25
- const disableMap = (0, disable_1.parseDisableComments)(content);
26
- function addIfEnabled(rule, fn) {
27
- const results = fn();
28
- for (const r of results) {
29
- if (!(0, disable_1.isDisabled)(r.rule, r.line, disableMap)) {
30
- issues.push(r);
31
- }
32
- }
33
- }
34
- addIfEnabled('encoding', () => (0, encoding_1.checkEncoding)(content, file));
35
- addIfEnabled('parens', () => (0, parens_1.checkParens)(content, file));
36
- addIfEnabled('cl_syntax', () => (0, cl_syntax_1.checkClSyntax)(content, file, config.cl_syntax.keywords));
37
- addIfEnabled('quit_exit', () => (0, dangerous_calls_1.checkDangerousCalls)(content, file, config.dangerous_calls));
38
- addIfEnabled('vlax_without_loading', () => (0, vlax_1.checkVlaxWithoutLoading)(content, file));
39
- addIfEnabled('token_in_url', () => (0, token_in_url_1.checkTokenInUrl)(content, file));
40
- addIfEnabled('open_without_close', () => (0, open_close_1.checkOpenWithoutClose)(content, file));
41
- addIfEnabled('bare_function_names', () => (0, bare_names_1.checkBareFunctionNames)(content, file, config.bare_function_names.allowlist, config.bare_function_names.namespace_pattern));
42
- addIfEnabled('module_registration', () => (0, module_reg_1.checkModuleRegistration)(content, file, file, config.module_registration));
43
- addIfEnabled('namespace_header', () => (0, namespace_header_1.checkNamespaceHeader)(content, file, config.namespace_header));
44
- addIfEnabled('line_length', () => (0, line_length_1.checkLineLength)(content, file, config.line_length.max, config.line_length.tab_width));
45
- addIfEnabled('function_complexity', () => (0, function_complexity_1.checkFunctionComplexity)(content, file, config.function_complexity.max_lines, config.function_complexity.max_nesting));
46
- addIfEnabled('parameter_naming', () => (0, parameter_naming_1.checkParameterNaming)(content, file));
47
- addIfEnabled('unused_variable', () => (0, unused_variable_1.checkUnusedVariable)(content, file));
48
- addIfEnabled('missing_doc', () => (0, missing_doc_1.checkMissingDoc)(content, file));
49
- addIfEnabled('trailing_whitespace', () => (0, trailing_ws_1.checkTrailingWhitespace)(content, file));
50
- return issues;
51
- }
6
+ const index_1 = require("./checks/index");
52
7
  if (worker_threads_1.parentPort && worker_threads_1.workerData) {
53
8
  const input = worker_threads_1.workerData;
54
9
  (0, locale_1.setLocale)(input.config.locale || 'zh');
55
10
  try {
56
11
  const content = (0, fs_1.readFileSync)(input.filepath, 'utf-8');
57
- const issues = runChecks(content, input.relPath, input.config);
12
+ const issues = (0, index_1.runChecks)(content, input.relPath, input.config);
58
13
  const output = { filepath: input.filepath, issues };
59
14
  worker_threads_1.parentPort.postMessage(output);
60
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":";;AAAA,mDAAwD;AACxD,2BAAkC;AAElC,qCAAqC;AACrC,0CAA2C;AAE3C,IAAI,2BAAU,IAAI,2BAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,2BAAuE,CAAC;IACtF,IAAA,kBAAS,EAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,iBAAY,EAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACpD,2BAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,MAAM,GAAG;YACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,CAAC;oBACP,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAgB,EAAE,IAAI,EAAE,MAAM;oBACtE,OAAO,EAAE,kBAAkB;iBAC5B,CAAC;SACH,CAAC;QACF,2BAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlisp/lint",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "AutoLISP static analysis tool — parens, security, conventions, SBCL syntax validation",
5
5
  "keywords": [
6
6
  "CAD",
@@ -25,14 +25,21 @@
25
25
  ],
26
26
  "scripts": {
27
27
  "build": "tsc && node -e \"const fs=require('fs'),p=require('path');fs.mkdirSync(p.join('dist','lib'),{recursive:true});fs.readdirSync('lib').forEach(f=>fs.copyFileSync(p.join('lib',f),p.join('dist','lib',f)));['atlisp-lint.default.json','stub-packages.json'].forEach(f=>fs.copyFileSync(f,p.join('dist',f)))\"",
28
+ "clean": "rm -rf dist",
28
29
  "test": "jest",
30
+ "test:coverage": "jest --coverage",
31
+ "test:watch": "jest --watch",
29
32
  "prepublishOnly": "npm run build",
30
33
  "prepack": "npm run build"
31
34
  },
32
35
  "devDependencies": {
33
36
  "@types/jest": "^29",
34
37
  "@types/node": "^18",
38
+ "@typescript-eslint/eslint-plugin": "^7",
39
+ "@typescript-eslint/parser": "^7",
40
+ "eslint": "^8",
35
41
  "jest": "^29",
42
+ "prettier": "^3",
36
43
  "ts-jest": "^29",
37
44
  "ts-node": "^10.9.2",
38
45
  "typescript": "^5"