Repository navigation
Releases
Releases · babel/babel
v7.29.13
v7.29.13 (2026-11-04)
🐛 Bug Fix
babel-generator,babel-parser- #18522 fix(parser): start decorated object members at their first decorator (@babel-bot)
babel-parser- #18520 fix(parser): allow TS imports to define exports declared before them (@babel-bot)
- #18485 fix(parser): allow lone
yieldbeforeinin an Annex B for-in init (@babel-bot) - #18483 fix(parser): respect unicode escape in
isUnparsedContextual(@babel-bot) - #18452 fix(parser): remove non-decimal prefix from bigint (@babel-bot)
- #18449 fix(parser): allow await as a function expression name inside async arrow (@babel-bot)
- #18453 Disallow new import prop access (@babel-bot)
- #18450 Improve F# pipeline direct body check (@babel-bot)
- #18446 fix(parser): set phase: null for non-deferred imports with deferredImportEvaluation (#18313) (@babel-bot)
- #18448 Fix TypeScript parser failing on async calls in ternary consequent (@babel-bot)
babel-generator- #18521 fix(generator): print override modifier of TSParameterProperty (@babel-bot)
- #18509 fix(generator): do not apply
jsescnumber radix to non-integer literals (@babel-bot) - #18500 fix(generator): escape
ofbinding of a using declaration in for-of head (@babel-bot) - #18461 fix: invalid
minified: trueoutput for new expression (@babel-bot) - #18476 fix: preserve trailing comma in optional call args (@babel-bot)
- #18456 fix(generator): keep parens for ?. chain in tag (@babel-bot)
- #18454 fix(generator): preserve type modifier in TSImportEqualsDeclaration (@babel-bot)
babel-plugin-transform-block-scoping- #18518 Fix initialization of nested for loop head declarations (@babel-bot)
- #18465 fix: improve for loop closure environment check (@babel-bot)
- #18464 fix: assign closure body after handling return (@babel-bot)
babel-helper-module-transforms,babel-plugin-transform-modules-commonjs- #18499 fix: commonjs namespace re-export with a string export name (@babel-bot)
babel-helper-skip-transparent-expression-wrappers,babel-plugin-transform-optional-chaining- #18482 Fix optional call losing the receiver through a TS instantiation expression (@babel-bot)
babel-plugin-proposal-partial-application- #18479 fix(partial-app): support super method call (@babel-bot)
babel-register- #18481 fix(register): skip hook for ignored files (@babel-bot)
babel-helper-create-class-features-plugin,babel-plugin-transform-private-property-in-object- #18462 Return false for
#x inon static private fields before initialization (@babel-bot)
- #18462 Return false for
babel-traverse- #18480 fix(babel-traverse): check variable shadowing for global object callees (@babel-bot)
babel-helper-create-class-features-plugin,babel-plugin-proposal-decorators- #18478 Fix decorators interaction with abstract/declare fields (@babel-bot)
babel-core- #18463 fix(core): createConfigItem allows cb as 2nd arg (@babel-bot)
babel-plugin-bugfix-safari-rest-destructuring-rhs-array- #18457 fix(bugfix): bound check before array access (@babel-bot)
- Other
- #18459 Fix eslint-parser AST definition of AccessorProperty (@babel-bot)
babel-plugin-transform-destructuring- #18460 fix: only collapse the empty-object check when it targets the declared binding (@babel-bot)
babel-helpers,babel-plugin-transform-async-generator-functions,babel-runtime-corejs3- #18458 Fix
asyncIteratorhelper forwarding.throw()to.return()(@babel-bot)
- #18458 Fix
babel-plugin-transform-for-of- #18455 Skip
for awaitintransform-for-of(@babel-bot)
- #18455 Skip
babel-helper-string-parser,babel-parser- #18447 fix: polish error message for invalid binary 0b19 (@babel-bot)
Committers: 1
- Babel Bot (@babel-bot)
v8.1.1
v8.1.0
v8.1.0 (2026-11-02)
NOTE: @babel/plugin-proposal-bytes-modules, @babel/plugin-proposal-filtered-namespaces, and @babel/plugin-proposal-text-modules were accidentally excluded from this release. We're working on re-publishing the as 8.1.1.
Thanks @Kjubikstronk for your first PR!
🚀 New Feature
babel-helper-module-transforms,babel-helper-transform-fixture-test-runner,babel-helpers,babel-plugin-proposal-bytes-modules,babel-plugin-proposal-filtered-namespaces,babel-plugin-proposal-import-wasm-source,babel-plugin-proposal-text-modules,babel-plugin-transform-dynamic-import,babel-plugin-transform-json-modules,babel-runtime-corejs3,babel-runtime,babel-standalone- #18316 Add transform support for filtered namespaces (@nicolo-ribaudo)
babel-generator,babel-helper-import-to-platform-api,babel-helper-module-transforms,babel-parser,babel-plugin-transform-export-namespace-from,babel-plugin-transform-json-modules,babel-plugin-transform-modules-amd,babel-plugin-transform-modules-commonjs,babel-plugin-transform-modules-systemjs,babel-plugin-transform-modules-umd,babel-traverse,babel-types- #18311 Add parsing&printing support for filtered namespaces (@nicolo-ribaudo)
- Other
babel-helper-import-to-platform-api,babel-helper-transform-fixture-test-runner,babel-helpers,babel-plugin-proposal-bytes-modules,babel-plugin-proposal-import-wasm-source,babel-plugin-proposal-text-modules,babel-plugin-transform-json-modules,babel-runtime-corejs3,babel-runtime- #17817 Add support for
type: bytesandtype: textimports (@nicolo-ribaudo)
- #17817 Add support for
babel-generator,babel-parser,babel-traverse,babel-typesbabel-generator,babel-parser,babel-typesbabel-generator,babel-helper-module-transforms,babel-parser,babel-plugin-transform-export-namespace-from,babel-plugin-transform-modules-amd,babel-plugin-transform-modules-commonjs,babel-plugin-transform-modules-systemjs,babel-plugin-transform-modules-umd,babel-types- #18310 Add parsing&printing support for
export defer(@nicolo-ribaudo)
- #18310 Add parsing&printing support for
babel-cli,babel-core,babel-generator,babel-helper-transform-fixture-test-runner- #18006 Add experimental support for range mappings in source maps (@nicolo-ribaudo)
babel-corebabel-core,babel-plugin-transform-classes- #18387 Add
noUninitializedThisassumption (@nicolo-ribaudo) - #18386 Add
noClassPrototypeAssignandnoConstructorPrimitiveReturn(@nicolo-ribaudo)
- #18387 Add
🐛 Bug Fix
babel-parserbabel-helper-skip-transparent-expression-wrappers,babel-plugin-transform-optional-chaining- #18477 Fix optional call losing the receiver through a TS instantiation expression (@Kjubikstronk)
🔬 Output optimization
Committers: 4
- Babel Bot (@babel-bot)
- Huáng Jùnliàng (@JLHwung)
- Miodrag Obradovic (@Kjubikstronk)
- Nicolò Ribaudo (@nicolo-ribaudo)
v8.0.10
v8.0.10 (2026-10-29)
Thanks @dagemawinegash, @nyan-left, @saiyam-jain-dev, and @yulman2207 for your first PRs!
🐛 Bug Fix
babel-parser- #18420 fix(parser): improve radix literal rounding (@JLHwung)
- #18372 fix(parser): allow parenthesized assignment target in arrow initializer (@JLHwung)
- #18410 fix(parser): do not record strict mode errors during lookahead (@JLHwung)
- #18433 fix(parser): invalid expectOnePlugin usage (@JLHwung)
- #18409 fix(parser): handle ASI after let followed by a reserved word on the next line (@JLHwung)
- #18406 fix(parser): parser should not crash for
import defer {}(@JLHwung) - #18407 fix(parser): record start location in
startNodeAt(@JLHwung)
babel-plugin-transform-block-scopingbabel-generator- #18418 fix(generator): keep aliases of string-literal module specifiers (@JLHwung)
- #18427 Fix missing parentheses around TypeScript assertion targets (@dagemawinegash)
- #18324 fix: invalid
minified: trueoutput for new expression (@JLHwung) - #18437 fix(generator): preserve type modifier in TSImportEqualsDeclaration (@saiyam-jain-dev)
- #18424 Keep parentheses around TSInstantiationExpression operand (@yulman2207)
- #18417 fix(generator): do not disallow line break after import source (@JLHwung)
babel-plugin-transform-optional-chaining,babel-traversebabel-helper-create-class-features-plugin,babel-plugin-proposal-decorators- #18224 fix: avoid removable fields as decorator evaluation hosts (@nyan-left)
babel-typesbabel-plugin-transform-classes- #18384 Leave loose class prototype mutable with accessors (@nicolo-ribaudo)
🏠 Internal
babel-build-external-helpers,babel-core,babel-helpers,babel-plugin-transform-async-generator-functions,babel-plugin-transform-class-properties,babel-plugin-transform-modules-commonjs,babel-plugin-transform-modules-systemjs,babel-plugin-transform-regenerator,babel-runtime-corejs3,babel-runtime- #18397 Mangle top level names in helpers (@nicolo-ribaudo)
🏃♀️ Performance
🔬 Output optimization
Committers: 8
- Deimantas Jakovlevas (@nyan-left)
- Huáng Jùnliàng (@JLHwung)
- Joelle Mahfoud (@joellemd)
- Nicolò Ribaudo (@nicolo-ribaudo)
- Saiyam Jain (@saiyam-jain-dev)
- Yuly Cohen (@yulman2207)
- @dagemawinegash
- @liuxingbaoyu
v7.29.12
v7.29.12 (2026-10-29)
🐛 Bug Fix
babel-parser- #18445 fix(parser): improve radix literal rounding (@babel-bot)
- #18442 fix: allow parenthesized assignment target in arrow initializer (@babel-bot)
- #18440 fix(parser): do not record strict mode errors during lookahead (@babel-bot)
- #18434 fix(parser): invalid expectOnePlugin usage (@babel-bot)
- #18431 fix(parser): parser should not crash for
import defer {}(@babel-bot) - #18432 fix(parser): handle ASI after let followed by a reserved word on the next line (@babel-bot)
babel-plugin-transform-block-scoping- #18441 fix: closures in for-loop test and update capture wrong binding (@babel-bot)
babel-generator- #18439 fix(generator): keep aliases of string-literal module specifiers (@babel-bot)
- #18426 Keep parentheses around TSInstantiationExpression operand (@babel-bot)
babel-plugin-transform-optional-chaining,babel-traverse- #18428 fix:
Scope#pushshould not push iife param after rest element (@babel-bot)
- #18428 fix:
babel-helper-create-class-features-plugin,babel-plugin-proposal-decorators- #18225 [7.x backport] fix: avoid removable fields as decorator evaluation hosts (@nyan-left)
Committers: 2
- Babel Bot (@babel-bot)
- Deimantas Jakovlevas (@nyan-left)
v8.0.9
v8.0.9 (2026-10-23)
This release contains no changes. It is needed only to update the repo (which is based on @babel/core's last release) in Node.js's CITGM.
v8.0.8
v8.0.8 (2026-10-23)
Thanks @bhushan4work and @webdevelopersrinu for your first PRs!
👓 Spec Compliance
babel-parser- #18366 fix(parser): disallow named specifiers after * as ns (@JLHwung)
- #18336 fix(parser): disallow const x followed by linebreak and of (@JLHwung)
- #18343 fix(parser): reject delete (x) when createParenthesizedExpressions: true (@JLHwung)
- #18276 fix: report expression errors in object literals used as member base (@JLHwung)
- #18286 Disallow arrow functions as
newcallee andawaitoperand (@JLHwung) - #18309 Disallow call expressions as arrow function parameters in sloppy mode (@JLHwung)
- #18315 Disallow
evalandargumentsas class names (@JLHwung)
🐛 Bug Fix
babel-parser- #18392 fix(parser): set phase: null for non-deferred imports with deferredImportEvaluation (#18313) (@bhushan4work)
- #18344 fix(parser): ASI between arrow body and
/=regex (@JLHwung) - #18342 fix(parser): allow arguments as a label in class (@JLHwung)
- #18365 fix(parser): allow ASI between property init and escaped in (@JLHwung)
- #18327 fix(parser): register function id in labeled function declaration (@JLHwung)
- #18323 Skip HTML-like comments in the parser's character lookahead (@JLHwung)
- #18322 Allow ASI after
export default fromwithoutexportDefaultFrom(@JLHwung)
babel-helpers,babel-plugin-transform-destructuring,babel-plugin-transform-modules-commonjs,babel-runtime-corejs3,babel-runtime- #18186 Fix
_arrayWithHolesbypassing customSymbol.iteratoron array-backed Proxies (@webdevelopersrinu)
- #18186 Fix
babel-plugin-transform-typescript,babel-typesbabel-plugin-transform-block-scoping
🏠 Internal
babel-plugin-transform-classes- #18383 Remove internal usage of
loosein class transform (@nicolo-ribaudo)
- #18383 Remove internal usage of
🔬 Output optimization
babel-plugin-transform-spread- #18318 Avoid
arrayLikeToArrayfor spreading literals (@nicolo-ribaudo)
- #18318 Avoid
Committers: 7
- Babel Bot (@babel-bot)
- Bhushan Agrawal (@bhushan4work)
- Huáng Jùnliàng (@JLHwung)
- Joelle Mahfoud (@joellemd)
- Nicolò Ribaudo (@nicolo-ribaudo)
- Srinu desetti (@webdevelopersrinu)
- @liuxingbaoyu
v7.29.11
v7.29.11 (2026-10-23)
👓 Spec Compliance
babel-parser- #18405 Disallow
evalandargumentsas class names (@babel-bot) - #18404 fix(parser): disallow const x followed by linebreak and of (@babel-bot)
- #18400 fix(parser): disallow named specifiers after * as ns (@babel-bot)
- #18374 fix(parser): reject delete (x) when createParenthesizedExpressions: true (@babel-bot)
- #18373 Disallow call expressions as arrow function parameters in sloppy mode (@babel-bot)
- #18405 Disallow
🐛 Bug Fix
babel-parser- #18403 fix(parser): ASI between arrow body and
/=regex (@babel-bot) - #18402 Allow ASI after
export default fromwithoutexportDefaultFrom(@babel-bot) - #18401 fix(parser): allow arguments as a label in class (@babel-bot)
- #18378 Skip HTML-like comments in the parser's character lookahead (@babel-bot)
- #18375 fix(parser): register function id in labeled function declaration (@babel-bot)
- #18377 fix(parser): allow ASI between property init and escaped in (@babel-bot)
- #18403 fix(parser): ASI between arrow body and
babel-plugin-transform-classes- #18408 Leave loose class prototype mutable with accessors (@babel-bot)
babel-plugin-transform-typescript,babel-types- #18391 fix(types): visit decorators of TSParameterProperty (@babel-bot)
babel-plugin-transform-block-scoping- #18370 fix: wrap enclosing loop when a nested for head closure captures its bindings (@babel-bot)
- #18364 fix: closures in for-loop init capture wrong binding (@babel-bot)
🏠 Internal
babel-plugin-transform-classes- #18398 Remove internal usage of
loosein class transform (@babel-bot)
- #18398 Remove internal usage of
🔬 Output optimization
babel-plugin-transform-spread- #18390 Avoid
arrayLikeToArrayfor spreading literals (@babel-bot)
- #18390 Avoid
Committers: 1
- Babel Bot (@babel-bot)
v8.0.7
v8.0.7 (2026-10-07)
Thanks @brunoborta, @CINC0S, @hoobnn, and @jpradelle for your first PRs!
🐛 Bug Fix
babel-helper-create-regexp-features-plugin,babel-plugin-transform-dotall-regex,babel-plugin-transform-unicode-sets-regex,babel-preset-envbabel-plugin-transform-for-of- #18292 Skip
for awaitintransform-for-of(@brunoborta)
- #18292 Skip
babel-helpers,babel-plugin-transform-async-generator-functions,babel-runtime-corejs3- #18283 Fix
asyncIteratorhelper forwarding.throw()to.return()(@brunoborta)
- #18283 Fix
babel-parserbabel-helpers,babel-plugin-transform-class-properties,babel-plugin-transform-modules-systemjs,babel-runtime-corejs3- #18284 Guard
@@toPrimitiveusage in toPrimitive helper (@nicolo-ribaudo)
- #18284 Guard
babel-plugin-transform-block-scoping- #18195 fix: closures in for-loop init capture wrong binding (@joelle-a-dev)
babel-helper-create-class-features-plugin,babel-plugin-transform-private-property-in-objectbabel-traverse- Other
- #18257 Fix eslint-parser AST definition of AccessorProperty (@jpradelle)
babel-core
🏠 Internal
babel-helpers,babel-plugin-transform-modules-commonjs,babel-runtime-corejs3- #18255 Simplify
interopRequireWildcardhelper (@nicolo-ribaudo)
- #18255 Simplify
Committers: 11
- Babel Bot (@babel-bot)
- Bruno "Borta" Bortagaray (@brunoborta)
- CINC05 (@CINC0S)
- Huáng Jùnliàng (@JLHwung)
- Joelle Mahfoud (@joelle-a-dev)
- Julien Pradelle (@jpradelle)
- Kevin Deng (@sxzz)
- Nicolò Ribaudo (@nicolo-ribaudo)
- Samual Norman (@samualtnorman)
- @wulu007
- hoobnn (@hoobnn)
v7.29.10
v7.29.10 (2026-10-07)
🐛 Bug Fix
babel-helpers,babel-plugin-transform-class-properties,babel-plugin-transform-modules-systemjs,babel-plugin-transform-runtime,babel-preset-env,babel-runtime-corejs3- #18287 Guard
@@toPrimitiveusage in toPrimitive helper (@babel-bot)
- #18287 Guard
babel-traverse- #18281 fix(traverse): do not evaluate destructured bindings in
path.evaluate(@babel-bot)
- #18281 fix(traverse): do not evaluate destructured bindings in
🏠 Internal
babel-helpers,babel-plugin-transform-modules-commonjs,babel-runtime-corejs3- #18279 Simplify
interopRequireWildcardhelper (@babel-bot)
- #18279 Simplify
Committers: 2
- Babel Bot (@babel-bot)
- Nicolò Ribaudo (@nicolo-ribaudo)