oxlint-plugin-effect 0.2.1 → 0.2.2

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.
@@ -4,10 +4,11 @@ import { effectNative } from "./effect-native.js";
4
4
  import { functional } from "./functional.js";
5
5
  import { strict } from "./strict.js";
6
6
  import { v3 } from "./v3.js";
7
+ import { v3Strict } from "./v3-strict.js";
7
8
 
8
9
  //#region src/presets/index.d.ts
9
10
  declare namespace index_d_exports {
10
- export { core, effectNative, full, functional, strict, v3 };
11
+ export { core, effectNative, full, functional, strict, v3, v3Strict };
11
12
  }
12
13
  //#endregion
13
- export { core, effectNative, full, functional, index_d_exports, strict, v3 };
14
+ export { core, effectNative, full, functional, index_d_exports, strict, v3, v3Strict };
@@ -5,6 +5,7 @@ import { effectNative } from "./effect-native.js";
5
5
  import { functional } from "./functional.js";
6
6
  import { strict } from "./strict.js";
7
7
  import { v3 } from "./v3.js";
8
+ import { v3Strict } from "./v3-strict.js";
8
9
  //#region src/presets/index.ts
9
10
  var presets_exports = /* @__PURE__ */ __exportAll({
10
11
  core: () => core,
@@ -12,7 +13,8 @@ var presets_exports = /* @__PURE__ */ __exportAll({
12
13
  full: () => full,
13
14
  functional: () => functional,
14
15
  strict: () => strict,
15
- v3: () => v3
16
+ v3: () => v3,
17
+ v3Strict: () => v3Strict
16
18
  });
17
19
  //#endregion
18
- export { core, effectNative, full, functional, presets_exports, strict, v3 };
20
+ export { core, effectNative, full, functional, presets_exports, strict, v3, v3Strict };
@@ -10,16 +10,13 @@ declare const strict: {
10
10
  readonly "effect/noEffectAsync": "error";
11
11
  readonly "effect/noEffectBind": "error";
12
12
  readonly "effect/noOptionAs": "error";
13
- readonly "effect/noRuntimeRunFork": "error";
14
13
  readonly "effect/noRunInEffectGen": "error";
15
- readonly "effect/noReturnNull": "error";
16
14
  readonly "effect/noSwitchStatement": "error";
17
15
  readonly "effect/noIfStatement": "error";
18
16
  readonly "effect/noTernary": "error";
19
17
  readonly "effect/noReturnInArrow": "error";
20
18
  readonly "effect/noStringSentinelConst": "error";
21
19
  readonly "effect/noArrowLadder": "error";
22
- readonly "effect/noAsyncFunction": "error";
23
20
  readonly "effect/noNodeBuiltinImport": "error";
24
21
  readonly "effect/noNestedPipe": "error";
25
22
  readonly "effect/noNestedEffectGen": "error";
@@ -37,7 +34,6 @@ declare const strict: {
37
34
  readonly "effect/noEffectOrElseLadder": "error";
38
35
  readonly "effect/noFromNullableCoalesce": "error";
39
36
  readonly "effect/noUnnecessaryArrowBlock": "error";
40
- readonly "effect/noEffectGenAdapter": "error";
41
37
  readonly "effect/noEffectSyncConsole": "error";
42
38
  readonly "effect/noEffectTypeAlias": "error";
43
39
  readonly "effect/noEffectWrapperAlias": "error";
@@ -47,7 +43,6 @@ declare const strict: {
47
43
  readonly "effect/noOptionBooleanNormalization": "error";
48
44
  readonly "effect/noEffectSyncWrapper": "error";
49
45
  readonly "effect/noMatchEffectBranch": "error";
50
- readonly "effect/noCatchAllToMapError": "error";
51
46
  readonly "effect/noUnnecessaryPipeChain": "error";
52
47
  readonly "effect/noMultipleEffectProvide": "error";
53
48
  readonly "effect/noSchemaUnionOfLiterals": "error";
@@ -10,16 +10,13 @@ const strict = {
10
10
  "effect/noEffectAsync": "error",
11
11
  "effect/noEffectBind": "error",
12
12
  "effect/noOptionAs": "error",
13
- "effect/noRuntimeRunFork": "error",
14
13
  "effect/noRunInEffectGen": "error",
15
- "effect/noReturnNull": "error",
16
14
  "effect/noSwitchStatement": "error",
17
15
  "effect/noIfStatement": "error",
18
16
  "effect/noTernary": "error",
19
17
  "effect/noReturnInArrow": "error",
20
18
  "effect/noStringSentinelConst": "error",
21
19
  "effect/noArrowLadder": "error",
22
- "effect/noAsyncFunction": "error",
23
20
  "effect/noNodeBuiltinImport": "error",
24
21
  "effect/noNestedPipe": "error",
25
22
  "effect/noNestedEffectGen": "error",
@@ -37,7 +34,6 @@ const strict = {
37
34
  "effect/noEffectOrElseLadder": "error",
38
35
  "effect/noFromNullableCoalesce": "error",
39
36
  "effect/noUnnecessaryArrowBlock": "error",
40
- "effect/noEffectGenAdapter": "error",
41
37
  "effect/noEffectSyncConsole": "error",
42
38
  "effect/noEffectTypeAlias": "error",
43
39
  "effect/noEffectWrapperAlias": "error",
@@ -47,7 +43,6 @@ const strict = {
47
43
  "effect/noOptionBooleanNormalization": "error",
48
44
  "effect/noEffectSyncWrapper": "error",
49
45
  "effect/noMatchEffectBranch": "error",
50
- "effect/noCatchAllToMapError": "error",
51
46
  "effect/noUnnecessaryPipeChain": "error",
52
47
  "effect/noMultipleEffectProvide": "error",
53
48
  "effect/noSchemaUnionOfLiterals": "error",
@@ -0,0 +1,16 @@
1
+ //#region src/presets/v3-strict.d.ts
2
+ /**
3
+ * v3Strict preset — v3-only rules at error severity.
4
+ *
5
+ * Layer on top of `strict` when linting a v3 project with zero tolerance:
6
+ * ```ts
7
+ * rules: { ...strict, ...v3Strict }
8
+ * ```
9
+ */
10
+ declare const v3Strict: {
11
+ readonly "effect/noCatchAllToMapError": "error";
12
+ readonly "effect/noEffectGenAdapter": "error";
13
+ readonly "effect/noRuntimeRunFork": "error";
14
+ };
15
+ //#endregion
16
+ export { v3Strict };
@@ -0,0 +1,16 @@
1
+ //#region src/presets/v3-strict.ts
2
+ /**
3
+ * v3Strict preset — v3-only rules at error severity.
4
+ *
5
+ * Layer on top of `strict` when linting a v3 project with zero tolerance:
6
+ * ```ts
7
+ * rules: { ...strict, ...v3Strict }
8
+ * ```
9
+ */
10
+ const v3Strict = {
11
+ "effect/noCatchAllToMapError": "error",
12
+ "effect/noEffectGenAdapter": "error",
13
+ "effect/noRuntimeRunFork": "error"
14
+ };
15
+ //#endregion
16
+ export { v3Strict };
@@ -1,15 +1,18 @@
1
1
  //#region src/presets/v3.d.ts
2
2
  /**
3
- * v3 preset — rules that only apply to Effect v3 codebases.
3
+ * v3 preset — rules that only apply to Effect v3 codebases, as warnings.
4
4
  *
5
- * Layer on top of `core`, `full`, or `strict` when linting a v3 project.
6
- * These rules target v3-only APIs (Effect.gen adapter, Runtime.runFork,
7
- * catchAll → mapError patterns) that are absent or changed in v4.
5
+ * Layer on top of `core` or `full` when linting a v3 project:
6
+ * ```ts
7
+ * rules: { ...core, ...v3 }
8
+ * ```
9
+ *
10
+ * Pair with `v3Strict` for zero-tolerance v3 linting.
8
11
  */
9
12
  declare const v3: {
10
- readonly "effect/noCatchAllToMapError": "error";
11
- readonly "effect/noEffectGenAdapter": "error";
12
- readonly "effect/noRuntimeRunFork": "error";
13
+ readonly "effect/noCatchAllToMapError": "warn";
14
+ readonly "effect/noEffectGenAdapter": "warn";
15
+ readonly "effect/noRuntimeRunFork": "warn";
13
16
  };
14
17
  //#endregion
15
18
  export { v3 };
@@ -1,15 +1,18 @@
1
1
  //#region src/presets/v3.ts
2
2
  /**
3
- * v3 preset — rules that only apply to Effect v3 codebases.
3
+ * v3 preset — rules that only apply to Effect v3 codebases, as warnings.
4
4
  *
5
- * Layer on top of `core`, `full`, or `strict` when linting a v3 project.
6
- * These rules target v3-only APIs (Effect.gen adapter, Runtime.runFork,
7
- * catchAll → mapError patterns) that are absent or changed in v4.
5
+ * Layer on top of `core` or `full` when linting a v3 project:
6
+ * ```ts
7
+ * rules: { ...core, ...v3 }
8
+ * ```
9
+ *
10
+ * Pair with `v3Strict` for zero-tolerance v3 linting.
8
11
  */
9
12
  const v3 = {
10
- "effect/noCatchAllToMapError": "error",
11
- "effect/noEffectGenAdapter": "error",
12
- "effect/noRuntimeRunFork": "error"
13
+ "effect/noCatchAllToMapError": "warn",
14
+ "effect/noEffectGenAdapter": "warn",
15
+ "effect/noRuntimeRunFork": "warn"
13
16
  };
14
17
  //#endregion
15
18
  export { v3 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oxlint-plugin-effect",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "type": "module",
5
5
  "description": "oxlint plugin with Effect-specific lint rules",
6
6
  "license": "MIT",