-
- Notifications
You must be signed in to change notification settings - Fork 95
Closed
Description
Description
Raise forEach exception during linting of typescript files
Steps to Reproduce
- Install and configure eslint-plugin-promise like described in https://github.com/xjamundx/eslint-plugin-promise/blob/development/README.md
- install and configure
@typescript-eslint/parserlike described in https://github.com/typescript-eslint/typescript-eslint#readme - remove all rules except
'promise/no-native': 'warn',in .eslintrc.js - add to package.json scripts section
"lint": "eslint ./src --ext .ts,.tsx", - add some
*.tsor*.tsxfiles in thesrcfolder - run
npm run lint
Workaround:
- comment
// 'promise/no-native': 'warn',rule in .eslintrc.js - run
npm run lint
Expected behavior:
Eslint perform linting without throwing TypeError: Cannot read property 'forEach' of undefined
Actual behavior:
TypeError: Cannot read property 'forEach' of undefined Occurred while linting ./src/somefile.ts:1 at Program:exit (./node_modules/eslint-plugin-promise/rules/no-native.js:43:29) at ./node_modules/eslint/lib/linter/safe-emitter.js:45:58 at Array.forEach (<anonymous>) at Object.emit (./node_modules/eslint/lib/linter/safe-emitter.js:45:38) at NodeEventGenerator.applySelector (./node_modules/eslint/lib/linter/node-event-generator.js:254:26) at NodeEventGenerator.applySelectors (./node_modules/eslint/lib/linter/node-event-generator.js:283:22) at NodeEventGenerator.leaveNode (./node_modules/eslint/lib/linter/node-event-generator.js:306:14) at CodePathAnalyzer.leaveNode (./node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js:655:23) at ./node_modules/eslint/lib/linter/linter.js:938:32 at Array.forEach (<anonymous>) Versions
- Node version: 14.5.0
- ESLint version: 6.6.0, 7.9.0
- eslint-plugin-promise version: 4.2.1
- "@typescript-eslint/eslint-plugin": "^4.1.0",
- "@typescript-eslint/parser": "^4.1.0",
Additional Information
.eslintrc.js
module.exports = { extends: [ 'plugin:promise/recommended' ], env: { browser: true, node: true }, parser: '@typescript-eslint/parser', parserOptions: { project: ['./tsconfig.eslint.json'], ecmaFeatures: { tsx: true, jsx: true } }, plugins: [ 'eslint-plugin-promise', ], rules: { 'promise/no-native': 'warn', } }; aaditmshahaaditmshah
Metadata
Metadata
Assignees
Labels
No labels