Releases: xojs/xo
v0.21.0
Highlights
- Dropped support for Node.js 4 and 5 as they reached end of life. Node.js 6 is the minimum required version.
- Upgrade to Prettier 1.12.1.
- The default value for
trailingComma
Prettier option is nownone
. f67ff58 - Disable unicorn/number-literal-case when using Prettier to avoid conflict. 4fd6991
- Ignore
prettier-ignore
comments in capitalized-comments rule. xojs/eslint-config-xo@6e417ff - Fix missed detection of incorrect indentation with indent rule. xojs/eslint-config-xo@145993e
- Allow named function in prefer-arrow-callback. xojs/eslint-config-xo@bda02cb
New rules
- valid-jsdoc
- promise/no-new-statics
- promise/valid-params
- import/no-self-import
- import/no-useless-path-segments
Removed rules
v0.20.0
This release is way overdue, so glad to finally have it out! It includes a major ESLint upgrade, huge performance improvements, Prettier support, lots of new rules, and bug fixes.
The project was recently moved to a GitHub organization, and we got a new team member, Pierre Vanduynslager ✨
We now also have configs for TypeScript (using tslint
) and CSS & Sass (using stylelint
). And don't forget, we already have a config for React.
Many of the new rules in this release are from the eslint-plugin-unicorn
plugin, which could use some contributions.
Highlights
- Upgraded to ESLint 4. a11e288
- Added optional Prettier support. fd89175
- Improved performance. 552cbb1
- Now toggles rules based on the
engines
field inpackage.json
. 0d18368 - Disabled
linebreak-style
rule on Windows. xojs/eslint-config-xo@3f81796 - Made the
spaced-comment
rule more lenient. xojs/eslint-config-xo@e4f1f36 - Now allows
_
as argument name in theno-unused-vars
rule. xojs/eslint-config-xo@dda366b - The
--open
flag now opens errors first and not warnings. 6f6a606 - Removed deprecated
--compact
CLI flag. 652a6e5 - Excluded
babel-register
andbabel-polyfill
from theno-unassigned-import
rule. 70d6ab4 - Sets
ecmaVersion
to2018
. 9859dfb
New rules
22 new rules!
semi-style
xojs/eslint-config-xo@0b1680efor-direction
xojs/eslint-config-xo@c957c7fswitch-colon-spacing
xojs/eslint-config-xo@c1c8fc7no-buffer-constructor
xojs/eslint-config-xo@ee366cbgetter-return
xojs/eslint-config-xo@40e1442function-paren-newline
xojs/eslint-config-xo@9e90fdclines-between-class-members
xojs/eslint-config-xo@c7f63cdarray-bracket-newline
xojs/eslint-config-xo@e2f3748unicorn/prefer-add-event-listener
unicorn/prefer-spread rule
unicorn/no-unsafe-regex
unicorn/error-message
unicorn/import-index
unicorn/new-for-builtins
unicorn/regex-shorthand
unicorn/escape-case
unicorn/no-hex-escape
promise/no-return-wrap
4273f8apromise/no-return-in-finally
4273f8anode/no-unpublished-bin
16fb8e2node/process-exit-as-throw
16fb8e2node/no-deprecated-api
16fb8e2
All changes
Why is this not 0.19.0? That version got tainted by an incorrect publish a long time ago.
0.18.2
We finally fixed all the gitignore issues. Thanks to hard work by @marionebl and @schnittstabil.
The --open
flag now also supports VS Code.
0.18.1
Removes the promise/no-promise-in-callback
and promise/no-callback-in-promise
rules. They were more annoying than useful. You usually have to deal with a lot of non-Promise APIs, so I had to disable it too many times. Some APIs will also never be Promise, like events and streams. 2253852
0.18.0
Highlights
- The
esnext
option is nowtrue
by default. This means it now enforces the use of as much ES2015+ syntax as Node.js 4 supports. 61c046c - 21 new rules:
- Unicorn plugin: sindresorhus/eslint-plugin-unicorn@v1.0.0...v2.1.0
- AVA plugin: avajs/eslint-plugin-ava@a0156f1
- Promise plugin: 3e1a318
- ESLint: xojs/eslint-config-xo@v0.17.0...v0.18.0
- 27 additional ESLint rules are now auto-fixable with
$ xo --fix
. - Handle negative gitignore patterns correctly. f8e1e3d
- Vim plugin for XO.
- Added
--stdin-filename
CLI flag. 0d88cde - Added support for auto-fixing code from stdin. 6d6d642
- Added tip on how to use XO with monorepos. cb63c5f
- Removed the
import/no-dynamic-require
rule. 29a5263 - Ignores directories when receiving an empty extension. a0ae248
- Don't trigger import duplication errors for Flow type imports. da188e5
All changes
0.17.0
Check out the new feature highlight on what makes XO awesome.
Also excited to share that Hyper.app is now using XO \o/
Highlights
- Dropped support for Node.js 0.10 and 0.12 as ESLint did it and we had to follow. c9b9b84
- Many new rules (25 in total!) and changes to existing ones:
- ESLint: xojs/eslint-config-xo@v0.15.0...v0.17.0
- Unicorn plugin: sindresorhus/eslint-plugin-unicorn@v0.5.0...v1.0.0
- AVA plugin: avajs/eslint-plugin-ava@v2.0.0...v3.1.0
- Import plugin: e8b0a30
- 25 additional ESLint rules are now auto-fixable with
$ xo --fix
. Try it out when upgrading!
(If you want to convert ES5 syntax to ES6, you might want to run it with$ xo --fix --esnext
) - Removed
babel-eslint
as ESLint now supports async/await. See theparser
option if you still need it, and ensure you havebabel-eslint
indevDependencies
. 04733f1 - Now ignores paths from
.gitignore
. fa99f36 - Added
--quiet
CLI flag. bb76a2d - Added
extension
option. 3c42847 - Added
settings
option. 85c6094 - Added
parser
option. 85c6094 - Added abiliy to skip a package.json file and continue looking for XO config. 8933f51
- Considerable less amount of dependencies resulting in faster install and taking up less diskspace.