gajus / eslint-plugin-jsdoc

JSDoc specific linting rules for ESLint.
Other
1.08k stars 155 forks source link

feat: add `disableWrapIndent` option to `check-line-alignment` rule #1202

Closed davidmurdoch closed 5 months ago

davidmurdoch commented 5 months ago

Makes it possible to change the behavior of check-line-alignment so it works as it did before the breaking change introduced in #964.

davidmurdoch commented 5 months ago

@brettz9, @thernstig

Is the repo in broken state right now? I can't build the docs. Am I doing something wrong?


~/code/eslint-plugin-jsdoc (disablewrapindent) $ node --version
v18.17.1
~/code/eslint-plugin-jsdoc (disablewrapindent) $ pnpm --version
8.15.2
~/code/eslint-plugin-jsdoc (disablewrapindent) $ pnpm install
Lockfile is up to date, resolution step is skipped
Already up to date

> eslint-plugin-jsdoc@1.0.0 prepare /home/david/code/eslint-plugin-jsdoc
> husky install

install command is deprecated
Done in 476ms
~/code/eslint-plugin-jsdoc (disablewrapindent) $ pnpm build

> eslint-plugin-jsdoc@1.0.0 build /home/david/code/eslint-plugin-jsdoc
> rimraf ./dist && cross-env NODE_ENV=production babel ./src --out-file-extension .cjs --out-dir ./dist --copy-files --source-maps --ignore ./src/bin/*.js --no-copy-ignored && replace 'require\("\.(.*?)\.[^.]*?"\)' 'require(".$1.cjs")' 'dist' -r --include="*.cjs" && pnpm tsc-build

Successfully compiled 66 files with Babel (606ms).
dist/index.cjs
 7: var _checkAccess = _interopRequireDefault(require("./rules/checkAccess.cjs"));
 8: var _checkAlignment = _interopRequireDefault(require("./rules/checkAlignment.cjs"));
 9: var _checkExamples = _interopRequireDefault(require("./rules/checkExamples.cjs"));
 10: var _checkIndentation = _interopRequireDefault(require("./rules/checkIndentation.cjs"));
 11: var _checkLineAlignment = _interopRequireDefault(require("./rules/checkLineAlignment.cjs"));
 12: var _checkParamNames = _interopRequireDefault(require("./rules/checkParamNames.cjs"));
 13: var _checkPropertyNames = _interopRequireDefault(require("./rules/checkPropertyNames.cjs"));
 14: var _checkSyntax = _interopRequireDefault(require("./rules/checkSyntax.cjs"));
 15: var _checkTagNames = _interopRequireDefault(require("./rules/checkTagNames.cjs"));
 16: var _checkTypes = _interopRequireDefault(require("./rules/checkTypes.cjs"));
 17: var _checkValues = _interopRequireDefault(require("./rules/checkValues.cjs"));
 18: var _emptyTags = _interopRequireDefault(require("./rules/emptyTags.cjs"));
 19: var _implementsOnClasses = _interopRequireDefault(require("./rules/implementsOnClasses.cjs"));
 20: var _importsAsDependencies = _interopRequireDefault(require("./rules/importsAsDependencies.cjs"));
 21: var _informativeDocs = _interopRequireDefault(require("./rules/informativeDocs.cjs"));
 22: var _matchDescription = _interopRequireDefault(require("./rules/matchDescription.cjs"));
 23: var _matchName = _interopRequireDefault(require("./rules/matchName.cjs"));
 24: var _multilineBlocks = _interopRequireDefault(require("./rules/multilineBlocks.cjs"));
 25: var _noBadBlocks = _interopRequireDefault(require("./rules/noBadBlocks.cjs"));
 26: var _noBlankBlockDescriptions = _interopRequireDefault(require("./rules/noBlankBlockDescriptions.cjs"));
 27: var _noBlankBlocks = _interopRequireDefault(require("./rules/noBlankBlocks.cjs"));
 28: var _noDefaults = _interopRequireDefault(require("./rules/noDefaults.cjs"));
 29: var _noMissingSyntax = _interopRequireDefault(require("./rules/noMissingSyntax.cjs"));
 30: var _noMultiAsterisks = _interopRequireDefault(require("./rules/noMultiAsterisks.cjs"));
 31: var _noRestrictedSyntax = _interopRequireDefault(require("./rules/noRestrictedSyntax.cjs"));
 32: var _noTypes = _interopRequireDefault(require("./rules/noTypes.cjs"));
 33: var _noUndefinedTypes = _interopRequireDefault(require("./rules/noUndefinedTypes.cjs"));
 34: var _requireAsteriskPrefix = _interopRequireDefault(require("./rules/requireAsteriskPrefix.cjs"));
 35: var _requireDescription = _interopRequireDefault(require("./rules/requireDescription.cjs"));
 36: var _requireDescriptionCompleteSentence = _interopRequireDefault(require("./rules/requireDescriptionCompleteSentence.cjs"));
 37: var _requireExample = _interopRequireDefault(require("./rules/requireExample.cjs"));
 38: var _requireFileOverview = _interopRequireDefault(require("./rules/requireFileOverview.cjs"));
 39: var _requireHyphenBeforeParamDescription = _interopRequireDefault(require("./rules/requireHyphenBeforeParamDescription.cjs"));
 40: var _requireJsdoc = _interopRequireDefault(require("./rules/requireJsdoc.cjs"));
 41: var _requireParam = _interopRequireDefault(require("./rules/requireParam.cjs"));
 42: var _requireParamDescription = _interopRequireDefault(require("./rules/requireParamDescription.cjs"));
 43: var _requireParamName = _interopRequireDefault(require("./rules/requireParamName.cjs"));
 44: var _requireParamType = _interopRequireDefault(require("./rules/requireParamType.cjs"));
 45: var _requireProperty = _interopRequireDefault(require("./rules/requireProperty.cjs"));
 46: var _requirePropertyDescription = _interopRequireDefault(require("./rules/requirePropertyDescription.cjs"));
 47: var _requirePropertyName = _interopRequireDefault(require("./rules/requirePropertyName.cjs"));
 48: var _requirePropertyType = _interopRequireDefault(require("./rules/requirePropertyType.cjs"));
 49: var _requireReturns = _interopRequireDefault(require("./rules/requireReturns.cjs"));
 50: var _requireReturnsCheck = _interopRequireDefault(require("./rules/requireReturnsCheck.cjs"));
 51: var _requireReturnsDescription = _interopRequireDefault(require("./rules/requireReturnsDescription.cjs"));
 52: var _requireReturnsType = _interopRequireDefault(require("./rules/requireReturnsType.cjs"));
 53: var _requireThrows = _interopRequireDefault(require("./rules/requireThrows.cjs"));
 54: var _requireYields = _interopRequireDefault(require("./rules/requireYields.cjs"));
 55: var _requireYieldsCheck = _interopRequireDefault(require("./rules/requireYieldsCheck.cjs"));
 56: var _sortTags = _interopRequireDefault(require("./rules/sortTags.cjs"));
 57: var _tagLines = _interopRequireDefault(require("./rules/tagLines.cjs"));
 58: var _textEscaping = _interopRequireDefault(require("./rules/textEscaping.cjs"));
 59: var _validTypes = _interopRequireDefault(require("./rules/validTypes.cjs"));
dist/iterateJsdoc.cjs
 14: var _jsdocUtils = _interopRequireDefault(require("./jsdocUtils.cjs"));
dist/jsdocUtils.cjs
 7: var _getDefaultTagStructureForMode = _interopRequireDefault(require("./getDefaultTagStructureForMode.cjs"));
 8: var _tagNames = require("./tagNames.cjs");
 9: var _hasReturnValue = require("./utils/hasReturnValue.cjs");
 10: var _WarnSettings = _interopRequireDefault(require("./WarnSettings.cjs"));
dist/rules/checkAccess.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkAlignment.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkExamples.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkIndentation.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkLineAlignment.cjs
 7: var _alignTransform = _interopRequireDefault(require("../alignTransform.cjs"));
 8: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkParamNames.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkPropertyNames.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkSyntax.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkTagNames.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkTypes.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/checkValues.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/emptyTags.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/implementsOnClasses.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/importsAsDependencies.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/informativeDocs.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/matchDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/matchName.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/multilineBlocks.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noBadBlocks.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noBlankBlockDescriptions.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noBlankBlocks.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noDefaults.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noMissingSyntax.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noMultiAsterisks.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noRestrictedSyntax.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noTypes.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/noUndefinedTypes.cjs
 7: var _iterateJsdoc = _interopRequireWildcard(require("../iterateJsdoc.cjs"));
dist/rules/requireAsteriskPrefix.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireDescriptionCompleteSentence.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireExample.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireFileOverview.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireHyphenBeforeParamDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireJsdoc.cjs
 7: var _exportParser = _interopRequireDefault(require("../exportParser.cjs"));
 8: var _iterateJsdoc = require("../iterateJsdoc.cjs");
 9: var _jsdocUtils = _interopRequireDefault(require("../jsdocUtils.cjs"));
dist/rules/requireParam.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireParamDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireParamName.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireParamType.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireProperty.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requirePropertyDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requirePropertyName.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requirePropertyType.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireReturns.cjs
 7: var _exportParser = _interopRequireDefault(require("../exportParser.cjs"));
 8: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireReturnsCheck.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireReturnsDescription.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireReturnsType.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireThrows.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireYields.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/requireYieldsCheck.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/sortTags.cjs
 7: var _defaultTagOrder = _interopRequireDefault(require("../defaultTagOrder.cjs"));
 8: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/tagLines.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/textEscaping.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
dist/rules/validTypes.cjs
 7: var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));

> eslint-plugin-jsdoc@1.0.0 tsc-build /home/david/code/eslint-plugin-jsdoc
> tsc -p tsconfig-prod.json

~/code/eslint-plugin-jsdoc (disablewrapindent) $ pnpm lint

> eslint-plugin-jsdoc@1.0.0 lint /home/david/code/eslint-plugin-jsdoc
> npm run lint-arg -- .

> eslint-plugin-jsdoc@1.0.0 lint-arg
> eslint .

~/code/eslint-plugin-jsdoc (disablewrapindent) $ pnpm create-docs

> eslint-plugin-jsdoc@1.0.0 create-docs /home/david/code/eslint-plugin-jsdoc
> npm run create-options && babel-node ./src/bin/generateDocs.js

> eslint-plugin-jsdoc@1.0.0 create-options
> node ./src/bin/generateOptions.mjs

skipping no options noBlankBlockDescriptions.js
Error: ENOENT: no such file or directory, lstat '/home/david/code/eslint-plugin-jsdoc/file:'
    at Object.realpathSync (node:fs:2655:7)
    at gitdown.setConfig (/home/david/code/eslint-plugin-jsdoc/node_modules/.pnpm/gitdown@3.1.5/node_modules/gitdown/dist/gitdown.js:216:31)
    at Gitdown.read (/home/david/code/eslint-plugin-jsdoc/node_modules/.pnpm/gitdown@3.1.5/node_modules/gitdown/dist/gitdown.js:231:11)
    at Gitdown.readFile (/home/david/code/eslint-plugin-jsdoc/node_modules/.pnpm/gitdown@3.1.5/node_modules/gitdown/dist/gitdown.js:265:27)
    at file:///home/david/code/eslint-plugin-jsdoc/src/bin/generateDocs.js:153:29
    at Array.map (<anonymous>)
    at generateDocs (file:///home/david/code/eslint-plugin-jsdoc/src/bin/generateDocs.js:152:5)
    at async Promise.all (index 0)
    at async generateDocsAndWriteToDisk (file:///home/david/code/eslint-plugin-jsdoc/src/bin/generateDocs.js:239:7)
    at async main (file:///home/david/code/eslint-plugin-jsdoc/src/bin/generateDocs.js:278:7) {
  errno: -2,
  syscall: 'lstat',
  code: 'ENOENT',
  path: '/home/david/code/eslint-plugin-jsdoc/file:'
}
 ELIFECYCLE  Command failed with exit code 1.
 
 ```
brettz9 commented 5 months ago

Don't worry about the docs, I can handle that. Yes, they are in a broken state, awaiting this PR to Gitdown.

brettz9 commented 5 months ago

Thanks for the PR!

github-actions[bot] commented 5 months ago

:tada: This PR is included in version 48.1.0 :tada:

The release is available on:

Your semantic-release bot :package::rocket: