Full v9 compatibility achieved internally


Sheriff release v25
This release introduces key updates to Sheriff:
ESLint V9 APIs Compatibility
Sheriff now fully supports ESLint V9 APIs for all plugins. Milestone.
There were some problematic plugins that could cause crashes in some instances, like eslint-plugin-react-hooks and eslint-plugin-import.
Now all plugins have been updated to their V9-compatible versions, resolving these issues.
Added eslint-plugin-remeda
Added support for Remeda with eslint-plugin-remeda.
If you use Remeda instead of Lodash, you should now disable lodash
in the config and enable remeda
.
import sheriff from "eslint-config-sheriff";
import { defineFlatConfig } from "eslint-define-config";
const sheriffOptions = {
react: false,
next: false,
astro: false,
lodash: false,
remeda: true,
playwright: false,
jest: false,
vitest: false,
};
export default defineFlatConfig([...sheriff(sheriffOptions)]);
Unified Type Exports
The types previously exported from @sherifforg/types
are now exported directly from eslint-config-sheriff
.
The @sherifforg/types
package is now deprecated. You can safely remove it and update your imports accordingly.
Compliance with the native Typescript support for the eslint.config.ts
file
Sheriff moved away from eslint-ts-patch and adopted the native support for TypeScript in the eslint.config.ts
file.
You can enable it by setting unstable_ts_config
, both in the CLI commands and in the VS Code extension settings.
New syntax for bootstrapping Sheriff projects
Now you can run pnpm create @sherifforg/config
instead of pnpm dlx create-sheriff-config
to bootstrap a new Sheriff project.
Minor improvements
- Astro linting is now configurable
- the
SheriffOptions
object is now optional. If not specified, all options will default tofalse
. - general fixes and improvements to the CLI. The experience should be much better now.
- reworked the
noRestrictedSyntaxOverride
option - exposed more useful variables from the main package
For more details, see the release notes.
Acknowledgments
Shoutout to all the people that contributed to these releases and a special big thanks to lishaduck for his help on a lot of issues and PRs!
How to Contribute
Sheriff thrives on community support. Here is how you can help:
- Contribute and Share Feedback: Fix bugs, suggest features, improve documentation, or join discussions. Start contributing today!
- Give a Star: Found Sheriff useful? ⭐ the project on GitHub to show your support.
Your support helps Sheriff move forward. Thank you!