Skip to content

Commit 2bfe08e

Browse files
committed
Publish v0.33.0
1 parent 6013ffe commit 2bfe08e

File tree

4 files changed

+149
-20
lines changed

4 files changed

+149
-20
lines changed

CHANGELOG.adoc

Lines changed: 91 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,78 @@
1212
:eslint-testing-library-rules: https://github.com/testing-library/eslint-plugin-testing-library/blob/main/docs/rules
1313
:eslint-unicorn-rules: https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules
1414

15+
== v0.33.0
16+
17+
* Updated `eslint` to `9.39.2`.
18+
+
19+
* Updated `typescript-eslint` to `8.52.0`:
20+
** Enabled the `link:{ts-eslint-rules}/no-unused-private-class-members/[@typescript-eslint/no-unused-private-class-members]`
21+
rule as an error.
22+
** Enabled the `link:{ts-eslint-rules}/no-useless-default-assignment/[@typescript-eslint/no-useless-default-assignment]`
23+
rule as an error.
24+
+
25+
* Updated `@stylistic/eslint-plugin` to `5.6.1`:
26+
** Disabled `@stylistic/jsx-props-no-multi-spaces` as deprecated.
27+
Use `@stylistic/no-multi-spaces` instead.
28+
+
29+
* Upgraded `eslint-plugin-unicorn` to `62.0.0`.
30+
+
31+
* Upgraded `eslint-plugin-jsdoc` to `61.5.0`:
32+
** Enabled the `link:{eslint-jsdoc-rules}/escape-inline-tags.md[jsdoc/escape-inline-tags]` rule as an error.
33+
** Enabled the `link:{eslint-jsdoc-rules}/prefer-import-tag.md[jsdoc/prefer-import-tag]` rule as a warning.
34+
** Enabled the `link:{eslint-jsdoc-rules}/reject-any-type.md[jsdoc/reject-any-type]` rule as an error.
35+
** Enabled the `link:{eslint-jsdoc-rules}/reject-function-type.md[jsdoc/reject-function-type]` rule as an error.
36+
** Enabled the `link:{eslint-jsdoc-rules}/require-next-description.md[jsdoc/require-next-description]` rule as an error.
37+
** Enabled the `link:{eslint-jsdoc-rules}/require-next-type.md[jsdoc/require-next-type]` rule as an error.
38+
** Enabled the `link:{eslint-jsdoc-rules}/require-rejects.md[jsdoc/require-rejects]` rule as an error.
39+
** Enabled the `link:{eslint-jsdoc-rules}/require-throws-description.md[jsdoc/require-throws-description]` rule as an error.
40+
** Enabled the `link:{eslint-jsdoc-rules}/require-throws-type.md[jsdoc/require-throws-type]` rule as an error.
41+
** Enabled the `link:{eslint-jsdoc-rules}/require-yields-description.md[jsdoc/require-yields-description]` rule as an error.
42+
** Enabled the `link:{eslint-jsdoc-rules}/require-yields-type.md[jsdoc/require-yields-type]` rule as an error.
43+
** Enabled the `link:{eslint-jsdoc-rules}/ts-method-signature-style.md[jsdoc/ts-method-signature-style]` rule as a warning.
44+
** Enabled the `link:{eslint-jsdoc-rules}/ts-no-empty-object-type.md[jsdoc/ts-no-empty-object-type]` rule as an error.
45+
** Enabled the `link:{eslint-jsdoc-rules}/ts-no-unnecessary-template-expression.md[jsdoc/ts-no-unnecessary-template-expression]`
46+
rule as a warning.
47+
** Enabled the `link:{eslint-jsdoc-rules}/ts-prefer-function-type.md[jsdoc/ts-prefer-function-type]` rule as a warning.
48+
** Enabled the `link:{eslint-jsdoc-rules}/type-formatting.md[jsdoc/type-formatting]` rule as a warning.
49+
+
50+
* Updated `eslint-plugin-jest` to `29.12.1`:
51+
** Enabled the `link:{eslint-jest-rules}/no-error-equal.md[jest/no-error-equal]` rule as an error.
52+
** Enabled the `link:{eslint-jest-rules}/no-unnecessary-assertion.md[jest/no-unnecessary-assertion]` rule as an error.
53+
** Enabled the `link:{eslint-jest-rules}/no-unneeded-async-expect-function.md[jest/no-unneeded-async-expect-function]`
54+
rule as a warning.
55+
** Enabled the `link:{eslint-jest-rules}/prefer-mock-return-shorthand.md[jest/prefer-mock-return-shorthand]`
56+
rule as a warning.
57+
** Enabled the `link:{eslint-jest-rules}/prefer-to-have-been-called.md[jest/prefer-to-have-been-called]`
58+
rule as a warning.
59+
** Enabled the `link:{eslint-jest-rules}/prefer-to-have-been-called-times.md[jest/prefer-to-have-been-called-times]`
60+
rule as a warning.
61+
** Enabled the `link:{eslint-jest-rules}/valid-expect-with-promise.md[jest/valid-expect-with-promise]` rule as an error.
62+
** Enabled the `link:{eslint-jest-rules}/valid-mock-module-path.md[jest/valid-mock-module-path]` rule as an error.
63+
+
64+
* Updated `eslint-plugin-testing-library` to `7.15.4`:
65+
** Enabled the `link:{eslint-testing-library-rules}/prefer-user-event-setup.md[testing-library/prefer-user-event-setup]`
66+
rule as an error.
67+
** Changed the `link:{eslint-testing-library-rules}/await-async-queries.md[testing-library/await-async-queries]`
68+
rule severity to a warning, as a fixer is now available.
69+
** Changed the `link:{eslint-testing-library-rules}/await-async-utils.md[testing-library/await-async-utils]`
70+
rule severity to a warning, as a fixer is now available.
71+
** Changed the `link:{eslint-testing-library-rules}/no-await-sync-queries.md[testing-library/no-await-sync-queries]`
72+
rule severity to a warning, as a fixer is now available.
73+
** Changed the `link:{eslint-testing-library-rules}/no-wait-for-multiple-assertions.md[testing-library/no-wait-for-multiple-assertions]`
74+
rule severity to a warning, as a fixer is now available.
75+
+
76+
* Updated `eslint-plugin-rxjs-x` to `0.8.4`:
77+
** Enabled the `link:{eslint-rxjs-rules}/no-sharereplay-before-takeuntil.md[rxjs-x/no-sharereplay-before-takeuntil]`
78+
rule as an error.
79+
** Enabled the `link:{eslint-rxjs-rules}/no-unnecessary-collection.md[rxjs-x/no-unnecessary-collection]`
80+
rule as an error.
81+
+
82+
* Updated `eslint-plugin-array-func` to `5.1.0`.
83+
* Updated `eslint-plugin-cypress` to `5.2.1`.
84+
* Updated `eslint-plugin-n` to `17.23.1`.
85+
86+
1587
== v0.32.0
1688

