Skip to content

Commit 2a39f71

Browse files
committed
Replace dpdm with Oxlint
1 parent 74ababc commit 2a39f71

5 files changed

Lines changed: 11 additions & 340 deletions

File tree

.taskfiles/frontend.yml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,6 @@ tasks:
261261
deps: [install]
262262
cmds:
263263
- task: lint:oxlint
264-
- task: lint:dpdm
265264
- task: lint:colors
266265
- task: lint:css
267266

@@ -296,14 +295,6 @@ tasks:
296295
cmds:
297296
- npx oxlint --config oxlint.config.ts --max-warnings=0
298297

299-
lint:dpdm:
300-
desc: "Run circular import linting"
301-
deps: [install]
302-
cmds:
303-
# Globs so dpdm walks the whole tree. dpdm expands the braces itself, so this is
304-
# shell-agnostic. Covers the whole editor tree, including the portal layer.
305-
- npx dpdm "editor/src/**/*.{ts,tsx}" --circular --no-warning --no-tree --exit-code circular:1
306-
307298
lint:fix:
308299
desc: "Auto-fix lint issues"
309300
deps: [install]

frontend/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ All frontend commands are run from the repository root using [Task](https://task
66
- `task frontend:build` — production build
77
- `task frontend:test` — run tests
88
- `task frontend:test:watch` — run tests in watch mode
9-
- `task frontend:lint` — run oxlint + cycle detection
9+
- `task frontend:lint` — run linting
1010
- `task frontend:typecheck` — run TypeScript type checking
1111
- `task frontend:check` — run typecheck + lint + test
1212
- `task frontend:install` — install npm dependencies

frontend/oxlint.config.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ const noExplicitAnyExcludes = [
107107
];
108108

109109
export default defineConfig({
110-
plugins: ["typescript"],
110+
plugins: ["typescript", "import"],
111111
categories: {
112112
correctness: "off",
113113
},
@@ -387,5 +387,14 @@ export default defineConfig({
387387
"typescript/no-explicit-any": "error",
388388
},
389389
},
390+
{
391+
// Circular-import detection across the editor app source (the import
392+
// plugin resolves @app/* and the other tsconfig path aliases). Replaces
393+
// the previous dpdm pass.
394+
files: ["editor/src/**/*.{ts,tsx}"],
395+
rules: {
396+
"import/no-cycle": "error",
397+
},
398+
},
390399
],
391400
});

0 commit comments

Comments
 (0)