@systemfsoftware/oxlint-config-dmmf 2.0.0 → 4.0.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.
package/CHANGELOG.md CHANGED
@@ -1,46 +1,5 @@
1
1
  # @systemfsoftware/oxlint-config-dmmf
2
2
 
3
- ## 2.0.0
3
+ # @systemfsoftware/oxlint-config-dmmf@4.0.2
4
4
 
5
- ### Major Changes
6
-
7
- - Require `effect` `^4` (stable 4.0.0). Release candidates are no longer supported: imports follow 4.0.0's module layout (`effect/http`, `effect/rpc`, `effect/http-api`, `effect/cluster`, `effect/process`, `effect/socket`, `effect/persistence`, `effect/reactivity`, `effect/encoding`, `effect/Arbitrary`), which does not exist in any 4.0.0 RC.
8
-
9
- ### Patch Changes
10
-
11
- - Updated dependencies:
12
- - @systemfsoftware/oxlint-plugin-dmmf-workflow@7.0.0
13
- - @systemfsoftware/oxlint-plugin-effect-schema@6.0.0
14
-
15
- ## 1.3.0
16
-
17
- ### Minor Changes
18
-
19
- - The config now enables `@systemfsoftware/effect-schema/schema-file-imports-pure-modules-only`: a schema file may value-import only pure modules, other schema files and `@systemfsoftware/*` packages. A decision may now call operations imported from a schema file. Move a reported import's code into a schema file, or out to the shell that calls it.
20
-
21
- ## 1.2.0
22
-
23
- ### Minor Changes
24
-
25
- - The config now enables `@systemfsoftware/effect-schema/tagged-error-requires-message`: a `Schema.TaggedError` class must declare a `message` field or a `message` getter. Add one to any class it reports.
26
-
27
- ## 1.1.2
28
-
29
- ### Patch Changes
30
-
31
- - Update peer and runtime dependency on `effect` and companion packages to `4.0.0-rc.117`.
32
-
33
- ## 1.1.1
34
-
35
- ### Patch Changes
36
-
37
- - Updated dependencies:
38
- - @systemfsoftware/oxlint-plugin-dmmf-workflow@6.0.0
39
-
40
- ## 1.1.0
41
-
42
- ### Minor Changes
43
-
44
- - Publish standalone domain-aligned oxlint plugins and shareable configurations for Effect Schema, DMMF workflows, Effect Platform runtime entrypoints, test discipline, and Cell Architecture.
45
-
46
- Consolidates and supersedes the 12 retired legacy packages (`@systemfsoftware/all`, `@systemfsoftware/oxlint-config`, `@systemfsoftware/oxlint-plugin`, `@systemfsoftware/oxlint-plugin-recommended`, `@systemfsoftware/oxlint-plugin-effect-dmmf`, `@systemfsoftware/oxlint-plugin-effect-native`, `@systemfsoftware/oxlint-plugin-effect-entrypoint`, `@systemfsoftware/oxlint-plugin-effect-workflow`, `@systemfsoftware/oxlint-plugin-property-testing`, `@systemfsoftware/oxlint-plugin-structure`, `@systemfsoftware/oxlint-plugin-tag-discipline`, `@systemfsoftware/oxlint-plugin-test-hygiene`, `@systemfsoftware/oxlint-plugin-test-placement`).
5
+ The oxlint configs and plugins now require oxlint ~1.93.0 and oxlint-tsgolint 7.0.2006 (and @effect/tsgo ^0.69.0 where they depend on it). The other packages only build and lint with the new tools; what they publish is unchanged.
package/README.md ADDED
@@ -0,0 +1,47 @@
1
+ # @systemfsoftware/oxlint-config-dmmf
2
+
3
+ Shareable Oxlint configuration for DMMF: pure workflows, Effect Schema laws, property testing, and bounded cyclomatic complexity.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pnpm add -D oxlint oxlint-tsgolint typescript effect @systemfsoftware/oxlint-config-dmmf
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```ts
14
+ // oxlint.config.ts
15
+ import dmmf from '@systemfsoftware/oxlint-config-dmmf'
16
+ import { defineConfig } from 'oxlint'
17
+
18
+ export default defineConfig({ extends: [dmmf] })
19
+ ```
20
+
21
+ ## Companion check: no inline suppressions
22
+
23
+ The preset sets its rules at `error`, but oxlint still obeys an `oxlint-disable` or `eslint-disable` comment, and TypeScript obeys `@ts-expect-error`, `@ts-ignore` and `@ts-nocheck`. A file can switch off the rules that grade it, and no oxlint rule can prevent that, because oxlint honours a disable directive even for the plugin rule that names it.
24
+
25
+ Pair the preset with the `no-inline-suppression` bin from `@systemfsoftware/oxlint-plugin-test-discipline`. It runs outside oxlint, reads no configuration, and fails on any comment that opens with one of these, in source and test files alike:
26
+
27
+ - `oxlint-disable`, `oxlint-disable-line`, `oxlint-disable-next-line`
28
+ - `eslint-disable`, `eslint-disable-line`, `eslint-disable-next-line`
29
+ - `@ts-expect-error`, `@ts-ignore`, `@ts-nocheck`
30
+
31
+ ```bash
32
+ pnpm add -D @systemfsoftware/oxlint-plugin-test-discipline
33
+ ```
34
+
35
+ ```json
36
+ {
37
+ "scripts": {
38
+ "lint": "oxlint . && no-inline-suppression"
39
+ }
40
+ }
41
+ ```
42
+
43
+ With no arguments it scans every git-tracked `.ts`, `.tsx`, `.mts`, `.cts`, `.js`, `.jsx`, `.mjs` and `.cjs` file under the working directory. It exits `0` when clean and `1` on any finding, printing each one as `file:line:column`.
44
+
45
+ ## License
46
+
47
+ [Apache-2.0](LICENSE)
package/dist/index.d.ts CHANGED
@@ -4,7 +4,6 @@ export declare const jsPlugins: readonly string[];
4
4
  export declare const plugins: NonNullable<OxlintConfig['plugins']>;
