codeclimate / codeclimate-eslint

Code Climate Engine for ESLint
MIT License
95 stars 93 forks source link

Update eslint-plugin-cypress to support recommended #484

Closed ifyoumakeit closed 4 years ago

ifyoumakeit commented 4 years ago

Actual Behavior

An error is thrown when reading our ESLint configuration, throwing on the recommended setting of Cypress.

TypeError: Cannot read property 'recommended' of undefined
Referenced from: /code/.eslintrc.js

Expected Behavior

We should be able to use the recommended setting for Cypress plugin for ESLint. This feature was added in 2.1.0 but currently only 2.0.1 is supported via codeclimate-eslint.

Steps to reproduce

// eslintrc.js
module.exports = {
  extends: [
    "plugin:cypress/recommended",
  ]
}
# .codeclimate.yaml
version: 2
plugins:
  eslint:
    enabled: true
    channel: "eslint-4"
CODECLIMATE_DEBUG=1 codeclimate analyze -e eslint
I, [2020-06-03T20:35:44.330846 #1]  INFO -- : starting engine eslint
D, [2020-06-03T20:35:44.422619 #1] DEBUG -- : /config.json content: {"enabled"=>true, "channel"=>"eslint-4", "include_paths"=>["webpack/"], "debug"=>"1"}
D, [2020-06-03T20:35:44.499220 #1] DEBUG -- : docker run: ["docker", "run", "--name", "cc-engines-eslint-eslint-4-237c2e26-933e-4c76-a235-67126aed793e", "--cap-drop", "all", "--label", "com.codeclimate.label=5f27411f-d74b-4eb4-be08-59d3f2afc327", "--log-driver", "none", "--memory-swap", "-1", "--net", "none", "--rm", "--volume", "/Users/dave.garwacke/src/www:/code:ro", "--volume", "/tmp/cc/ec76d2bb-c809-4816-a45e-d664d5612c50:/config.json:ro", "--user", "9000:9000", "--memory", "1024000000", "codeclimate/codeclimate-eslint:eslint-4"]
D, [2020-06-03T20:35:47.708965 #1] DEBUG -- : engine stderr: /usr/src/app/lib/validate_config.js:18
D, [2020-06-03T20:35:47.709084 #1] DEBUG -- : engine stderr:         throw e;
D, [2020-06-03T20:35:47.709462 #1] DEBUG -- : engine stderr:         ^
D, [2020-06-03T20:35:47.709503 #1] DEBUG -- : engine stderr:
D, [2020-06-03T20:35:47.709535 #1] DEBUG -- : engine stderr: TypeError: Cannot read property 'recommended' of undefined
D, [2020-06-03T20:35:47.709565 #1] DEBUG -- : engine stderr: Referenced from: /code/.eslintrc.js
D, [2020-06-03T20:35:47.713230 #1] DEBUG -- : engine stderr:     at loadConfigFile (/usr/local/node_modules/eslint/lib/config/config-file.js:211:40)
D, [2020-06-03T20:35:47.713418 #1] DEBUG -- : engine stderr:     at loadFromDisk (/usr/local/node_modules/eslint/lib/config/config-file.js:495:18)
D, [2020-06-03T20:35:47.716105 #1] DEBUG -- : engine stderr:     at load (/usr/local/node_modules/eslint/lib/config/config-file.js:559:20)
D, [2020-06-03T20:35:47.716186 #1] DEBUG -- : engine stderr:     at configExtends.reduceRight (/usr/local/node_modules/eslint/lib/config/config-file.js:425:36)
D, [2020-06-03T20:35:47.716208 #1] DEBUG -- : engine stderr:     at Array.reduceRight (<anonymous>)
D, [2020-06-03T20:35:47.717414 #1] DEBUG -- : engine stderr:     at applyExtends (/usr/local/node_modules/eslint/lib/config/config-file.js:403:26)
D, [2020-06-03T20:35:47.717486 #1] DEBUG -- : engine stderr:     at loadFromDisk (/usr/local/node_modules/eslint/lib/config/config-file.js:523:22)
D, [2020-06-03T20:35:47.717962 #1] DEBUG -- : engine stderr:     at Object.load (/usr/local/node_modules/eslint/lib/config/config-file.js:559:20)
D, [2020-06-03T20:35:47.719102 #1] DEBUG -- : engine stderr:     at Config.getLocalConfigHierarchy (/usr/local/node_modules/eslint/lib/config.js:227:44)
D, [2020-06-03T20:35:47.719802 #1] DEBUG -- : engine stderr:     at Config.getConfigHierarchy (/usr/local/node_modules/eslint/lib/config.js:179:43)
I, [2020-06-03T20:35:48.363772 #1]  INFO -- : finished engine eslint
error: (CC::CLI::Analyze::EngineFailure) engine eslint failed with status 1 and stderr
/usr/src/app/lib/validate_config.js:18
        throw e;
        ^

TypeError: Cannot read property 'recommended' of undefined
Referenced from: /code/.eslintrc.js
    at loadConfigFile (/usr/local/node_modules/eslint/lib/config/config-file.js:211:40)
    at loadFromDisk (/usr/local/node_modules/eslint/lib/config/config-file.js:495:18)
    at load (/usr/local/node_modules/eslint/lib/config/config-file.js:559:20)
    at configExtends.reduceRight (/usr/local/node_modules/eslint/lib/config/config-file.js:425:36)
    at Array.reduceRight (<anonymous>)
    at applyExtends (/usr/local/node_modules/eslint/lib/config/config-file.js:403:26)
    at loadFromDisk (/usr/local/node_modules/eslint/lib/config/config-file.js:523:22)
    at Object.load (/usr/local/node_modules/eslint/lib/config/config-file.js:559:20)
    at Config.getLocalConfigHierarchy (/usr/local/node_modules/eslint/lib/config.js:227:44)
    at Config.getConfigHierarchy (/usr/local/node_modules/eslint/lib/config.js:179:43)
D, [2020-06-03T20:35:48.365552 #1] DEBUG -- : backtrace: /usr/src/app/lib/cc/analyzer/raising_container_listener.rb:23:in `finished'
    /usr/src/app/lib/cc/analyzer/composite_container_listener.rb:13:in `block in finished'
    /usr/src/app/lib/cc/analyzer/composite_container_listener.rb:13:in `each'
    /usr/src/app/lib/cc/analyzer/composite_container_listener.rb:13:in `finished'
    /usr/src/app/lib/cc/analyzer/bridge.rb:52:in `block (2 levels) in run'
    /usr/src/app/lib/cc/analyzer/formatters/plain_text_formatter.rb:63:in `with_spinner'
    /usr/src/app/lib/cc/analyzer/formatters/plain_text_formatter.rb:41:in `block in engine_running'
    /usr/src/app/lib/cc/analyzer/formatters/formatter.rb:31:in `engine_running'
    /usr/src/app/lib/cc/analyzer/formatters/plain_text_formatter.rb:40:in `engine_running'
    /usr/src/app/lib/cc/analyzer/bridge.rb:37:in `block in run'
    /usr/src/app/lib/cc/analyzer/bridge.rb:34:in `each'
    /usr/src/app/lib/cc/analyzer/bridge.rb:34:in `run'
    /usr/src/app/lib/cc/cli/analyze.rb:36:in `run'
    /usr/src/app/lib/cc/cli/command.rb:73:in `execute'
    /usr/src/app/lib/cc/cli/runner.rb:25:in `run'
    /usr/src/app/lib/cc/cli/runner.rb:9:in `run'
    /usr/src/app/bin/codeclimate:12:in `<main>'

Relevant links