Back to Explore

estools/esutils

GitHub
1 watchersOpen source

Last release:

esutils is a utility box for ECMAScript language tools, providing helper APIs for working with JavaScript code. It includes functions to classify AST nodes (for example expressions, statements, and iteration statements), check character and syntax properties (such as identifier parts and whitespace), and determine whether strings are keywords or reserved words across ECMA262 editions.

Project status

  • Maintenance status: The upstream repo shows a push on 2022-04-07, but the most recent documented package updates in the provided history stop at 2.0.3 (2019-07-31), suggesting long gaps and no clear sign of active release maintenance as of 2026-06-11.
  • Update cadence: Based on the provided version history, updates appear to have been infrequent, with multi-year gaps (for example, 2019 to 2015 to 2014, and no newer version entries shown after 2019). The 2022 upstream push does not clearly translate into new published updates in the evidence shown.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • 2.0.3

    Release 2.0.3 updates the project to Unicode 9.0.0 for identifier/regex generation and adjusts behavior around identifier recognition and whitespace detection. The release notes section is empty, so the functional impact below is inferred from the actual code and test changes.

  • 2.0.2

    Release 2.0.2 contains no provided release notes. The code changes are localized to internal character classification logic in lib/code.js, plus a package version bump.

  • 2.0.1

    Release 2.0.1 was published on 2015-03-14, but the publisher did not include any release notes. As a result, there is no documented information about new features, bug fixes, breaking changes, security updates, or migration steps for this version.

  • 2.0.0

    Release 2.0.0 contains no published release notes. The code diff shows a major API shift around ECMAScript identifier handling (splitting ES5 vs ES6 logic), plus an underlying Unicode version upgrade that can change which identifier strings are considered valid.

    Features
  • 1.1.6

    Release 1.1.6 appears to primarily finalize the package version (from a dev tag to a released version) and make a small internal refactor in the ECMAScript character classification logic. No release notes were provided, so changes in behavior or API are not documented.

  • 1.1.5

    Release 1.1.5 does not include any published release notes, so the only observable changes come from the code diff. The update appears to be a minor housekeeping change plus a small refactor in identifier character classification logic within lib/code.js, and a package version finalization in package.json.

  • 1.1.4

    Release 1.1.4 contains no published release notes. The code changes are limited to a small set of logic updates in lib/ast.js (plus a package.json version bump).

    Breaking
  • 1.1.3

    Release 1.1.3 appears to add a new AST helper for detecting “problematic” if-statement nesting patterns. No release notes were provided by the publisher, so the documented scope of the change cannot be verified against the changes in the repository.

    Features
  • 1.1.2

    Version 1.1.2 primarily adds a new AST helper, `ast.trailingStatement(node)`, intended to extract the trailing `Statement` from several statement wrapper node types. The provided release notes are empty, so documented changes cannot be verified against the code changes.

    Features
  • 1.1.1

    Release 1.1.1 was published on 2014-07-12, but no release notes were provided by the publisher. There is no actionable information available here to identify new features, breaking changes, bug fixes, or security updates.