From cc04adef211017656e77ed765744f0b7b647b70d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20O=E2=80=99Shannessy?= Date: Thu, 14 Jul 2016 13:07:45 -0700 Subject: [PATCH] Use new eslint-config-fbjs, fix lint warnings Summary: I just shipped `eslint-config-fbjs` which much more closely matches the lint config we have internally, uses a few plugins, and has the globals we need for Flow. This also takes care of the really large list of Flow-related unused/undef var warnings. With this you're back down to 0 warnings. Closes https://github.com/facebook/relay/pull/1280 Reviewed By: zpao Differential Revision: D3562291 Pulled By: kassens fbshipit-source-id: ea70968d2fbf9022435af032f6a147fa491cf228 --- .eslintrc | 19 +++---------------- package.json | 9 ++++++--- src/legacy/store/GraphQLQueryRunner.js | 14 ++++++++------ .../store/__tests__/GraphQLRange-test.js | 2 +- src/store/__tests__/RelayStoreData-test.js | 2 +- src/tools/__mocks__/RelayTestUtils.js | 2 +- .../__tests__/writeRelayUpdatePayload-test.js | 2 +- 7 files changed, 21 insertions(+), 29 deletions(-) diff --git a/.eslintrc b/.eslintrc index a2954cd5e6d75..fc13b85595bbe 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,21 +1,8 @@ --- -parser: babel-eslint extends: - - ./node_modules/fbjs-scripts/eslint/.eslintrc.js - -plugins: - - react + - fbjs rules: - react/jsx-uses-react: 2 - -globals: - $Keys: true - $FixMe: true - $FlowFixMe: true - $FlowIssue: true - Iterator: true - IteratorResult: true - ReactClass: true - ReactElement: true + # this is very noisy, so disable + consistent-return: 0 diff --git a/package.json b/package.json index 250a5d2c95f88..aeaec721ae93a 100644 --- a/package.json +++ b/package.json @@ -40,13 +40,16 @@ "devDependencies": { "babel-cli": "^6.9.0", "babel-core": "^6.9.0", - "babel-eslint": "^6.0.4", + "babel-eslint": "^6.1.2", "babel-plugin-transform-runtime": "^6.9.0", "babel-polyfill": "^6.9.0", "babel-preset-fbjs": "^2.0.0", "del": "^2.2.0", - "eslint": "^2.10.2", - "eslint-plugin-react": "^5.1.1", + "eslint": "^3.0.1", + "eslint-config-fbjs": "^1.0.0", + "eslint-plugin-babel": "^3.3.0", + "eslint-plugin-flow-vars": "^0.4.0", + "eslint-plugin-react": "^5.2.2", "fbjs-scripts": "^0.7.1", "flow-bin": "^0.28.0", "graphql": "0.6.0", diff --git a/src/legacy/store/GraphQLQueryRunner.js b/src/legacy/store/GraphQLQueryRunner.js index b568018146313..3fc363efc82b4 100644 --- a/src/legacy/store/GraphQLQueryRunner.js +++ b/src/legacy/store/GraphQLQueryRunner.js @@ -260,12 +260,14 @@ function runQueries( }, }); } else { - if (everyObject(remainingRequiredFetchMap, canResolve) && - hasItems(remainingRequiredFetchMap)) { - readyState.update({ - ready: true, - stale: true, - }, [{type: 'CACHE_RESTORED_REQUIRED'}]); + if ( + everyObject(remainingRequiredFetchMap, canResolve) && + hasItems(remainingRequiredFetchMap) + ) { + readyState.update({ + ready: true, + stale: true, + }, [{type: 'CACHE_RESTORED_REQUIRED'}]); } else { readyState.update({}, [{type: 'CACHE_RESTORE_FAILED'}]); } diff --git a/src/legacy/store/__tests__/GraphQLRange-test.js b/src/legacy/store/__tests__/GraphQLRange-test.js index 8fd2ebb43b9ff..efb49f6f4a3e8 100644 --- a/src/legacy/store/__tests__/GraphQLRange-test.js +++ b/src/legacy/store/__tests__/GraphQLRange-test.js @@ -541,7 +541,7 @@ describe('GraphQLRange', () => { ]); }); - it('should not make empty segment for after().last() query with gap', () => { + it('should not make empty segment for after().last() query with gap', () => { let queryCalls = [ {name: 'after', value: null}, {name: 'last', value: 3}, diff --git a/src/store/__tests__/RelayStoreData-test.js b/src/store/__tests__/RelayStoreData-test.js index b2838c3e9fced..6a1b7b065a9b7 100644 --- a/src/store/__tests__/RelayStoreData-test.js +++ b/src/store/__tests__/RelayStoreData-test.js @@ -683,7 +683,7 @@ describe('RelayStoreData', () => { }, '789': { 'client:1': true, - } + }, }, }; expect(stringifiedStoreData).toEqual(JSON.stringify(expectedStoreData)); diff --git a/src/tools/__mocks__/RelayTestUtils.js b/src/tools/__mocks__/RelayTestUtils.js index 0fdb214bff8c3..15d6c8304336e 100644 --- a/src/tools/__mocks__/RelayTestUtils.js +++ b/src/tools/__mocks__/RelayTestUtils.js @@ -756,7 +756,7 @@ function prettifyQueryString(queryText, indentSize) { indent = indent.substr(0, indent.length - 2); output += '\n' + indent + '}'; } else if (match[0] === ',') { - output += ',' + '\n' + indent; + output += ',\n' + indent; } else { output += match[0]; } diff --git a/src/traversal/__tests__/writeRelayUpdatePayload-test.js b/src/traversal/__tests__/writeRelayUpdatePayload-test.js index 9c80b55850b4a..bffc8f149bca4 100644 --- a/src/traversal/__tests__/writeRelayUpdatePayload-test.js +++ b/src/traversal/__tests__/writeRelayUpdatePayload-test.js @@ -818,7 +818,7 @@ describe('writeRelayUpdatePayload()', () => { }); describe('node/range delete mutations', () => { - let store, queueStore, writer, queueWriter, feedbackID, connectionID, firstCommentID, secondCommentID, firstEdgeID, secondEdgeID; + let store, queueStore, writer, queueWriter, feedbackID, connectionID, firstCommentID, secondCommentID, firstEdgeID, secondEdgeID; // eslint-disable-line max-len beforeEach(() => { const records = {};