Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release proposal: standard v10 #808

Closed
feross opened this issue Mar 2, 2017 · 8 comments
Closed

Release proposal: standard v10 #808

feross opened this issue Mar 2, 2017 · 8 comments
Labels
Milestone

Comments

@feross
Copy link
Member

feross commented Mar 2, 2017

Planned release date: Apr 1, 2017. (approx. 29 days from the date of this issue)

Try it now: npm install standard@beta --global

New features

  • Update ESLint from 3.15.x to 3.16.x.

New rules

(Estimated % of affected standard users in parens)

  • Disallow using deprecated Node.js APIs (node/no-deprecated-api) #693 (13%)
    • Ensures that code always runs without warnings on the lastest versions of Node
    • Ensures that safe Buffer methods (Buffer.from(), Buffer.alloc()) are used instead of Buffer()
  • Enforce callbacks always called with Node.js-style error first (standard/no-callback-literal) #623 (3%)
    • Functions named callback, cb, or next must be called with null, undefined, or an Error object as the first argument
    • Prevents accidentally using a string instead of an Error object
    • Prevents confusing callbacks that do not follow the Node.js pattern
  • Disallow any imports that come after non-import statements (import/first) #806 (1%)
  • Disallow unnecessary return await (no-return-await) #695 (0%)
  • Disallow comma-dangle in functions (comma-dangle) #787 (0%)
  • Disallow repeated exports of names or defaults (import/export) #806 (0%)
  • Disallow import of modules using absolute paths (import/no-absolute-path) #806 (0%)
  • Disallow Webpack loader syntax in imports (import/no-webpack-loader-syntax) #806 (0%)
  • Disallow comparing against -0 (no-compare-neg-zero) (0%)

Changed rules

  • Relax rule: allow using ...rest to omit properties from an object (no-unused-vars) #800
    • This is a common and useful pattern in React/JSX apps!
  • Relax rule: allow Flow import type statements (import/no-duplicates) #599
    • These are no longer considered to be "duplicate imports"
  • Relax rule: Treat process.exit() the same as throw in code path analysis (node/process-exit-as-throw) #699
    • Makes certain other rules work better and give fewer false positives
  • Relax rule: allow Unnecessary Labels (no-extra-label)
    • Redundant, since "no-labels" is already enabled, which is more restrictive
@feross
Copy link
Member Author

feross commented Mar 2, 2017

I decided to push the planned release date for 10.0.0-beta.0 forward by a month so we can do our part to warn users about Node deprecations long before Node itself hard-deprecates those APIs.

The largest "ecosystem breakage" is due to that change: checking for deprecated API usage.

@feross feross added this to the standard v10 milestone Mar 2, 2017
@feross feross added the meta label Mar 2, 2017
@yoshuawuyts
Copy link
Contributor

yoshuawuyts commented Mar 2, 2017 via email

@Flet
Copy link
Member

Flet commented Mar 6, 2017

April Fools Day Release 👍

@capaj
Copy link
Contributor

capaj commented Mar 7, 2017

next must be called with null, undefined, or an Error object as the first argument

@feross won't this cause problems for people writing koa.js-see: http://koajs.com/#cascading ?

@dcousens
Copy link
Member

dcousens commented Mar 7, 2017

@capaj isn't that the same as undefined as the first argument?

@capaj
Copy link
Contributor

capaj commented Mar 7, 2017

@dcousens oh right, I've misinterpreted that rule.

@feross
Copy link
Member Author

feross commented Apr 5, 2017

standard version 10.0.0 is released!

The changelog is here: https://github.com/feross/standard/blob/master/CHANGELOG.md#1000---2017-04-04

Please open a new issue if you find any problems with the release!

@feross feross closed this as completed Apr 5, 2017
@feross
Copy link
Member Author

feross commented Apr 5, 2017

Here's the official tweet if you want to retweet it 👍

https://twitter.com/StandardJS/status/849428940313821185

@lock lock bot locked as resolved and limited conversation to collaborators May 10, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
Archived in project
Development

No branches or pull requests

5 participants