ESLint v2.5.0 released

We just pushed ESLint v2.5.0, which is a minor release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release.

Highlights

This is a summary of the major changes you need to know about for this version of ESLint.

Node.js without OpenSSL Compatibility

Previously, the --cache feature was using the Node.js crypto module to calculate hashes of files to determine which files had changed. Because of this, ESLint wouldn’t work on Node.js compiled without OpenSSL. We changed the --cache feature to use a third-party hash function instead, allowing us to remove our dependency on the Node.js crypto module and ensure ESLint works fine for Node.js without OpenSSL.

Bundled Dependencies

This is the first version of ESLint that bundles its dependencies. Recent events have made it clear that for a development tool like ESLint, bundling dependencies makes a lot of sense. This will ensure a couple of things:

  1. That everyone using v2.5.0 of ESLint will be using the same dependencies, meaning that dependency updates won’t break a previously working ESLint version.
  2. We won’t fall victim to dependencies that were available at release time suddenly disappearing.

Bundling dependencies does mean that npm cannot dedupe ESLint dependencies upon installation, but as ESLint is a development tool only, we felt like this tradeoff was worth making to ensure that any given ESLint version that was validated to work at release time will continue to work for everyone no matter what.

New Rules

Features

Enhancements

Bug Fixes

Documentation

Dependency Upgrades