Skip to content

Error: multiple output @typescript-eslint/triple-slash-reference ESLint rule options were generated, but tslint-to-eslint-config doesn't have "merger" logic to deal with this #400

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
mgechev opened this issue Apr 24, 2020 · 0 comments · Fixed by #420
Labels
area: missing merger good first issue Good for newcomers; welcome aboard! status: accepting prs Please, send in a PR to resolve this! ✨

Comments

@mgechev
Copy link

mgechev commented Apr 24, 2020

Error: multiple output @typescript-eslint/triple-slash-reference ESLint rule options were generated, but tslint-to-eslint-config doesn't have "merger" logic to deal with this

💥 Missing Merger

  • tslint-to-eslint-config version: 0.6.0
  • ESLint version: 6.8.0

CLI Output

✨ 75 rules replaced with their ESLint equivalents. ✨

❗ 8 ESLint rules behave differently from their TSLint counterparts ❗
  * no-console:
    - Custom console methods, if they exist, will no longer be allowed.
  * space-before-function-paren:
    - Option "constructor" is not supported by ESLint.
    - Option "method" is not supported by ESLint.
  * camelcase:
    - Leading and trailing underscores (_) in variable names will now be ignored.
    - ESLint's camel-case rule does not allow pascal or snake case variable names. Those cases are reserved for class names and static methods.
  * no-underscore-dangle:
    - Leading or trailing underscores (_) on identifiers will now be forbidden.
  * no-invalid-this:
    - Functions in methods will no longer be ignored.
  * no-unused-expressions:
    - The TSLint optional config "allow-new" is the default ESLint behavior and will no longer be ignored.
  * prefer-arrow/prefer-arrow-functions:
    - ESLint does not support allowing standalone function declarations.
    - ESLint does not support allowing named functions defined with the function keyword.
  * eqeqeq:
    - Option "smart" allows for comparing two literal values, evaluating the value of typeof and null comparisons.

❌  error thrown. ❌
  Check ./tslint-to-eslint-config.log for details.
 ️
❓ 1 rules do not yet have ESLint equivalents ❓
  See generated log file; defaulting to eslint-plugin-tslint for these rules.

⚡  packages are required for new ESLint rules. ⚡
  eslint-plugin-import
  eslint-plugin-jsdoc
  prefer-arrow

✅ All is well! ✅

File Output

Error: multiple output @typescript-eslint/triple-slash-reference ESLint rule options were generated, but tslint-to-eslint-config doesn't have "merger" logic to deal with this.
Please file an issue at https://github.com/typescript-eslint/tslint-to-eslint-config/issues/new?template=missing_merger.md 🙏

�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "component-class-suffix"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "component-selector"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "contextual-lifecycle"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "directive-class-suffix"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "directive-selector"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "import-spacing"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-conflicting-lifecycle"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-host-metadata-property"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-input-rename"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-inputs-metadata-property"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-output-native"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-output-on-prefix"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-output-rename"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "no-outputs-metadata-property"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "template-banana-in-box"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "template-no-negated-async"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "use-lifecycle-interface"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "use-pipe-transform-interface"�[39m
�[33mtslint-to-eslint-config does not know the ESLint equivalent for TSLint's "whitespace"�[39m
�[33m�[39m

Reproduction

  • Create a new Angular CLI project with version ^9.1.1 (ng new foo)
  • Go to the project directory and run npx tslint-to-eslint-config
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: missing merger good first issue Good for newcomers; welcome aboard! status: accepting prs Please, send in a PR to resolve this! ✨
Projects
None yet
2 participants