unstale

npm / @babel/standalone

@babel/standalone

What changed in @babel/standalone 8, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-28.

6 breaking1 performance24 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.9 on npm

@babel/standalone 831 changes

Breaking changes 6

  • The parser now disallows named specifiers after * as ns, enforcing spec-compliant syntax.

    8.0.8release notes

  • The parser now disallows const x followed by a linebreak and of, enforcing spec-compliant syntax.

    8.0.8release notes

  • The parser now disallows arrow functions as a new callee and as an await operand.

    8.0.8release notes

  • The parser now disallows call expressions as arrow function parameters in sloppy mode.

    8.0.8release notes

  • The parser now disallows eval and arguments as class names.

    8.0.8release notes

  • Identifier definitions now use Unicode 18, changing which identifiers the parser accepts.

    8.0.6release notes

Performance 1

  • Spreading literals no longer requires arrayLikeToArray.

    8.0.8release notes

Fixes and other changes 24

  • _arrayWithHoles no longer bypasses a custom Symbol.iterator on array-backed Proxies.

    8.0.8release notes

  • The parser now allows arguments as a label in a class.

    8.0.8release notes

  • The parser now handles automatic semicolon insertion between a property initializer and escaped in.

    8.0.8release notes

  • Function IDs in labeled function declarations are now registered.

    8.0.8release notes

  • The parser now skips HTML-like comments during character lookahead.

    8.0.8release notes

  • The parser now allows automatic semicolon insertion after export default from without exportDefaultFrom.

    8.0.8release notes

  • With createParenthesizedExpressions enabled, the parser now rejects delete (x).

    8.0.8release notes

  • The parser now reports expression errors in object literals used as a member base.

    8.0.8release notes

  • Non-deferred imports now receive phase: null when deferredImportEvaluation is enabled.

    8.0.8release notes

  • The parser now handles automatic semicolon insertion between an arrow body and a /= regex.

    8.0.8release notes

  • The transform now wraps an enclosing loop when a nested for-head closure captures its bindings.

    8.0.8release notes

  • Decorators of TSParameterProperty are now visited during transformation.

    8.0.8release notes

  • The eslint-parser AST definition for AccessorProperty was fixed.

    8.0.7release notes

  • The helper now forwards .throw() to .return() correctly.

    8.0.7release notes

  • The parser now allows await as a function expression name inside an async arrow.

    8.0.7release notes

  • The function now allows a callback as its second argument.

    8.0.7release notes

  • Closures in for-loop initializers now capture the correct binding.

    8.0.7release notes

  • Evaluation now handles TypeScript expression wrappers.

    8.0.7release notes

  • Destructured bindings are no longer evaluated.

    8.0.7release notes

  • The helper now guards @@toPrimitive usage.

    8.0.7release notes

  • The transform now skips for-await loops, avoiding incorrect handling of asynchronous iteration.

    8.0.7release notes

  • The expression now returns false for static private fields before initialization.

    8.0.7release notes

  • Parsing of arrow function parameters inside ternaries with Flow is fixed.

    8.0.6release notes

  • The error message for invalid binary literal 0b19 is polished.

    8.0.6release notes