@thethracian/oxlint-config 0.2.0 → 0.2.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.md +6 -0
- package/README.md +3 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/rules/acronym-case.d.ts.map +1 -1
- package/dist/rules/acronym-case.js +0 -2
- package/dist/rules/acronym-case.js.map +1 -1
- package/dist/rules/effect-default-helpers.d.ts.map +1 -1
- package/dist/rules/effect-default-helpers.js +105 -28
- package/dist/rules/effect-default-helpers.js.map +1 -1
- package/dist/rules/effect-default.d.ts.map +1 -1
- package/dist/rules/effect-default.js +269 -133
- package/dist/rules/effect-default.js.map +1 -1
- package/dist/rules/effect-rule-core.d.ts +8 -0
- package/dist/rules/effect-rule-core.d.ts.map +1 -1
- package/dist/rules/effect-rule-core.js +208 -61
- package/dist/rules/effect-rule-core.js.map +1 -1
- package/dist/rules/effect-source-helpers.d.ts.map +1 -1
- package/dist/rules/effect-source-helpers.js +37 -12
- package/dist/rules/effect-source-helpers.js.map +1 -1
- package/dist/rules/effect-source-scan.d.ts.map +1 -1
- package/dist/rules/effect-source-scan.js +18 -10
- package/dist/rules/effect-source-scan.js.map +1 -1
- package/dist/rules/effect-strict-helpers.d.ts.map +1 -1
- package/dist/rules/effect-strict-helpers.js +180 -11
- package/dist/rules/effect-strict-helpers.js.map +1 -1
- package/dist/rules/effect-strict.d.ts.map +1 -1
- package/dist/rules/effect-strict.js +87 -23
- package/dist/rules/effect-strict.js.map +1 -1
- package/dist/rules/max-line-length.d.ts.map +1 -1
- package/dist/rules/max-line-length.js +25 -7
- package/dist/rules/max-line-length.js.map +1 -1
- package/dist/rules/plugin.d.ts +2 -121
- package/dist/rules/plugin.d.ts.map +1 -1
- package/dist/rules/plugin.js +78 -94
- package/dist/rules/plugin.js.map +1 -1
- package/dist/rules/require-function-doc.d.ts.map +1 -1
- package/dist/rules/require-function-doc.js +32 -21
- package/dist/rules/require-function-doc.js.map +1 -1
- package/dist/rules/source-cache.d.ts +11 -0
- package/dist/rules/source-cache.d.ts.map +1 -0
- package/dist/rules/source-cache.js +50 -0
- package/dist/rules/source-cache.js.map +1 -0
- package/package.json +6 -9
|
@@ -1,11 +1,46 @@
|
|
|
1
1
|
import { hasEffectSignal } from './effect-rule-core.js';
|
|
2
2
|
import { findBalancedCallEnd, findStatementEnd, isInsideCall, stripComments, stripCommentsAndStrings, } from './effect-source-helpers.js';
|
|
3
|
+
const SEGMENT_CACHE_MAX = 256;
|
|
4
|
+
const EXTERNAL_CALL_PATTERN = /\b(?:HttpClient\.(?:get|post|put|patch|delete|request)|fetch|FileSystem\.[A-Za-z_$][\w$]*|SqlClient\.[A-Za-z_$][\w$]*)\s*\(/g;
|
|
5
|
+
const IDEMPOTENT_EXTERNAL_CALL_PATTERN = /\b(?:HttpClient\.(?:get|head|put|delete)|fetch|(?:find|lookup|read)[A-Z]\w*)\s*\(/g;
|
|
6
|
+
const localEffectCallSegmentCache = new Map();
|
|
7
|
+
const enclosingEffectWrapperSegmentCache = new Map();
|
|
8
|
+
function sourceIndexCache(cache, source) {
|
|
9
|
+
let indexCache = cache.get(source);
|
|
10
|
+
if (indexCache !== undefined) {
|
|
11
|
+
return indexCache;
|
|
12
|
+
}
|
|
13
|
+
if (cache.size >= SEGMENT_CACHE_MAX) {
|
|
14
|
+
const firstKey = cache.keys().next().value;
|
|
15
|
+
if (firstKey !== undefined) {
|
|
16
|
+
cache.delete(firstKey);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
indexCache = new Map();
|
|
20
|
+
cache.set(source, indexCache);
|
|
21
|
+
return indexCache;
|
|
22
|
+
}
|
|
3
23
|
function lineAround(source, targetIndex) {
|
|
4
24
|
const start = source.lastIndexOf('\n', targetIndex) + 1;
|
|
5
25
|
const end = source.indexOf('\n', targetIndex);
|
|
6
26
|
return source.slice(start, end === -1 ? source.length : end);
|
|
7
27
|
}
|
|
28
|
+
function isAsciiWhitespace(character) {
|
|
29
|
+
return character === ' ' || character === '\n' || character === '\r' || character === '\t';
|
|
30
|
+
}
|
|
31
|
+
function isIdentifierPart(character) {
|
|
32
|
+
if (character === undefined || character === '$' || character === '_') {
|
|
33
|
+
return character !== undefined;
|
|
34
|
+
}
|
|
35
|
+
const charCode = character.charCodeAt(0);
|
|
36
|
+
return ((charCode >= 48 && charCode <= 57) ||
|
|
37
|
+
(charCode >= 65 && charCode <= 90) ||
|
|
38
|
+
(charCode >= 97 && charCode <= 122));
|
|
39
|
+
}
|
|
8
40
|
function testSegments(source) {
|
|
41
|
+
if (!source.includes('it(') && !source.includes('it.effect')) {
|
|
42
|
+
return [source];
|
|
43
|
+
}
|
|
9
44
|
const code = stripCommentsAndStrings(source);
|
|
10
45
|
const starts = [...code.matchAll(/\bit(?:\.effect)?\s*\(/g)].map((match) => match.index);
|
|
11
46
|
if (starts.length === 0) {
|
|
@@ -14,11 +49,17 @@ function testSegments(source) {
|
|
|
14
49
|
return starts.map((start, index) => code.slice(start, starts[index + 1] ?? code.length));
|
|
15
50
|
}
|
|
16
51
|
function hasLayerFactory(source) {
|
|
52
|
+
if (!source.includes('Layer.')) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
17
55
|
const code = stripCommentsAndStrings(source);
|
|
18
56
|
return (/export\s+function\s+[A-Za-z_$][\w$]*Layer\s*\([^)]*\)\s*{[\s\S]*?Layer\./.test(code) ||
|
|
19
57
|
/export\s+const\s+[A-Za-z_$][\w$]*Layer\s*=\s*(?:\([^)]*\)|[A-Za-z_$][\w$]*)?\s*=>[\s\S]*?Layer\./.test(code));
|
|
20
58
|
}
|
|
21
59
|
function hasUnscopedResourceLayer(source) {
|
|
60
|
+
if (!source.includes('Layer.effect')) {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
22
63
|
const code = stripCommentsAndStrings(source);
|
|
23
64
|
for (const match of code.matchAll(/Layer\.effect\s*\(/g)) {
|
|
24
65
|
const openParenIndex = code.indexOf('(', match.index);
|
|
@@ -31,6 +72,12 @@ function hasUnscopedResourceLayer(source) {
|
|
|
31
72
|
return false;
|
|
32
73
|
}
|
|
33
74
|
function hasBoundaryDataWithoutSchema(source) {
|
|
75
|
+
if (!source.includes('.body') &&
|
|
76
|
+
!source.includes('.params') &&
|
|
77
|
+
!source.includes('.query') &&
|
|
78
|
+
!source.includes('.payload')) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
34
81
|
const code = stripCommentsAndStrings(source);
|
|
35
82
|
for (const match of code.matchAll(/(?:req|request|command|message)\.(?:body|params|query|payload)/g)) {
|
|
36
83
|
const accessEnd = match.index + match[0].length;
|
|
@@ -47,6 +94,9 @@ function hasBoundaryDataWithoutSchema(source) {
|
|
|
47
94
|
return false;
|
|
48
95
|
}
|
|
49
96
|
function hasHttpServerRequestWithoutSchema(source) {
|
|
97
|
+
if (!source.includes('HttpRouter.') && !source.includes('HttpServerRequest')) {
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
50
100
|
const code = stripCommentsAndStrings(source);
|
|
51
101
|
if (!/\b(?:HttpRouter\.|HttpServerRequest\b)/.test(code)) {
|
|
52
102
|
return false;
|
|
@@ -64,6 +114,12 @@ function hasHttpServerRequestWithoutSchema(source) {
|
|
|
64
114
|
return false;
|
|
65
115
|
}
|
|
66
116
|
function hasPersistenceReadWithoutSchema(source) {
|
|
117
|
+
if (!source.includes('db.') &&
|
|
118
|
+
!source.includes('database.') &&
|
|
119
|
+
!source.includes('collection.') &&
|
|
120
|
+
!source.includes('repository.')) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
67
123
|
const code = stripCommentsAndStrings(source);
|
|
68
124
|
for (const match of code.matchAll(/\b(?:db|database|collection|repository)\.[\s\S]*?(?:select|find|get|query)\s*\(/g)) {
|
|
69
125
|
const localSource = lineAround(code, match.index);
|
|
@@ -78,6 +134,13 @@ function hasPersistenceReadWithoutSchema(source) {
|
|
|
78
134
|
return false;
|
|
79
135
|
}
|
|
80
136
|
function hasCommandHandlerWithoutSchema(source) {
|
|
137
|
+
if (!source.includes('handler') ||
|
|
138
|
+
(!source.includes('Command') &&
|
|
139
|
+
!source.includes('Cli') &&
|
|
140
|
+
!source.includes('Job') &&
|
|
141
|
+
!source.includes('Message'))) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
81
144
|
const code = stripCommentsAndStrings(source);
|
|
82
145
|
for (const match of code.matchAll(/\b(?:Command|Cli|Job|Message)\b[\s\S]*?handler/g)) {
|
|
83
146
|
const localSource = code.slice(Math.max(0, match.index - 160), match.index + 160);
|
|
@@ -88,6 +151,12 @@ function hasCommandHandlerWithoutSchema(source) {
|
|
|
88
151
|
return false;
|
|
89
152
|
}
|
|
90
153
|
function hasUnscopedResourceLoop(source) {
|
|
154
|
+
if (!source.includes('open') &&
|
|
155
|
+
!source.includes('connect') &&
|
|
156
|
+
!source.includes('subscribe') &&
|
|
157
|
+
!source.includes('listen')) {
|
|
158
|
+
return false;
|
|
159
|
+
}
|
|
91
160
|
const code = stripCommentsAndStrings(source);
|
|
92
161
|
for (const match of code.matchAll(/\b(?:open|connect|subscribe|listen)\w*\s*\(/g)) {
|
|
93
162
|
const prefix = code.slice(Math.max(0, match.index - 180), match.index);
|
|
@@ -99,6 +168,13 @@ function hasUnscopedResourceLoop(source) {
|
|
|
99
168
|
return false;
|
|
100
169
|
}
|
|
101
170
|
function hasUnsafeResourceStream(source) {
|
|
171
|
+
if (!source.includes('Stream.') ||
|
|
172
|
+
(!source.includes('open') &&
|
|
173
|
+
!source.includes('connect') &&
|
|
174
|
+
!source.includes('subscribe') &&
|
|
175
|
+
!source.includes('listen'))) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
102
178
|
const code = stripCommentsAndStrings(source);
|
|
103
179
|
for (const match of code.matchAll(/\b(?:open|connect|subscribe|listen)\w*\s*\(/g)) {
|
|
104
180
|
const prefix = code.slice(Math.max(0, match.index - 180), match.index);
|
|
@@ -110,12 +186,21 @@ function hasUnsafeResourceStream(source) {
|
|
|
110
186
|
return false;
|
|
111
187
|
}
|
|
112
188
|
function hasLiveTestService(source) {
|
|
189
|
+
if (!source.includes('Live') && !source.includes('Layer.live')) {
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
113
192
|
return /(?:\bLive\b|[A-Za-z_$][\w$]*Live\b|Layer\.live)/.test(stripCommentsAndStrings(source));
|
|
114
193
|
}
|
|
115
194
|
function hasRealTestService(source) {
|
|
195
|
+
if (!source.includes('real')) {
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
116
198
|
return /\breal[A-Z]/.test(stripCommentsAndStrings(source));
|
|
117
199
|
}
|
|
118
200
|
function hasDuplicateLayerInstance(source) {
|
|
201
|
+
if (!source.includes('Layer.')) {
|
|
202
|
+
return false;
|
|
203
|
+
}
|
|
119
204
|
const code = stripCommentsAndStrings(source);
|
|
120
205
|
const services = new Set();
|
|
121
206
|
for (const match of code.matchAll(/Layer\.(?:succeed|sync|effect|scoped|fromEffect|fromFunction)\s*\(\s*([A-Za-z_$][\w$]*)\b/g)) {
|
|
@@ -128,9 +213,16 @@ function hasDuplicateLayerInstance(source) {
|
|
|
128
213
|
return false;
|
|
129
214
|
}
|
|
130
215
|
function localEffectCallSegment(source, targetIndex) {
|
|
216
|
+
const indexCache = sourceIndexCache(localEffectCallSegmentCache, source);
|
|
217
|
+
const cachedSegment = indexCache.get(targetIndex);
|
|
218
|
+
if (cachedSegment !== undefined) {
|
|
219
|
+
return cachedSegment;
|
|
220
|
+
}
|
|
131
221
|
const openParenIndex = source.indexOf('(', targetIndex);
|
|
132
222
|
if (openParenIndex === -1) {
|
|
133
|
-
|
|
223
|
+
const segment = source.slice(targetIndex, targetIndex + 160);
|
|
224
|
+
indexCache.set(targetIndex, segment);
|
|
225
|
+
return segment;
|
|
134
226
|
}
|
|
135
227
|
let endIndex = findBalancedCallEnd(source, openParenIndex) + 1;
|
|
136
228
|
const afterCall = source.slice(endIndex);
|
|
@@ -139,12 +231,17 @@ function localEffectCallSegment(source, targetIndex) {
|
|
|
139
231
|
const pipeOpenIndex = endIndex + pipeMatch[0].lastIndexOf('(');
|
|
140
232
|
endIndex = findBalancedCallEnd(source, pipeOpenIndex) + 1;
|
|
141
233
|
}
|
|
142
|
-
|
|
234
|
+
const segment = source.slice(targetIndex, endIndex);
|
|
235
|
+
indexCache.set(targetIndex, segment);
|
|
236
|
+
return segment;
|
|
143
237
|
}
|
|
144
238
|
function localStatementSegment(source, targetIndex) {
|
|
145
239
|
return source.slice(targetIndex, findStatementEnd(source, targetIndex) + 1);
|
|
146
240
|
}
|
|
147
241
|
function hasOutputBoundaryWithoutSchema(source) {
|
|
242
|
+
if (!source.includes('Response.json') && !source.includes('return json')) {
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
148
245
|
const code = stripCommentsAndStrings(source);
|
|
149
246
|
for (const match of code.matchAll(/\breturn\s+(?:Response\.json|json)\s*\(/g)) {
|
|
150
247
|
const callOffset = match[0].search(/(?:Response\.json|json)\s*\(/);
|
|
@@ -156,6 +253,9 @@ function hasOutputBoundaryWithoutSchema(source) {
|
|
|
156
253
|
return false;
|
|
157
254
|
}
|
|
158
255
|
function hasHttpClientResponseWithoutSchema(source) {
|
|
256
|
+
if (!source.includes('HttpClient.') || !source.includes('response.json')) {
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
159
259
|
const code = stripCommentsAndStrings(source);
|
|
160
260
|
for (const match of code.matchAll(/\bHttpClient\.[\s\S]*?\bresponse\.json\s*\(/g)) {
|
|
161
261
|
const segment = localStatementSegment(source, match.index);
|
|
@@ -166,6 +266,9 @@ function hasHttpClientResponseWithoutSchema(source) {
|
|
|
166
266
|
return false;
|
|
167
267
|
}
|
|
168
268
|
function hasSharedResourceForEachWithoutSemaphore(source) {
|
|
269
|
+
if (!source.includes('Effect.forEach')) {
|
|
270
|
+
return false;
|
|
271
|
+
}
|
|
169
272
|
const code = stripCommentsAndStrings(source);
|
|
170
273
|
for (const match of code.matchAll(/\bEffect\.forEach\s*\(/g)) {
|
|
171
274
|
const localStart = Math.max(0, match.index - 180);
|
|
@@ -178,6 +281,9 @@ function hasSharedResourceForEachWithoutSemaphore(source) {
|
|
|
178
281
|
return false;
|
|
179
282
|
}
|
|
180
283
|
function hasEnsuringCleanupWithoutOnExit(source) {
|
|
284
|
+
if (!source.includes('Effect.ensuring') || !source.includes('cleanup')) {
|
|
285
|
+
return false;
|
|
286
|
+
}
|
|
181
287
|
const code = stripCommentsAndStrings(source);
|
|
182
288
|
for (const match of code.matchAll(/\bEffect\.ensuring\s*\(/g)) {
|
|
183
289
|
const segment = localEffectCallSegment(source, match.index);
|
|
@@ -188,6 +294,9 @@ function hasEnsuringCleanupWithoutOnExit(source) {
|
|
|
188
294
|
return false;
|
|
189
295
|
}
|
|
190
296
|
function hasUnterminatedLongRunningStream(source) {
|
|
297
|
+
if (!source.includes('Stream.')) {
|
|
298
|
+
return false;
|
|
299
|
+
}
|
|
191
300
|
const code = stripCommentsAndStrings(source);
|
|
192
301
|
for (const match of code.matchAll(/\bStream\.(?:repeat|forever|async|fromQueue)\s*\(/g)) {
|
|
193
302
|
const segment = localEffectCallSegment(source, match.index);
|
|
@@ -198,6 +307,9 @@ function hasUnterminatedLongRunningStream(source) {
|
|
|
198
307
|
return false;
|
|
199
308
|
}
|
|
200
309
|
function hasAsyncPushWithoutBuffer(source) {
|
|
310
|
+
if (!source.includes('Stream.asyncPush')) {
|
|
311
|
+
return false;
|
|
312
|
+
}
|
|
201
313
|
const code = stripCommentsAndStrings(source);
|
|
202
314
|
for (const match of code.matchAll(/\bStream\.asyncPush\s*\(/g)) {
|
|
203
315
|
const segment = localEffectCallSegment(source, match.index);
|
|
@@ -208,6 +320,9 @@ function hasAsyncPushWithoutBuffer(source) {
|
|
|
208
320
|
return false;
|
|
209
321
|
}
|
|
210
322
|
function hasUnbatchedResolver(source) {
|
|
323
|
+
if (!source.includes('RequestResolver.make')) {
|
|
324
|
+
return false;
|
|
325
|
+
}
|
|
211
326
|
const code = stripCommentsAndStrings(source);
|
|
212
327
|
for (const match of code.matchAll(/\bRequestResolver\.make\s*\(/g)) {
|
|
213
328
|
const segment = localEffectCallSegment(source, match.index);
|
|
@@ -218,6 +333,9 @@ function hasUnbatchedResolver(source) {
|
|
|
218
333
|
return false;
|
|
219
334
|
}
|
|
220
335
|
function hasNPlusOneWithoutBatchedResolver(source) {
|
|
336
|
+
if (!source.includes('Effect.forEach')) {
|
|
337
|
+
return false;
|
|
338
|
+
}
|
|
221
339
|
const code = stripCommentsAndStrings(source);
|
|
222
340
|
for (const match of code.matchAll(/\bEffect\.forEach\s*\(/g)) {
|
|
223
341
|
const segment = localEffectCallSegment(source, match.index);
|
|
@@ -229,6 +347,14 @@ function hasNPlusOneWithoutBatchedResolver(source) {
|
|
|
229
347
|
return false;
|
|
230
348
|
}
|
|
231
349
|
function enclosingEffectWrapperSegment(source, targetIndex) {
|
|
350
|
+
const indexCache = sourceIndexCache(enclosingEffectWrapperSegmentCache, source);
|
|
351
|
+
if (indexCache.has(targetIndex)) {
|
|
352
|
+
return indexCache.get(targetIndex);
|
|
353
|
+
}
|
|
354
|
+
if (!source.includes('Effect.promise') && !source.includes('Effect.tryPromise')) {
|
|
355
|
+
indexCache.set(targetIndex, undefined);
|
|
356
|
+
return undefined;
|
|
357
|
+
}
|
|
232
358
|
for (const match of source.matchAll(/\bEffect\.(?:promise|tryPromise)\s*\(/g)) {
|
|
233
359
|
const openParenIndex = source.indexOf('(', match.index);
|
|
234
360
|
if (openParenIndex === -1 || openParenIndex > targetIndex) {
|
|
@@ -236,9 +362,12 @@ function enclosingEffectWrapperSegment(source, targetIndex) {
|
|
|
236
362
|
}
|
|
237
363
|
const endIndex = findBalancedCallEnd(source, openParenIndex);
|
|
238
364
|
if (targetIndex <= endIndex) {
|
|
239
|
-
|
|
365
|
+
const segment = localEffectCallSegment(source, match.index);
|
|
366
|
+
indexCache.set(targetIndex, segment);
|
|
367
|
+
return segment;
|
|
240
368
|
}
|
|
241
369
|
}
|
|
370
|
+
indexCache.set(targetIndex, undefined);
|
|
242
371
|
return undefined;
|
|
243
372
|
}
|
|
244
373
|
function hasTopLevelPipeOperator(segment, operatorName) {
|
|
@@ -251,13 +380,31 @@ function hasTopLevelPipeOperator(segment, operatorName) {
|
|
|
251
380
|
return false;
|
|
252
381
|
}
|
|
253
382
|
const pipeBody = segment.slice(openParenIndex + 1, findBalancedCallEnd(segment, openParenIndex));
|
|
254
|
-
const
|
|
255
|
-
|
|
383
|
+
const operatorNeedle = `Effect.${operatorName}`;
|
|
384
|
+
let operatorIndex = pipeBody.indexOf(operatorNeedle);
|
|
385
|
+
while (operatorIndex !== -1) {
|
|
386
|
+
let previousIndex = operatorIndex - 1;
|
|
387
|
+
while (previousIndex >= 0 && isAsciiWhitespace(pipeBody[previousIndex])) {
|
|
388
|
+
previousIndex--;
|
|
389
|
+
}
|
|
390
|
+
const previousCharacter = pipeBody[previousIndex];
|
|
391
|
+
const nextCharacter = pipeBody[operatorIndex + operatorNeedle.length];
|
|
392
|
+
if ((previousIndex < 0 || previousCharacter === ',') && !isIdentifierPart(nextCharacter)) {
|
|
393
|
+
return true;
|
|
394
|
+
}
|
|
395
|
+
operatorIndex = pipeBody.indexOf(operatorNeedle, operatorIndex + operatorNeedle.length);
|
|
396
|
+
}
|
|
397
|
+
return false;
|
|
256
398
|
}
|
|
257
399
|
function hasExternalEffectWithoutTimeout(source, options = { allowFetch: true }) {
|
|
258
|
-
|
|
400
|
+
if (!source.includes('HttpClient.') &&
|
|
401
|
+
!source.includes('fetch') &&
|
|
402
|
+
!source.includes('FileSystem.') &&
|
|
403
|
+
!source.includes('SqlClient.')) {
|
|
404
|
+
return false;
|
|
405
|
+
}
|
|
259
406
|
const code = stripCommentsAndStrings(source);
|
|
260
|
-
for (const match of code.matchAll(
|
|
407
|
+
for (const match of code.matchAll(EXTERNAL_CALL_PATTERN)) {
|
|
261
408
|
const enclosingWrapper = enclosingEffectWrapperSegment(code, match.index);
|
|
262
409
|
if (match[0].startsWith('fetch') && (!enclosingWrapper || !options.allowFetch)) {
|
|
263
410
|
continue;
|
|
@@ -271,9 +418,14 @@ function hasExternalEffectWithoutTimeout(source, options = { allowFetch: true })
|
|
|
271
418
|
return false;
|
|
272
419
|
}
|
|
273
420
|
function hasExternalEffectWithoutSpan(source, options = { allowFetch: true }) {
|
|
274
|
-
|
|
421
|
+
if (!source.includes('HttpClient.') &&
|
|
422
|
+
!source.includes('fetch') &&
|
|
423
|
+
!source.includes('FileSystem.') &&
|
|
424
|
+
!source.includes('SqlClient.')) {
|
|
425
|
+
return false;
|
|
426
|
+
}
|
|
275
427
|
const code = stripCommentsAndStrings(source);
|
|
276
|
-
for (const match of code.matchAll(
|
|
428
|
+
for (const match of code.matchAll(EXTERNAL_CALL_PATTERN)) {
|
|
277
429
|
const enclosingWrapper = enclosingEffectWrapperSegment(source, match.index);
|
|
278
430
|
if (match[0].startsWith('fetch') && (!enclosingWrapper || !options.allowFetch)) {
|
|
279
431
|
continue;
|
|
@@ -287,9 +439,15 @@ function hasExternalEffectWithoutSpan(source, options = { allowFetch: true }) {
|
|
|
287
439
|
return false;
|
|
288
440
|
}
|
|
289
441
|
function hasIdempotentExternalEffectWithoutRetry(source, options = { allowFetch: true }) {
|
|
290
|
-
|
|
442
|
+
if (!source.includes('HttpClient.') &&
|
|
443
|
+
!source.includes('fetch') &&
|
|
444
|
+
!source.includes('find') &&
|
|
445
|
+
!source.includes('lookup') &&
|
|
446
|
+
!source.includes('read')) {
|
|
447
|
+
return false;
|
|
448
|
+
}
|
|
291
449
|
const code = stripCommentsAndStrings(source);
|
|
292
|
-
for (const match of code.matchAll(
|
|
450
|
+
for (const match of code.matchAll(IDEMPOTENT_EXTERNAL_CALL_PATTERN)) {
|
|
293
451
|
const enclosingWrapper = enclosingEffectWrapperSegment(code, match.index);
|
|
294
452
|
const rawEnclosingWrapper = enclosingEffectWrapperSegment(source, match.index);
|
|
295
453
|
if (match[0].startsWith('fetch') && (!enclosingWrapper || !options.allowFetch)) {
|
|
@@ -309,13 +467,24 @@ function hasIdempotentExternalEffectWithoutRetry(source, options = { allowFetch:
|
|
|
309
467
|
return false;
|
|
310
468
|
}
|
|
311
469
|
function hasUnprovidedServiceInEffectTest(source) {
|
|
470
|
+
if (!source.includes('Service') && !source.includes('Repo') && !source.includes('Client')) {
|
|
471
|
+
return false;
|
|
472
|
+
}
|
|
312
473
|
return testSegments(source).some((segment) => /yield\*\s+[A-Z][\w$]*(?:Service|Repo|Client)\b/.test(segment) &&
|
|
313
474
|
!/\b(?:Effect\.)?provide[A-Za-z_$]*\s*\(/.test(segment));
|
|
314
475
|
}
|
|
315
476
|
function hasTimeCodeWithoutTestClock(source) {
|
|
477
|
+
if (!source.includes('Effect.timeout') &&
|
|
478
|
+
!source.includes('Effect.delay') &&
|
|
479
|
+
!source.includes('Clock.')) {
|
|
480
|
+
return false;
|
|
481
|
+
}
|
|
316
482
|
return testSegments(source).some((segment) => /Effect\.(?:timeout|delay)|Clock\./.test(segment) && !/TestClock/.test(segment));
|
|
317
483
|
}
|
|
318
484
|
function hasMutableStateWithoutRef(source) {
|
|
485
|
+
if (!source.includes('let ')) {
|
|
486
|
+
return false;
|
|
487
|
+
}
|
|
319
488
|
if (!hasEffectSignal(source)) {
|
|
320
489
|
return false;
|
|
321
490
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect-strict-helpers.js","sourceRoot":"","sources":["../../src/rules/effect-strict-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"effect-strict-helpers.js","sourceRoot":"","sources":["../../src/rules/effect-strict-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect-strict.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"effect-strict.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict.ts"],"names":[],"mappings":"AA45BA,QAAA,MAAM,iBAAiB,4DAAoE,CAAC;AAE5F,eAAe,iBAAiB,CAAC"}
|