Releases: xojs/xo
Releases · xojs/xo
v0.61.0-2
v0.61.0-1
v0.61.0-0
Help us test this pre-release 🙏
Breaking
- Requires Node.js 18.20
- Requires ESLint flat config
- Configuration now only through
package.json
andxo.config.{js,cjs,mjs,ts,cts,mts}
files - Switched from
eslint-plugin-import
toeslint-plugin-import-x
(since it's better maintained)- You will have to update ignore comments and config from
import
toimport-x
- You will have to update ignore comments and config from
- CLI flags removed:
--plugin
: Configurable via config file--extend
: Configurable via config file--global
: Configurable via config file--extension
: Configurable via config file--env
: No longer relevant with new config system--node-version
: Removed as it only affected unsupported Node.js versions--reporter
: Removed due to potential lookup reliability issues
- Node.js engines check removed
- Was only active in unsupported Node.js versions
- Webpack lookup and import resolution removed
- Considered too niche for core functionality
Improvements
- React support
- Prettier compatibility mode with
{prettier: 'compat'}
option- Disables all Prettier-affected stylistic rules, and maintains existing Prettier functionality otherwise
- Enhanced stdin handling:
--stdin-filename
now optional- Supports TypeScript files via stdin
New rules
@typescript-eslint/no-wrapper-object-types
@typescript-eslint/no-unsafe-function-type
@typescript-eslint/no-deprecated
@stylistic/type-named-tuple-spacing
@stylistic/type-generic-spacing
unicorn/consistent-date-clone
unicorn/no-named-default
unicorn/consistent-assert
unicorn/no-instanceof-builtins
unicorn/no-accessor-recursion
Thanks
Huge thanks to @spence-s for doing most of the work for this 🎉
v0.60.0
New rules
unicorn/no-length-as-slice-end
unicorn/prefer-global-this
unicorn/prefer-math-min-max
unicorn/consistent-existence-index-check
Improvements
- Update dependencies 0c2be9c
v0.59.3
v0.59.2
v0.59.1
v0.59.0
New rules
unicorn/no-single-promise-in-promise-methods
unicorn/no-await-in-promise-methods
unicorn/no-anonymous-default-export
unicorn/consistent-empty-array-spread
unicorn/no-invalid-fetch-options
unicorn/no-magic-array-flat-depth
unicorn/prefer-structured-clone
unicorn/no-negation-in-equality-check
@typescript-eslint/no-unnecessary-parameter-property-assignment
@typescript-eslint/use-unknown-in-catch-callback-variable
Breaking
v0.58.0
- TypeScript: Disable
default-case
rule to avoid conflict with stricter@typescript-eslint/switch-exhaustiveness-check
rule