5
5
  export declare const options: NonNullable<OxlintConfig['options']>;
6
6
  export declare const rules: NonNullable<OxlintConfig['rules']>;
7
- export declare const ignorePatterns: readonly string[];
8
7
  export declare const overrides: NonNullable<OxlintConfig['overrides']>;
9
8
  declare const dmmf: OxlintConfig;
10
9
  //#endregion
package/dist/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ import { ignorePatterns } from "@systemfsoftware/oxlint-config-rule-authoring";
1
2
  import dmmfWorkflow from "@systemfsoftware/oxlint-plugin-dmmf-workflow";
2
3
  import effectSchema from "@systemfsoftware/oxlint-plugin-effect-schema";
3
4
  //#region src/index.ts
@@ -49,33 +50,6 @@ const rules = {
49
50
  ...effectSchema.configs.recommended.rules,
50
51
  ...dmmfWorkflow.configs.recommended.rules
51
52
  };
52
- const ignorePatterns = [
53
- "**/node_modules/**",
54
- "**/dist/**",
55
- "**/lib/**",
56
- "**/esm/**",
57
- "**/cjs/**",
58
- "**/build/**",
59
- "**/out/**",
60
- "**/.tshy/**",
61
- "**/.tshy-build/**",
62
- "**/.turbo/**",
63
- "**/coverage/**",
64
- "**/.stryker-tmp/**",
65
- "**/__pycache__/**",
66
- "**/*.d.ts",
67
- "**/*.tsbuildinfo",
68
- "**/*.mjs",
69
- "**/.claude/**",
70
- "**/.opencode/**",
71
- "**/.sisyphus/**",
72
- "**/.repo/**",
73
- "**/.worktrees/**",
74
- "**/.issues/**",
75
- "**/.papi/**",
76
- "**/submodules/**",
77
- "**/repos/**"
78
- ];
79
53
  const testFilePatterns = [
80
54
  "**/*.test.ts",
81
55
  "**/*.spec.ts",
@@ -109,4 +83,4 @@ const dmmf = {
109
83
  ignorePatterns: [...ignorePatterns]
110
84
  };
111
85
  //#endregion
112
- export { dmmf as default, ignorePatterns, jsPlugins, options, overrides, plugins, rules };
86
+ export { dmmf as default, jsPlugins, options, overrides, plugins, rules };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@systemfsoftware/oxlint-config-dmmf",
3
3
  "license": "Apache-2.0",
4
- "version": "2.0.0",
4
+ "version": "4.0.2",
5
5
  "author": "Ryan Lee <drdgvhbh@gmail.com>",
6
6
  "repository": {
7
7
  "type": "git",
@@ -33,28 +33,28 @@
33
33
  "./package.json": "./package.json"
34
34
  },
35
35
  "dependencies": {
36
- "@systemfsoftware/oxlint-plugin-dmmf-workflow": "^7.0.0",
37
- "@systemfsoftware/oxlint-plugin-effect-schema": "^6.0.0",
38
- "oxlint": "~1.82.0",
39
- "oxlint-tsgolint": "7.0.2001"
36
+ "@systemfsoftware/oxlint-config-rule-authoring": "^3.0.2",
37
+ "@systemfsoftware/oxlint-plugin-dmmf-workflow": "^7.1.5",
38
+ "@systemfsoftware/oxlint-plugin-effect-schema": "^6.0.6",
39
+ "oxlint": "~1.93.0",
40
+ "oxlint-tsgolint": "7.0.2006"
40
41
  },
41
42
  "devDependencies": {
42
43
  "@systemfsoftware/arethetypeswrong-cli": "^4.2.0",
43
- "@systemfsoftware/oxlint-config-rule-authoring": "^1.1.0",
44
- "@systemfsoftware/tsconfig": "^2.0.1",
45
- "@systemfsoftware/tsdown-config": "^0.1.0",
46
- "@types/node": "^26",
47
- "effect": "^4",
48
- "oxlint": "~1.82.0",
49
- "oxlint-tsgolint": "7.0.2001",
44
+ "@systemfsoftware/tsconfig": "^2.1.0",
45
+ "@systemfsoftware/tsdown-config": "^0.1.2",
46
+ "@types/node": "^26.6.5",
47
+ "effect": "^4.1.2",
48
+ "oxlint": "~1.93.0",
49
+ "oxlint-tsgolint": "7.0.2006",
50
50
  "rimraf": "^6.1.3",
51
51
  "tsdown": "^0.23.0",
52
- "typescript": "^7"
52
+ "typescript": "^7.0.2"
53
53
  },
54
54
  "peerDependencies": {
55
- "effect": "^4",
56
- "oxlint": "~1.82.0",
57
- "oxlint-tsgolint": "7.0.2001",
55
+ "effect": "^4.1.2",
56
+ "oxlint": "~1.93.0",
57
+ "oxlint-tsgolint": "7.0.2006",
58
58
  "typescript": ">=5.0.0"
59
59
  },
60
60
  "publishConfig": {