Skip to content

📌 Mocha 12 Release Plan #5357

Open
Open
@JoshuaKGoldberg

Description

@JoshuaKGoldberg

We're working on another new major version of Mocha! 📦

Mocha 11 was the first new major version of Mocha in 3 years. It was released on December 2nd, 2024. It contained no new bug fixes or features; it only updated the glob dependency (#5148 -> #5250) and raised the minimum supported Node.js version from 14.0.0 to 18.18.0 (#5206 -> #5206). The small changes were because, as mentioned in #5027, we're a new volunteer maintenance team and want to tread carefully with breaking changes.

Mocha 12 will also be a careful step forward. It will also contain no new features or intentional breaking changes in Mocha's code. Instead, Mocha 12 will be used to:

  • Bump the minimum Node.js version to ^20.19.0 || >=22.12.0: which will allow Mocha to rely on require(ESM)
  • Bump all production dependencies to their latest versions - many of which are ESM-only
  • Remove long-deprecated options and any other known dead code
  • Remove usage of util.inherits and convert all manual prototype management to ECMAScript classes

You can see the full list of issues in scope under milestone/66 v12.0.0.

This version upgrade is intentionally meant to be "boring" for end-users. However, it's very exciting for us as maintainers -- in that it will enable us to produce new features that will be very exciting for end-users later on. That includes:

We're looking forward to continuing Mocha's modernization through 2025 and beyond. If there's anything you feel we should work on that isn't already on Mocha's issue tracker, please do file it there or ask in Mocha's Discord. We'd love to hear from you. 🤎

Metadata

Metadata

Assignees

No one assigned

    Labels

    type: discussiondebates, philosophy, navel-gazing, etc.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions