diff --git a/.nvmrc b/.nvmrc index 248216ad..3fe3b157 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -24.12.0 +24.13.0 diff --git a/.oxlintrc.json b/.oxlintrc.json new file mode 100644 index 00000000..1383418a --- /dev/null +++ b/.oxlintrc.json @@ -0,0 +1,14 @@ +{ + "$schema": "./node_modules/oxlint/configuration_schema.json", + "extends": [ + "./node_modules/eslint-config-seekingalpha-base/oxlint-config.json" + ], + "env": { + "builtin": true + }, + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-default-export": "off", + "import/extensions": "off" + } +} diff --git a/eslint-configs/eslint-config-seekingalpha-node/rules/eslint-plugin-n/index.js b/eslint-configs/eslint-config-seekingalpha-node/rules/eslint-plugin-n/index.js index 3767c242..bf5537ba 100644 --- a/eslint-configs/eslint-config-seekingalpha-node/rules/eslint-plugin-n/index.js +++ b/eslint-configs/eslint-config-seekingalpha-node/rules/eslint-plugin-n/index.js @@ -2,7 +2,7 @@ import nodePlugin from 'eslint-plugin-n'; export default { plugins: { - // eslint-disable-next-line id-length + // oxlint-disable-next-line id-length n: nodePlugin, }, rules: { diff --git a/eslint-configs/eslint-config-seekingalpha-typescript/CHANGELOG.md b/eslint-configs/eslint-config-seekingalpha-typescript/CHANGELOG.md index 8e28d64c..1e161e3d 100644 --- a/eslint-configs/eslint-config-seekingalpha-typescript/CHANGELOG.md +++ b/eslint-configs/eslint-config-seekingalpha-typescript/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +## 8.57.0 - 2026-01-28 + +- [deps] upgrade `typescript-eslint` to version `8.54.0` + ## 8.56.0 - 2026-01-13 - [deps] upgrade `typescript-eslint` to version `8.53.0` diff --git a/eslint-configs/eslint-config-seekingalpha-typescript/README.md b/eslint-configs/eslint-config-seekingalpha-typescript/README.md index 0fddbb82..bd612fcc 100644 --- a/eslint-configs/eslint-config-seekingalpha-typescript/README.md +++ b/eslint-configs/eslint-config-seekingalpha-typescript/README.md @@ -6,7 +6,7 @@ This package includes the shareable ESLint config used by [SeekingAlpha](https:/ Install ESLint and all [Peer Dependencies](https://nodejs.org/en/blog/npm/peer-dependencies/): - npm install eslint@9.39.2 typescript-eslint@8.53.0 --save-dev + npm install eslint@9.39.2 typescript-eslint@8.54.0 --save-dev Install SeekingAlpha shareable ESLint: diff --git a/eslint-configs/eslint-config-seekingalpha-typescript/package.json b/eslint-configs/eslint-config-seekingalpha-typescript/package.json index 10dff75a..3b293abf 100644 --- a/eslint-configs/eslint-config-seekingalpha-typescript/package.json +++ b/eslint-configs/eslint-config-seekingalpha-typescript/package.json @@ -1,6 +1,6 @@ { "name": "eslint-config-seekingalpha-typescript", - "version": "8.56.0", + "version": "8.57.0", "description": "SeekingAlpha's sharable typescript ESLint config", "main": "index.js", "type": "module", @@ -39,11 +39,11 @@ }, "peerDependencies": { "eslint": "9.39.2", - "typescript-eslint": "8.53.0" + "typescript-eslint": "8.54.0" }, "devDependencies": { "eslint": "9.39.2", "eslint-find-rules": "5.0.0", - "typescript-eslint": "8.53.0" + "typescript-eslint": "8.54.0" } } diff --git a/eslint.config.js b/eslint.config.js index d3535b98..273e6da7 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1,11 +1,11 @@ import { defineConfig } from 'eslint/config'; -import baseConfig from 'eslint-config-seekingalpha-base'; +import baseConfig from 'eslint-config-seekingalpha-base/oxc.js'; import nodeConfig from 'eslint-config-seekingalpha-node'; export default defineConfig([ { linterOptions: { - reportUnusedDisableDirectives: 'warn', + reportUnusedDisableDirectives: 'error', reportUnusedInlineConfigs: 'error', }, }, @@ -20,10 +20,7 @@ export default defineConfig([ rules: { ...baseConfig.rules, ...nodeConfig.rules, - 'import/no-anonymous-default-export': 'off', - 'import/no-default-export': 'off', 'import/no-unresolved': 'off', - 'import/extensions': 'off', 'n/file-extension-in-import': 'off', 'n/no-missing-import': 'off', }, diff --git a/package.json b/package.json index 980b25a0..d1bc3424 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1", - "lint": "eslint .", + "lint": "oxlint && eslint .", "prepare": "node .husky/install.js", "prettier:check": "prettier --no-editorconfig --check .", "prettier:write": "prettier --no-editorconfig --write ." @@ -41,21 +41,22 @@ "*.{yml,yaml,md,mdx,html,json}": "prettier --write", "*.js": [ "prettier --write", + "oxlint", "eslint" ] }, "devDependencies": { "@seekingalpha/prettier-config-samw": "2.0.0", "eslint": "9.39.2", - "eslint-config-seekingalpha-base": "11.32.0", + "eslint-config-seekingalpha-base": "11.38.0", "eslint-config-seekingalpha-node": "9.31.0", - "eslint-plugin-array-func": "5.1.0", "eslint-plugin-import": "2.32.0", "eslint-plugin-n": "17.23.2", "eslint-plugin-promise": "7.2.1", "eslint-plugin-unicorn": "62.0.0", "husky": "9.1.7", "lint-staged": "16.2.7", - "prettier": "3.7.4" + "oxlint": "1.42.0", + "prettier": "3.8.1" } }