1789
* Removed Node.js v18 support, required v20+.
@@ -700,25 +772,27 @@ It allows to describe a hierarchy: Class → Method → Signature → Preconditi
700772
+
701773
* Upgraded `eslint-plugin-jsdoc` to `46.4.5`:
702774
** `@link`/`@linkcode` check for types, mark parameter names as missing types.
703-
** Enabled the `link:{eslint-jsdoc-rules}/no-blank-blocks.md[jsdoc/no-blank-blocks]` rule as a warning.
704-
** Enabled the `link:{eslint-jsdoc-rules}/tag-lines.md[jsdoc/tag-lines]` rule as a warning.
705-
** Enabled the `link:{eslint-jsdoc-rules}/imports-as-dependencies.md[jsdoc/imports-as-dependencies]` rule as an error.
706-
** Configured the `link:{eslint-jsdoc-rules}/sort-tags.md[jsdoc/sort-tags]` rule to group tags.
707-
*** Moved the `@returns` JSDoc tag to the behavior details sort group.
708-
** Disabled the `link:{eslint-jsdoc-rules}/no-undefined-types.md[jsdoc/no-undefined-types]` rule for TypeScript configs.
709-
** Removed the `jsdoc/newline-after-description` rule (removed from `eslint-plugin-jsdoc`).
710-
+
711-
* Updated `eslint-plugin-cypress` to `2.13.3`.
712-
* Updated `eslint-plugin-deprecation` to `1.5.0`.
713-
* Updated `eslint-plugin-import` to `2.28.0`.
714-
* Updated `eslint-plugin-sonarjs` to `0.19.0`.
715-
* Updated `eslint-plugin-testing-library` to `5.11.0`.
775+
** Enabled the `link:{eslint-jsdoc-rules}/no-blank-blocks.md[jsdoc/no-blank-blocks]` rule as an error;
776+
** Enabled the `link:{eslint-jsdoc-rules}/require-template.md[jsdoc/require-template]` rule as an error;
777+
** Changed the
778+
`link:{eslint-jsdoc-rules}/require-hyphen-before-param-description.md[jsdoc/require-hyphen-before-param-description]`
779+
rule severity from an error to a warning (as it has a fixer).
716780
+
717-
* Patched `eslint-import-resolver-typescript` to `3.5.5`.
718-
* Patched `eslint-plugin-jest` to `27.2.3`.
719-
* Patched `eslint-plugin-rxjs` to `5.0.3`.
781+
* Upgraded `eslint-plugin-testing-library` to `6.0.1`:
782+
** Replaced `testing-library/await-async-query` with `link:{eslint-testing-library-rules}/await-async-queries.md[testing-library/await-async-queries]`.
783+
** Replaced `testing-library/await-fire-event` with `link:{eslint-testing-library-rules}/await-async-events.md[testing-library/await-async-events]`.
784+
** Replaced `testing-library/no-await-sync-query` with `link:{eslint-testing-library-rules}/no-await-sync-queries.md[testing-library/no-await-sync-queries]`.
785+
** Replaced `testing-library/no-render-in-setup` with `link:{eslint-testing-library-rules}/no-render-in-lifecycle.md[testing-library/no-render-in-lifecycle]`.
786+
** Removed `testing-library/no-wait-for-empty-callback`.
787+
** Removed `testing-library/prefer-wait-for`.
720788
+
721-
* Updated `@babel/eslint-parser` to `7.22.9`.
789+
* Updated `eslint-import-resolver-typescript` to `3.6.0`.
790+
* Updated `eslint-plugin-cypress` to `2.14.0`.
791+
* Updated `eslint-plugin-jest-dom` to `5.1.0`.
792+
* Updated `eslint-plugin-jsdoc` to `46.5.1`.
793+
* Updated `eslint-plugin-sonarjs` to `0.21.0`.
794+
* Patched `eslint-plugin-import` to `2.28.1`.
795+
* Patched `@babel/eslint-parser` to `7.22.15`.
722796

