From 298f5a128319f1dac5dd590659dfa0a4a62e2892 Mon Sep 17 00:00:00 2001 From: siddie Date: Thu, 5 Mar 2026 19:19:35 +0000 Subject: [PATCH 1/6] bump dependencies to be able to bump node in web services --- package.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 0388b9b..9039243 100644 --- a/package.json +++ b/package.json @@ -17,12 +17,12 @@ "test": "jest" }, "devDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^8.0.0", - "eslint-plugin-eslint-plugin": "^5.0.0", - "husky": "^4.3.0", + "@typescript-eslint/parser": "^8.0.0", + "eslint": "^9.0.0", + "eslint-plugin-eslint-plugin": "^6.0.0", + "husky": "^9.0.0", "jest": "^29.0.0", - "typescript": ">=4.0.0" + "typescript": ">=4.7.0" }, "husky": { "hooks": { @@ -30,17 +30,17 @@ } }, "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0", - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^8.0.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jest": "^26.0.0", - "eslint-plugin-mocha": "^10.0.0", + "@typescript-eslint/eslint-plugin": "^8.0.0", + "@typescript-eslint/parser": "^8.0.0", + "eslint": "^9.0.0", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jest": "^28.0.0", + "eslint-plugin-mocha": "^10.5.0", "eslint-plugin-prefer-object-spread": "^1.2.1", - "eslint-plugin-react": "^7.30.1", - "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.0.0", "sync-request": "^6.1.0", - "typescript": ">=4.0.0" + "typescript": ">=4.7.0" }, "packageManager": "yarn@4.10.3" } From 7e89eec17adccf1942bc0d087e2ab4d171bdc30d Mon Sep 17 00:00:00 2001 From: siddie Date: Thu, 5 Mar 2026 19:29:14 +0000 Subject: [PATCH 2/6] update version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9039243..8586a77 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eslint-plugin-siren", - "version": "2.4.8", + "version": "2.4.9", "description": "Provides custom eslint rules developed by Siren", "main": "index.js", "license": "MIT", From 097e9c6ab9b12ffd2291b9efa2f35704d8920e71 Mon Sep 17 00:00:00 2001 From: siddie Date: Fri, 6 Mar 2026 06:28:34 +0000 Subject: [PATCH 3/6] remove deprecated babel plugin --- configs/recommended.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/configs/recommended.js b/configs/recommended.js index 30d724d..3969b11 100644 --- a/configs/recommended.js +++ b/configs/recommended.js @@ -24,7 +24,6 @@ module.exports = { ], plugins: [ 'mocha', - 'babel', 'react', 'react-hooks', 'import', @@ -102,9 +101,7 @@ module.exports = { 'valid-typeof': 'error', 'wrap-iife': [ 'error', 'outside' ], yoda: 'off', - - 'object-curly-spacing': 'off', // overridden with babel/object-curly-spacing - 'babel/object-curly-spacing': [ 'error', 'always' ], + 'object-curly-spacing': [ 'error', 'always' ], // replaces babel/object-curly-spacing (eslint-plugin-babel is deprecated; core rule covers the same functionality) 'react/jsx-uses-react': 'error', 'react/jsx-uses-vars': 'error', From 996bec372b29ed558544908a04a4afaffc44d5a9 Mon Sep 17 00:00:00 2001 From: siddieP <122723539+siddieP@users.noreply.github.com> Date: Fri, 6 Mar 2026 06:29:48 +0000 Subject: [PATCH 4/6] Update package.json Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8586a77..11d2066 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "peerDependencies": { "@typescript-eslint/eslint-plugin": "^8.0.0", "@typescript-eslint/parser": "^8.0.0", - "eslint": "^9.0.0", + "eslint": ">=8 <10", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jest": "^28.0.0", "eslint-plugin-mocha": "^10.5.0", From 0ec34de9bf593e0ef7e08d51be92eff617c7fa52 Mon Sep 17 00:00:00 2001 From: siddie Date: Fri, 6 Mar 2026 06:54:09 +0000 Subject: [PATCH 5/6] replace deprecated @typescript-eslint and babel rules to make it compatible with eslint v9 --- configs/recommended.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/configs/recommended.js b/configs/recommended.js index 3969b11..ed24fd6 100644 --- a/configs/recommended.js +++ b/configs/recommended.js @@ -7,12 +7,15 @@ const typescriptRules = { 'semi': 'off', '@typescript-eslint/semi': 'error', '@typescript-eslint/type-annotation-spacing': 'error', + // @typescript-eslint/member-delimiter-style was moved to @typescript-eslint/eslint-plugin stylistic package in v6 '@typescript-eslint/member-delimiter-style': 'error', - '@typescript-eslint/indent': ['error', 2], + 'indent': 'off', + '@typescript-eslint/indent': ['error', 2], // overrides base indent rule for TypeScript files to handle TS-specific syntax correctly '@typescript-eslint/explicit-member-accessibility': 'error', '@typescript-eslint/explicit-function-return-type': ['error', { allowExpressions: true, allowTypedFunctionExpressions: true }], '@typescript-eslint/explicit-module-boundary-types': ['error', { allowArgumentsExplicitlyTypedAsAny: true }], - '@typescript-eslint/ban-types': ['error', { 'types': { '{}': false } }], + // @typescript-eslint/ban-types was removed in @typescript-eslint v6; @typescript-eslint/no-restricted-types is the replacement + '@typescript-eslint/no-restricted-types': ['error', { 'types': { '{}': false } }], '@typescript-eslint/no-inferrable-types': ['error', { 'ignoreParameters': false, 'ignoreProperties': true }] }; @@ -117,13 +120,12 @@ module.exports = { 'import/export': 'error', 'import/no-named-as-default': 'error', 'import/no-named-as-default-member': 'error', - 'import/no-duplicates': 'error', + 'import/no-duplicates': 'error', // covers duplicate imports including TypeScript's 'import type'; replaces @typescript-eslint/no-duplicate-imports (removed in @typescript-eslint v6) - '@typescript-eslint/no-duplicate-imports': 'error', - '@typescript-eslint/no-extra-semi': 'error', + // '@typescript-eslint/no-duplicate-imports' was removed in @typescript-eslint v6; use import/no-duplicates instead '@typescript-eslint/no-use-before-define': ['error', { 'functions': false, 'classes': false }], - 'no-duplicate-imports': 'off', - 'no-extra-semi': 'off', + 'no-duplicate-imports': 'off', // disabled in favour of import/no-duplicates which handles TypeScript import type syntax + 'no-extra-semi': 'off', // disabled in favour of @typescript-eslint/no-extra-semi for TS files; handled in typescriptRules 'no-use-before-define': 'off', 'eol-last': 'error', 'import/no-default-export': 'off', From 1ecc9dbd16bc4c14269e6435011a5348cd997e39 Mon Sep 17 00:00:00 2001 From: siddie Date: Fri, 6 Mar 2026 06:56:44 +0000 Subject: [PATCH 6/6] fix lost es lint version updated from remote --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 11d2066..58a8d80 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ }, "devDependencies": { "@typescript-eslint/parser": "^8.0.0", - "eslint": "^9.0.0", + "eslint": ">=8 <10", "eslint-plugin-eslint-plugin": "^6.0.0", "husky": "^9.0.0", "jest": "^29.0.0",