Skip to content

v4.0.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 17:47
4b8f2f6

4.0.0 (2026-10-06)

⚠ BREAKING CHANGES

As a semver-major release it also includes a number of relatively small breaking changes, outlined below:

  • Ahead-of-time (AOT) compilation is enabled by default now. This should result in overall faster startup and execution times with no other real difference in experience. If you find issues with stability or performance, it can be disabled by compiling with --disable-aot.
  • Modules are now compiled in JavaScript standard module mode (import et al, vs require). Toplevel await has been enabled as part of this. You can opt out of this behavior with --disable-top-level-await.
  • Accessors in general no longer throw. They will return null on internal errors instead. If you were catching errors from accessors previously, you’ll need to check for null now.

Features

  • Allow URIs longer than 8192 bytes (#1585) (6ac66df)
  • enable AOT by default (#1598) (dfcc17f)
  • Some new known features as part of the StarlingMonkey upgrade:
    • spki and pkcs8 crypto support (used by jose, for example)
    • AbortController and AbortSignal support

Bug Fixes

  • change zip extractor for wasmtime package (5a8886e)
  • Ensure additions to headers in beforeSend are applied (#1600) (1ae9e5b)
  • get documentation generation working again (#1595) (9e3f16b)
  • handle potential NULL pointer dereference in debug logging (#1593) (1e5eb8b)
  • npm audit fix (47ca0dc)
  • reset pending unhandled promise rejection between requests (#1596) (f7d6c75)
  • Reset StarlingMonkey timers between requests (#1597) (2b35d6f)