Skip to content

TypeError with jsdoc/require-jsdoc and certain configurations #613

@joeyparrish

Description

@joeyparrish

Expected behavior

No TypeError

Actual behavior

Oops! Something went wrong! :(

ESLint: 7.4.0

TypeError: Cannot read property 'map' of undefined
Occurred while linting /path/to/secret/project/test.js:2
    at Object.getFunctionParameterNames (/path/to/secret/project/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js:200:30)
    at checkJsDoc (/path/to/secret/project/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js:204:60)
    at listeners.(anonymous function).forEach.listener (/path/to/secret/project/node_modules/eslint/lib/linter/safe-emitter.js:45:58)
    at Array.forEach (<anonymous>)
    at Object.emit (/path/to/secret/project/node_modules/eslint/lib/linter/safe-emitter.js:45:38)
    at NodeEventGenerator.applySelector (/path/to/secret/project/node_modules/eslint/lib/linter/node-event-generator.js:254:26)
    at NodeEventGenerator.applySelectors (/path/to/secret/project/node_modules/eslint/lib/linter/node-event-generator.js:283:22)
    at NodeEventGenerator.enterNode (/path/to/secret/project/node_modules/eslint/lib/linter/node-event-generator.js:297:14)
    at CodePathAnalyzer.enterNode (/path/to/secret/project/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js:635:23)
    at nodeQueue.forEach.traversalInfo (/path/to/secret/project/node_modules/eslint/lib/linter/linter.js:949:32)

ESLint Config

module.exports = {
  extends: ['plugin:jsdoc/recommended'],
  parserOptions: {
    ecmaVersion: 2019,
  },
  rules: {
    'jsdoc/require-jsdoc': ['error', {
      contexts: ['MethodDefinition'],
      exemptEmptyConstructors: true,
    }],
  },
};

ESLint sample

class Base {
  constructor() {
  }
}

Environment

  • Node version: v10.21.0
  • ESLint version: v7.4.0
  • eslint-plugin-jsdoc version: 30.0.2

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions