Skip to content

Commit 5c313c6

Browse files
authored
Merge pull request #161 from captbaritone/clean-up
Clean up legacy lint rules
2 parents e39d0e7 + 493346f commit 5c313c6

File tree

6 files changed

+12
-3037
lines changed

6 files changed

+12
-3037
lines changed

README.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@ module.exports = {
1818
// Other eslint properties here
1919
rules: {
2020
'relay/graphql-syntax': 'error',
21-
'relay/compat-uses-vars': 'warn',
2221
'relay/graphql-naming': 'error',
23-
'relay/generated-flow-types': 'warn',
2422
'relay/must-colocate-fragment-spreads': 'warn',
2523
'relay/no-future-added-value': 'warn',
2624
'relay/unused-fields': 'warn',
@@ -42,6 +40,18 @@ Add `plugin:relay/recommended` or `plugin:relay/strict` in `extends`:
4240
}
4341
```
4442

43+
### Rule Descriptions
44+
45+
Brief descriptions for each rule:
46+
47+
- `relay/graphql-syntax`: Ensures each `graphql\`\`` tagged template literal contains syntactically valid GraphQL. This is also validated by the Relay Compiler, but the ESLint plugin can often provide faster feedback.
48+
- `relay/graphql-naming`: Ensures GraphQL fragments and queries follow Relay's naming conventions. This is also validated by the Relay Compiler, but the ESLint plugin can often provide faster feedback.
49+
- `relay/no-future-added-value`: Ensures code does not try to explicitly handle the `"%future added value"` enum variant which Relay inserts as a placeholder to ensure you handle the possibility that new enum variants may be added by the server after your application has been deployed.
50+
- `relay/unused-fields`: Ensures that every GraphQL field referenced is used within the module that includes it. This helps enable Relay's [optimal data fetching](https://relay.dev/blog/2023/10/24/how-relay-enables-optimal-data-fetching/)
51+
- `relay/function-required-argument`: Ensures that `readInlineData` is always passed an explicit argument even though that argument is allowed to be `undefined` at runtime.
52+
- `relay/hook-required-argument`: Ensures that Relay hooks are always passed an explicit argument even though that argument is allowed to be `undefined` at runtime.
53+
- `relay/must-colocate-fragment-spreads`: Ensures that when a fragment spread is added within a module, that module directly imports the module which defines that fragment. This prevents the anti-pattern when one component fetches a fragment that is not used by a direct child component. **Note**: This rule leans heavily on Meta's globally unique module names. It likely won't work well in other environments.
54+
4555
### Suppressing rules within graphql tags
4656

4757
The following rules support suppression within graphql tags:

eslint-plugin-relay.js

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,7 @@
1010
module.exports = {
1111
rules: {
1212
'graphql-syntax': require('./src/rule-graphql-syntax'),
13-
'compat-uses-vars': require('./src/rule-compat-uses-vars'),
1413
'graphql-naming': require('./src/rule-graphql-naming'),
15-
'generated-flow-types': require('./src/rule-generated-flow-types'),
1614
'generated-typescript-types': require('./src/rule-generated-typescript-types'),
1715
'no-future-added-value': require('./src/rule-no-future-added-value'),
1816
'unused-fields': require('./src/rule-unused-fields'),
@@ -24,9 +22,7 @@ module.exports = {
2422
recommended: {
2523
rules: {
2624
'relay/graphql-syntax': 'error',
27-
'relay/compat-uses-vars': 'warn',
2825
'relay/graphql-naming': 'error',
29-
'relay/generated-flow-types': 'warn',
3026
'relay/no-future-added-value': 'warn',
3127
'relay/unused-fields': 'warn',
3228
'relay/must-colocate-fragment-spreads': 'warn',
@@ -37,7 +33,6 @@ module.exports = {
3733
'ts-recommended': {
3834
rules: {
3935
'relay/graphql-syntax': 'error',
40-
'relay/compat-uses-vars': 'warn',
4136
'relay/graphql-naming': 'error',
4237
'relay/generated-typescript-types': 'warn',
4338
'relay/no-future-added-value': 'warn',
@@ -50,9 +45,7 @@ module.exports = {
5045
strict: {
5146
rules: {
5247
'relay/graphql-syntax': 'error',
53-
'relay/compat-uses-vars': 'error',
5448
'relay/graphql-naming': 'error',
55-
'relay/generated-flow-types': 'error',
5649
'relay/no-future-added-value': 'error',
5750
'relay/unused-fields': 'error',
5851
'relay/must-colocate-fragment-spreads': 'error',
@@ -63,7 +56,6 @@ module.exports = {
6356
'ts-strict': {
6457
rules: {
6558
'relay/graphql-syntax': 'error',
66-
'relay/compat-uses-vars': 'error',
6759
'relay/graphql-naming': 'error',
6860
'relay/generated-typescript-types': 'error',
6961
'relay/no-future-added-value': 'error',

src/rule-compat-uses-vars.js

Lines changed: 0 additions & 153 deletions
This file was deleted.

0 commit comments

Comments
 (0)