From a285d5953e36062af28db681e54e2f037cd0c020 Mon Sep 17 00:00:00 2001 From: Jens Simon <jens.simon80@googlemail.com> Date: Sun, 5 Jan 2025 00:07:31 +0100 Subject: [PATCH] chore(deps): use flat config --- .eslintignore | 1 - .gitignore | 3 ++ commitlint.config.js | 1 - commitlint.config.mjs | 1 + eslint.config.mjs | 36 +++++++++++----- package.json | 26 ++---------- tsconfig.json | 3 +- yarn.lock | 98 ++++++++++++++++++++++++++++++------------- 8 files changed, 102 insertions(+), 67 deletions(-) delete mode 100644 .eslintignore delete mode 100644 commitlint.config.js create mode 100644 commitlint.config.mjs diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 849ddff3..00000000 --- a/.eslintignore +++ /dev/null @@ -1 +0,0 @@ -dist/ diff --git a/.gitignore b/.gitignore index 267ffaf4..fc16a6a3 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,6 @@ dist/ !.yarn/releases !.yarn/sdks !.yarn/versions + +.yalc/ +yalc.lock diff --git a/commitlint.config.js b/commitlint.config.js deleted file mode 100644 index 4fedde6d..00000000 --- a/commitlint.config.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = { extends: ['@commitlint/config-conventional'] } diff --git a/commitlint.config.mjs b/commitlint.config.mjs new file mode 100644 index 00000000..7c4ff4d9 --- /dev/null +++ b/commitlint.config.mjs @@ -0,0 +1 @@ +export default { extends: ['@commitlint/config-conventional'] } diff --git a/eslint.config.mjs b/eslint.config.mjs index fb49fb1a..878fa894 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -2,6 +2,7 @@ import path from 'node:path' import { fileURLToPath } from 'node:url' import { FlatCompat } from '@eslint/eslintrc' +import { fixupConfigRules } from '@eslint/compat' // mimic CommonJS variables -- not needed if using CommonJS @@ -14,31 +15,44 @@ const compat = new FlatCompat({ export default [ - ...compat.config({ + { + ignores: [ + '.yarn/', + '.yalc/', + 'dist/', + ], + }, + + ...fixupConfigRules(compat.config({ extends: [ '@jenssimon/eslint-config-base', ], overrides: [ { - files: [ - 'commitlint.config.js', + parserOptions: { + project: './tsconfig.json', + }, + extends: [ + '@jenssimon/eslint-config-typescript', ], + files: ['*.ts'], rules: { - 'unicorn/prefer-module': 'off', + '@typescript-eslint/naming-convention': 'off', }, }, ], - }), + })).map((rule) => ({ + files: [ + '**/*.js', + '**/*.mjs', + '**/*.ts', + ], + ...rule, + })), { languageOptions: { ecmaVersion: 2022, sourceType: 'module', }, }, - { - ignores: [ - '.yarn/', - 'dist/', - ], - }, ] diff --git a/package.json b/package.json index 297e4bd9..d4a21371 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,8 @@ "devDependencies": { "@commitlint/cli": "^19.0.0", "@commitlint/config-conventional": "^19.0.0", + "@eslint/compat": "^1.2.4", + "@eslint/eslintrc": "^3.2.0", "@jenssimon/eslint-config-base": "^8.0.0", "@jenssimon/eslint-config-typescript": "^5.2.2", "@types/eslint": "^9.0.0", @@ -45,30 +47,8 @@ "peerDependencies": { "eslint": ">=1.0.0" }, - "eslintConfig": { - "parserOptions": { - "project": "./tsconfig.json" - }, - "extends": [ - "@jenssimon/base", - "@jenssimon/typescript" - ], - "rules": { - "@typescript-eslint/naming-convention": "off" - }, - "overrides": [ - { - "files": [ - "commitlint.config.js" - ], - "rules": { - "unicorn/prefer-module": "off" - } - } - ] - }, "scripts": { - "lint": "eslint", + "lint": "eslint ./", "build": "tsc", "prepublishOnly": "tsc", "commit": "cz", diff --git a/tsconfig.json b/tsconfig.json index 55aece76..93216dd5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,7 +12,8 @@ }, "include": [ "src/**/*.ts", - "commitlint.config.js" + "commitlint.config.mjs", + "eslint.config.mjs" ], "exclude": [ "node_modules", diff --git a/yarn.lock b/yarn.lock index d23ff051..3f276015 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1663,6 +1663,18 @@ __metadata: languageName: node linkType: hard +"@eslint/compat@npm:^1.2.4": + version: 1.2.4 + resolution: "@eslint/compat@npm:1.2.4" + peerDependencies: + eslint: ^9.10.0 + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/afea54435f0ae6b05f1b732132ae4a9d95ff106be0fc9988ac19f31037eb89b2a0e968212be4d2fbf757ff16923031825a27739d94a365559089dfd8269331e3 + languageName: node + linkType: hard + "@eslint/eslintrc@npm:^2.1.4": version: 2.1.4 resolution: "@eslint/eslintrc@npm:2.1.4" @@ -1680,6 +1692,23 @@ __metadata: languageName: node linkType: hard +"@eslint/eslintrc@npm:^3.2.0": + version: 3.2.0 + resolution: "@eslint/eslintrc@npm:3.2.0" + dependencies: + ajv: "npm:^6.12.4" + debug: "npm:^4.3.2" + espree: "npm:^10.0.1" + globals: "npm:^14.0.0" + ignore: "npm:^5.2.0" + import-fresh: "npm:^3.2.1" + js-yaml: "npm:^4.1.0" + minimatch: "npm:^3.1.2" + strip-json-comments: "npm:^3.1.1" + checksum: 10c0/43867a07ff9884d895d9855edba41acf325ef7664a8df41d957135a81a477ff4df4196f5f74dc3382627e5cc8b7ad6b815c2cea1b58f04a75aced7c43414ab8b + languageName: node + linkType: hard + "@eslint/js@npm:8.57.1": version: 8.57.1 resolution: "@eslint/js@npm:8.57.1" @@ -2843,6 +2872,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.14.0": + version: 8.14.0 + resolution: "acorn@npm:8.14.0" + bin: + acorn: bin/acorn + checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7 + languageName: node + linkType: hard + "acorn@npm:^8.4.1": version: 8.8.0 resolution: "acorn@npm:8.8.0" @@ -4450,6 +4488,8 @@ __metadata: dependencies: "@commitlint/cli": "npm:^19.0.0" "@commitlint/config-conventional": "npm:^19.0.0" + "@eslint/compat": "npm:^1.2.4" + "@eslint/eslintrc": "npm:^3.2.0" "@jenssimon/eslint-config-base": "npm:^8.0.0" "@jenssimon/eslint-config-typescript": "npm:^5.2.2" "@types/eslint": "npm:^9.0.0" @@ -4621,14 +4661,7 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.4.1": - version: 3.4.1 - resolution: "eslint-visitor-keys@npm:3.4.1" - checksum: 10c0/b4ebd35aed5426cd81b1fb92487825f1acf47a31e91d76597a3ee0664d69627140c4dafaf9b319cfeb1f48c1113a393e21a734c669e6565a72e6fcc311bd9911 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^3.4.3": +"eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 @@ -4642,6 +4675,13 @@ __metadata: languageName: node linkType: hard +"eslint-visitor-keys@npm:^4.2.0": + version: 4.2.0 + resolution: "eslint-visitor-keys@npm:4.2.0" + checksum: 10c0/2ed81c663b147ca6f578312919483eb040295bbab759e5a371953456c636c5b49a559883e2677112453728d66293c0a4c90ab11cab3428cf02a0236d2e738269 + languageName: node + linkType: hard + "eslint@npm:^8.52.0": version: 8.57.1 resolution: "eslint@npm:8.57.1" @@ -4690,6 +4730,17 @@ __metadata: languageName: node linkType: hard +"espree@npm:^10.0.1": + version: 10.3.0 + resolution: "espree@npm:10.3.0" + dependencies: + acorn: "npm:^8.14.0" + acorn-jsx: "npm:^5.3.2" + eslint-visitor-keys: "npm:^4.2.0" + checksum: 10c0/272beeaca70d0a1a047d61baff64db04664a33d7cfb5d144f84bc8a5c6194c6c8ebe9cc594093ca53add88baa23e59b01e69e8a0160ab32eac570482e165c462 + languageName: node + linkType: hard + "espree@npm:^10.2.0": version: 10.2.0 resolution: "espree@npm:10.2.0" @@ -4701,18 +4752,7 @@ __metadata: languageName: node linkType: hard -"espree@npm:^9.6.0": - version: 9.6.0 - resolution: "espree@npm:9.6.0" - dependencies: - acorn: "npm:^8.9.0" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10c0/f064a43bcf7f435d34e600c056320dde1c15b3eeb5da24e7585ed6cf83adcbbeafb4fa4d062ff14281b0d246b0a9645dd9d3796a638099f19595004eee4ac8be - languageName: node - linkType: hard - -"espree@npm:^9.6.1": +"espree@npm:^9.6.0, espree@npm:^9.6.1": version: 9.6.1 resolution: "espree@npm:9.6.1" dependencies: @@ -4723,16 +4763,7 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.2": - version: 1.4.2 - resolution: "esquery@npm:1.4.2" - dependencies: - estraverse: "npm:^5.1.0" - checksum: 10c0/b4109b3d8301e79bf0be10bbafe4ac9c5469274e61b07a16e7174e99efe815081bc18ac2e6d951d06df95004ac5772751db5d5b14483e51aefa96b018726117d - languageName: node - linkType: hard - -"esquery@npm:^1.6.0": +"esquery@npm:^1.4.2, esquery@npm:^1.6.0": version: 1.6.0 resolution: "esquery@npm:1.6.0" dependencies: @@ -5463,6 +5494,13 @@ __metadata: languageName: node linkType: hard +"globals@npm:^14.0.0": + version: 14.0.0 + resolution: "globals@npm:14.0.0" + checksum: 10c0/b96ff42620c9231ad468d4c58ff42afee7777ee1c963013ff8aabe095a451d0ceeb8dcd8ef4cbd64d2538cef45f787a78ba3a9574f4a634438963e334471302d + languageName: node + linkType: hard + "globals@npm:^15.9.0": version: 15.11.0 resolution: "globals@npm:15.11.0"