Skip to content

v0.9.0

Choose a tag to compare

@fansenze fansenze released this 31 Aug 07:41
· 95 commits to main since this release

Highlights

All non-deprecated typescript-eslint rules are now supported

Rslint's Go catalog now implements all 125 rules that @typescript-eslint/eslint-plugin v8.68.0 does not mark as deprecated, up from 124 in v0.8.2. ESLint core coverage also rises from 187 to 194 of the 199 rules not marked as deprecated in ESLint v10.9.1 (97.5%).

What's Changed

Breaking Changes 🍭

Legacy JSON config files are no longer loaded

Rslint no longer loads rslint.json or rslint.jsonc while linting. Passing one to --config is rejected, and automatic discovery ignores these files. Run the following command before upgrading to migrate a legacy JSON/JSONC config to a JavaScript or TypeScript module config:

rslint --init

The low-level API config and high-level API overrideConfig JSON payloads remain supported.

Default CLI text output has changed

The default human-readable formatter now emits start and terminal success/error status lines and reports one canonical file count, replacing the previous Found ... summary. Scripts that parse the default text must update or switch to --format jsonline; the jsonline, github, and gitlab formats and exit-code behavior are unchanged.

New Features 🎉

Bug Fixes 🐞

  • fix(typescript-eslint): align prefer-readonly-parameter-types rule by @swwind in #1902
  • fix(typescript-eslint): align consistent-type-imports rule by @swwind in #1899
  • fix: align prefer-optional-chain with upstream behavior by @fansenze in #1928
  • fix: align no-invalid-this edge semantics by @fansenze in #1931
  • fix: align no-unused-vars removal suggestions by @fansenze in #1932
  • fix: align no-empty with ESLint by @fansenze in #1934
  • fix: align no-non-null-assertion suggestions by @fansenze in #1933
  • fix: align require-await suggestions by @fansenze in #1935
  • fix: align plugin edits with ESLint API by @fansenze in #1936
  • fix: preserve JSDoc class field names by @fansenze in #1938
  • fix: align no-array-concat-in-loop variable lookup by @fansenze in #1940
  • fix: align throw-new-error with upstream semantics by @fansenze in #1943
  • fix: align React fragment edge cases by @fansenze in #1947
  • fix: preserve logical assignment semantics by @fansenze in #1948
  • fix: align no-magic-array-flat-depth with Unicorn v73 by @fansenze in #1949
  • fix: align accessor token and range semantics by @fansenze in #1950
  • fix(typescript-eslint): align require-await rule by @swwind in #1926
  • fix(typescript-eslint): align no-unsafe-argument rule by @swwind in #1925
  • fix(typescript-eslint): align no-unsafe-enum-comparison rule by @swwind in #1924
  • fix: refresh playground diagnostics after edits by @fansenze in #1953
  • fix: preserve class member suggestion semantics by @fansenze in #1954
  • fix: preserve enum comparison semantics by @fansenze in #1955
  • fix: validate Unicode regex rule options by @swwind in #1956
  • fix: handle external TypeScript references in id-match by @fansenze in #1958
  • fix: align identifier and RegExp tracking with ESLint by @fansenze in #1959
  • fix: preserve config roots for scoped ignores by @fansenze in #1960

Document 📖

Other Changes

New Contributors

Full Changelog: v0.8.2...v0.9.0