Skip to content

Commit

Permalink
Eslint config: convert all NEXT_VERSION_ERROR to ERROR
Browse files Browse the repository at this point in the history
In preparation for next major version.
  • Loading branch information
mrtnzlml committed Dec 21, 2021
1 parent 05550a9 commit ced3648
Show file tree
Hide file tree
Showing 8 changed files with 148 additions and 273 deletions.
1 change: 1 addition & 0 deletions src/eslint-config-adeira/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
**Breaking changes ahead!**

- New rules enabled: `fb-flow/use-indexed-access-type` ([more info](https://flow.org/en/docs/types/indexed-access/)) and `ft-flow/enforce-suppression-code` (warnings or errors in strict mode).
- Many rules that were showing warnings in normal mode but errors in strict mode were converted to normal errors (so there is no difference between normal and strict mode). The best way how to migrate is to temporarily switch to the strict mode and address all the errors before upgrading to this major version.
- Switched from [`eslint-plugin-flowtype`](https://github.com/gajus/eslint-plugin-flowtype/tree/449cb99f1b6d3bbbb66f5be55f497667f5b2cb31) to [`eslint-plugin-ft-flow`](https://github.com/flow-typed/eslint-plugin-ft-flow/tree/820e631ce491cdf45821744d4e29f348cf776392) which contains the same set of rules but should be more up to date and maintained. We are going to enable additional rules later. There is a possible minor breaking change (with very simple fix) when suppressing the rules manually, for example:

```diff
Expand Down
198 changes: 36 additions & 162 deletions src/eslint-config-adeira/__tests__/__snapshots__/index.test.js.snap
Original file line number Diff line number Diff line change
Expand Up @@ -24,33 +24,33 @@ Object {
],
"rules": Object {
"testing-library/await-async-query": 0,
"testing-library/await-async-utils": 1,
"testing-library/await-async-utils": 2,
"testing-library/await-fire-event": 0,
"testing-library/consistent-data-testid": 0,
"testing-library/no-await-sync-events": 1,
"testing-library/no-await-sync-query": 1,
"testing-library/no-await-sync-events": 2,
"testing-library/no-await-sync-query": 2,
"testing-library/no-container": 0,
"testing-library/no-debugging-utils": 1,
"testing-library/no-debugging-utils": 2,
"testing-library/no-dom-import": Array [
1,
2,
"react",
],
"testing-library/no-manual-cleanup": 0,
"testing-library/no-node-access": 0,
"testing-library/no-promise-in-fire-event": 1,
"testing-library/no-promise-in-fire-event": 2,
"testing-library/no-render-in-setup": 0,
"testing-library/no-unnecessary-act": 1,
"testing-library/no-wait-for-empty-callback": 1,
"testing-library/no-wait-for-multiple-assertions": 1,
"testing-library/no-wait-for-side-effects": 1,
"testing-library/no-wait-for-snapshot": 1,
"testing-library/prefer-explicit-assert": 1,
"testing-library/prefer-find-by": 1,
"testing-library/prefer-presence-queries": 1,
"testing-library/prefer-query-by-disappearance": 1,
"testing-library/no-unnecessary-act": 2,
"testing-library/no-wait-for-empty-callback": 2,
"testing-library/no-wait-for-multiple-assertions": 2,
"testing-library/no-wait-for-side-effects": 2,
"testing-library/no-wait-for-snapshot": 2,
"testing-library/prefer-explicit-assert": 2,
"testing-library/prefer-find-by": 2,
"testing-library/prefer-presence-queries": 2,
"testing-library/prefer-query-by-disappearance": 2,
"testing-library/prefer-screen-queries": 0,
"testing-library/prefer-user-event": 1,
"testing-library/prefer-wait-for": 1,
"testing-library/prefer-user-event": 2,
"testing-library/prefer-wait-for": 2,
"testing-library/render-result-naming-convention": 0,
},
},
Expand Down Expand Up @@ -162,11 +162,11 @@ Object {
"eslint-comments/no-unused-enable": 2,
"eslint-comments/no-use": 0,
"eslint-comments/require-description": 0,
"fb-flow/flow-enums-default-if-possible": 1,
"fb-flow/no-flow-enums-object-mapping": 1,
"fb-flow/use-exact-by-default-object-type": 1,
"fb-flow/use-flow-enums": 1,
"fb-flow/use-indexed-access-type": 1,
"fb-flow/flow-enums-default-if-possible": 2,
"fb-flow/no-flow-enums-object-mapping": 2,
"fb-flow/use-exact-by-default-object-type": 2,
"fb-flow/use-flow-enums": 2,
"fb-flow/use-indexed-access-type": 2,
"flowtype/boolean-style": "off",
"flowtype/delimiter-dangle": "off",
"flowtype/generic-spacing": "off",
Expand All @@ -186,15 +186,15 @@ Object {
"ft-flow/define-flow-type": 1,
"ft-flow/delimiter-dangle": 0,
"ft-flow/enforce-line-break": 0,
"ft-flow/enforce-suppression-code": 1,
"ft-flow/enforce-suppression-code": 2,
"ft-flow/generic-spacing": 0,
"ft-flow/interface-id-match": 0,
"ft-flow/newline-after-flow-annotation": Array [
2,
"always",
],
"ft-flow/no-dupe-keys": 2,
"ft-flow/no-duplicate-type-union-intersection-members": 1,
"ft-flow/no-duplicate-type-union-intersection-members": 2,
"ft-flow/no-existential-type": 2,
"ft-flow/no-flow-fix-me-comments": 0,
"ft-flow/no-flow-fix-me-in-strict-files": 0,
Expand Down Expand Up @@ -330,7 +330,7 @@ Object {
"import/no-named-export": 0,
"import/no-namespace": 0,
"import/no-nodejs-modules": 0,
"import/no-relative-packages": 1,
"import/no-relative-packages": 2,
"import/no-relative-parent-imports": 0,
"import/no-restricted-paths": 0,
"import/no-self-import": 2,
Expand Down Expand Up @@ -371,7 +371,7 @@ Object {
"jest/consistent-test-it": 0,
"jest/expect-expect": 0,
"jest/max-nested-describe": Array [
1,
2,
Object {
"max": 5,
},
Expand Down Expand Up @@ -400,12 +400,12 @@ Object {
"jest/no-test-return-statement": 2,
"jest/prefer-called-with": 2,
"jest/prefer-expect-assertions": 0,
"jest/prefer-expect-resolves": 1,
"jest/prefer-expect-resolves": 2,
"jest/prefer-hooks-on-top": 2,
"jest/prefer-lowercase-title": 0,
"jest/prefer-spy-on": 0,
"jest/prefer-strict-equal": 0,
"jest/prefer-to-be": 1,
"jest/prefer-to-be": 2,
"jest/prefer-to-contain": 2,
"jest/prefer-to-have-length": 2,
"jest/prefer-todo": 2,
Expand Down Expand Up @@ -549,7 +549,7 @@ Object {
"no-bitwise": 2,
"no-buffer-constructor": 1,
"no-caller": 2,
"no-case-declarations": 1,
"no-case-declarations": 2,
"no-class-assign": 1,
"no-comma-dangle": "off",
"no-compare-neg-zero": 2,
Expand Down Expand Up @@ -594,7 +594,7 @@ Object {
"no-extra-label": 2,
"no-extra-parens": "off",
"no-extra-semi": "off",
"no-fallthrough": 1,
"no-fallthrough": 2,
"no-floating-decimal": "off",
"no-func-assign": 2,
"no-global-assign": Array [
Expand Down Expand Up @@ -665,7 +665,7 @@ Object {
"no-proto": 2,
"no-prototype-builtins": 2,
"no-redeclare": Array [
1,
2,
Object {
"builtinGlobals": true,
},
Expand Down Expand Up @@ -887,7 +887,7 @@ Object {
"react/no-access-state-in-setstate": 2,
"react/no-adjacent-inline-elements": 0,
"react/no-array-index-key": 0,
"react/no-arrow-function-lifecycle": 1,
"react/no-arrow-function-lifecycle": 2,
"react/no-children-prop": 0,
"react/no-danger": 0,
"react/no-danger-with-children": 2,
Expand All @@ -896,7 +896,7 @@ Object {
"react/no-did-update-set-state": 2,
"react/no-direct-mutation-state": 2,
"react/no-find-dom-node": 2,
"react/no-invalid-html-attribute": 1,
"react/no-invalid-html-attribute": 2,
"react/no-is-mounted": 2,
"react/no-multi-comp": Array [
2,
Expand All @@ -920,7 +920,7 @@ Object {
"allowAsProps": true,
},
],
"react/no-unused-class-component-methods": 1,
"react/no-unused-class-component-methods": 2,
"react/no-unused-prop-types": 0,
"react/no-unused-state": 0,
"react/no-will-update-set-state": 0,
Expand Down Expand Up @@ -1043,7 +1043,7 @@ Object {
"switch-colon-spacing": "off",
"sx/no-concatenated-classes": 2,
"sx/no-unused-stylesheet": 2,
"sx/use-logical-properties": 1,
"sx/use-logical-properties": 2,
"sx/valid-usage": 2,
"symbol-description": 2,
"template-curly-spacing": "off",
Expand Down Expand Up @@ -1124,131 +1124,5 @@ Object {
exports[`rules snapshot: diff of stable and strict rules 1`] = `
Snapshot Diff:
- Value for stable rules
+ Value for STRICT rules
@@ --- --- @@
"testing-library/await-async-query": 0,
- "testing-library/await-async-utils": 1,
+ "testing-library/await-async-utils": 2,
"testing-library/await-fire-event": 0,
"testing-library/consistent-data-testid": 0,
- "testing-library/no-await-sync-events": 1,
- "testing-library/no-await-sync-query": 1,
+ "testing-library/no-await-sync-events": 2,
+ "testing-library/no-await-sync-query": 2,
"testing-library/no-container": 0,
- "testing-library/no-debugging-utils": 1,
+ "testing-library/no-debugging-utils": 2,
"testing-library/no-dom-import": Array [
- 1,
+ 2,
"react",
@@ --- --- @@
"testing-library/no-node-access": 0,
- "testing-library/no-promise-in-fire-event": 1,
+ "testing-library/no-promise-in-fire-event": 2,
"testing-library/no-render-in-setup": 0,
- "testing-library/no-unnecessary-act": 1,
- "testing-library/no-wait-for-empty-callback": 1,
- "testing-library/no-wait-for-multiple-assertions": 1,
- "testing-library/no-wait-for-side-effects": 1,
- "testing-library/no-wait-for-snapshot": 1,
- "testing-library/prefer-explicit-assert": 1,
- "testing-library/prefer-find-by": 1,
- "testing-library/prefer-presence-queries": 1,
- "testing-library/prefer-query-by-disappearance": 1,
+ "testing-library/no-unnecessary-act": 2,
+ "testing-library/no-wait-for-empty-callback": 2,
+ "testing-library/no-wait-for-multiple-assertions": 2,
+ "testing-library/no-wait-for-side-effects": 2,
+ "testing-library/no-wait-for-snapshot": 2,
+ "testing-library/prefer-explicit-assert": 2,
+ "testing-library/prefer-find-by": 2,
+ "testing-library/prefer-presence-queries": 2,
+ "testing-library/prefer-query-by-disappearance": 2,
"testing-library/prefer-screen-queries": 0,
- "testing-library/prefer-user-event": 1,
- "testing-library/prefer-wait-for": 1,
+ "testing-library/prefer-user-event": 2,
+ "testing-library/prefer-wait-for": 2,
"testing-library/render-result-naming-convention": 0,
@@ --- --- @@
"eslint-comments/require-description": 0,
- "fb-flow/flow-enums-default-if-possible": 1,
- "fb-flow/no-flow-enums-object-mapping": 1,
- "fb-flow/use-exact-by-default-object-type": 1,
- "fb-flow/use-flow-enums": 1,
- "fb-flow/use-indexed-access-type": 1,
+ "fb-flow/flow-enums-default-if-possible": 2,
+ "fb-flow/no-flow-enums-object-mapping": 2,
+ "fb-flow/use-exact-by-default-object-type": 2,
+ "fb-flow/use-flow-enums": 2,
+ "fb-flow/use-indexed-access-type": 2,
"flowtype/boolean-style": "off",
@@ --- --- @@
"ft-flow/enforce-line-break": 0,
- "ft-flow/enforce-suppression-code": 1,
+ "ft-flow/enforce-suppression-code": 2,
"ft-flow/generic-spacing": 0,
@@ --- --- @@
"ft-flow/no-dupe-keys": 2,
- "ft-flow/no-duplicate-type-union-intersection-members": 1,
+ "ft-flow/no-duplicate-type-union-intersection-members": 2,
"ft-flow/no-existential-type": 2,
@@ --- --- @@
"import/no-nodejs-modules": 0,
- "import/no-relative-packages": 1,
+ "import/no-relative-packages": 2,
"import/no-relative-parent-imports": 0,
@@ --- --- @@
"jest/max-nested-describe": Array [
- 1,
+ 2,
Object {
@@ --- --- @@
"jest/prefer-expect-assertions": 0,
- "jest/prefer-expect-resolves": 1,
+ "jest/prefer-expect-resolves": 2,
"jest/prefer-hooks-on-top": 2,
@@ --- --- @@
"jest/prefer-strict-equal": 0,
- "jest/prefer-to-be": 1,
+ "jest/prefer-to-be": 2,
"jest/prefer-to-contain": 2,
@@ --- --- @@
"no-caller": 2,
- "no-case-declarations": 1,
+ "no-case-declarations": 2,
"no-class-assign": 1,
@@ --- --- @@
"no-extra-semi": "off",
- "no-fallthrough": 1,
+ "no-fallthrough": 2,
"no-floating-decimal": "off",
@@ --- --- @@
"no-redeclare": Array [
- 1,
+ 2,
Object {
@@ --- --- @@
"react/no-array-index-key": 0,
- "react/no-arrow-function-lifecycle": 1,
+ "react/no-arrow-function-lifecycle": 2,
"react/no-children-prop": 0,
@@ --- --- @@
"react/no-find-dom-node": 2,
- "react/no-invalid-html-attribute": 1,
+ "react/no-invalid-html-attribute": 2,
"react/no-is-mounted": 2,
@@ --- --- @@
],
- "react/no-unused-class-component-methods": 1,
+ "react/no-unused-class-component-methods": 2,
"react/no-unused-prop-types": 0,
@@ --- --- @@
"sx/no-unused-stylesheet": 2,
- "sx/use-logical-properties": 1,
+ "sx/use-logical-properties": 2,
"sx/valid-usage": 2,
Compared values have no visual difference.
`;
Loading

0 comments on commit ced3648

Please sign in to comment.