723797

724798
== v0.21.0-beta.3

MIGRATION_GUIDE.adoc

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,61 @@ Migration between minor versions follows the same steps:
99
** fix errors or check auto-fixes of warnings;
1010
** check for the regressions.
1111

12+
== From `v0.32.0` to `v0.33.0`
13+
14+
* *Disable and gradually enable new rules*
15+
+
16+
.eslint.config.js
17+
[source,javascript]
18+
----
19+
import { perfectiveEslintConfig } from '@perfective/eslint-config';
20+
21+
const eslintConfig = perfectiveEslintConfig([
22+
// ...Optional plugins configs...
23+
{
24+
rules: {
25+
// typescript-eslint
26+
'@typescript-eslint/no-unused-private-class-members': 'off',
27+
'@typescript-eslint/no-useless-default-assignment': 'off',
28+
// eslint-plugin-jsdoc
29+
'jsdoc/escape-inline-tags': 'off',
30+
'jsdoc/prefer-import-tag': 'off',
31+
'jsdoc/reject-any-type': 'off',
32+
'jsdoc/reject-function-type': 'off',
33+
'jsdoc/require-next-description': 'off',
34+
'jsdoc/require-next-type': 'off',
35+
'jsdoc/require-rejects': 'off',
36+
'jsdoc/require-throws-description': 'off',
37+
'jsdoc/require-throws-type': 'off',
38+
'jsdoc/require-yields-description': 'off',
39+
'jsdoc/require-yields-type': 'off',
40+
'jsdoc/ts-method-signature-style': 'off',
41+
'jsdoc/ts-no-empty-object-type': 'off',
42+
'jsdoc/ts-no-unnecessary-template-expression': 'off',
43+
'jsdoc/ts-prefer-function-type': 'off',
44+
'jsdoc/type-formatting': 'off',
45+
// eslint-plugin-jest
46+
'jest/no-error-equal': 'off',
47+
'jest/no-unnecessary-assertion': 'off',
48+
'jest/no-unneeded-async-expect-function': 'off',
49+
'jest/prefer-mock-return-shorthand': 'off',
50+
'jest/prefer-to-have-been-called': 'off',
51+
'jest/prefer-to-have-been-called-times': 'off',
52+
'jest/valid-expect-with-promise': 'off',
53+
'jest/valid-mock-module-path': 'off',
54+
// eslint-plugin-testing-library
55+
'testing-library/prefer-user-event-setup': 'off',
56+
// eslint-plugin-rxjs-x
57+
'rxjs-x/no-sharereplay-before-takeuntil': 'off',
58+
'rxjs-x/no-unnecessary-collection': 'off',
59+
},
60+
},
61+
]);
62+
63+
export default eslintConfig;
64+
----
65+
66+
1267
== From `v0.31.2` to `v0.32.0`
1368

1469
* _(If explicitly declared)_ *Update @stylistic ESLint plugin dependencies*:

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@perfective/eslint-config",
3-
"version": "0.32.0",
3+
"version": "0.33.0",
44
"description": "ESLint shareable rules configuration",
55
"keywords": [
66
"code quality",

0 commit comments

Comments
 (0)