Skip to content

10.2.0

Compare
Choose a tag to compare
@ilia-kebets-sonarsource ilia-kebets-sonarsource released this 28 Apr 14:04
· 508 commits to master since this release
2007aa0

https://github.com/SonarSource/SonarJS/milestone/71?closed=1

This will be released in SonarQube 10.1

New rules

  1. Add rule S6606: Nullish coalescing should be preferred
  2. Add rule S6598: Function types should be preferred
  3. Add rule S6594: "RegExp.exec()" should be preferred over "String.match()"
  4. Add rule S6583: Enum members should not mix value types
  5. Add rule S6590: "as const" assertions should be preferred
  6. Add rule S6582: Optional chaining should be preferred
  7. Add rule S6578: Enum values should be unique
  8. Add rule S6572: Enum member values should be either all initialized or none
  9. Add rule S6571 (no-redundant-type-constituents): Redundant types should not be used
  10. Add rule S2094 (no-empty-class-check): Classes should not be empty
  11. Add rule S6565: prefer-return-this-type
  12. Add rule S6569: Unnecessary type constraints should be removed
  13. Add rule S6568 (no-confusing-non-null-assertion)
  14. Add rule S6564: Redundant type aliases should not be used
  15. Add rule S6551 (no-base-to-string): Objects and classes converted or coerced to strings should define a "toString()" method
  16. Add rule S6557: Ends of strings should be checked with "startsWith()" and "endsWith()"
  17. Add rule S6550 (prefer-literal-enum-member): All enum members should be literals

Improved rules

  1. Update S3402 (no-incorrect-string-concat): Consider the addition assignment operator
  2. Update rule S6544: add TypeScript/eslint's no-floating-promises rule
  3. Update rule S6544: add no-misused-promises cases
  4. Update S2871 (no-alphabetical-sort): Cover cases from require-array-sort-compare
  5. Update S4139 (no-for-in-array): Cover cases from TypeScript ESLint implementation
  6. Fix FP S131 (switch-without-default): Ignore exhaustive switches on unions and enums