# Changelog

> **Tags:**
>
> - :boom: [Breaking Change]
> - :eyeglasses: [Spec Compliance]
> - :rocket: [New Feature]
> - :bug: [Bug Fix]
> - :memo: [Documentation]
> - :house: [Internal]
> - :nail_care: [Polish]

_Note: Gaps between patch versions are faulty, broken or test releases._

This file contains the changelog starting from v8.0.0-alpha.0.

- See [CHANGELOG - v7.15.0 to v7.28.5](/.github/CHANGELOG-v7.15.0-v7.28.5.md) for v7.15.0 to v7.28.5 changes (the last common release between the v8 and v7 release lines was v7.28.5).
- See [CHANGELOG - v7.0.0 to v7.14.9](/.github/CHANGELOG-v7.0.0-v7.14.9.md) for v7.0.0 to v7.14.9 changes.
- See [CHANGELOG - v7 prereleases](/.github/CHANGELOG-v7-prereleases.md) for v7.0.0-alpha.1 to v7.0.0-rc.4 changes.
- See [CHANGELOG - v4](/.github/CHANGELOG-v4.md), [CHANGELOG - v5](/.github/CHANGELOG-v5.md), and [CHANGELOG - v6](/.github/CHANGELOG-v6.md) for v4.x-v6.x changes.
- See [CHANGELOG - 6to5](/.github/CHANGELOG-6to5.md) for the pre-4.0.0 version changelog.
- See [Babylon's CHANGELOG](packages/babel-parser/CHANGELOG.md) for the Babylon pre-7.0.0-beta.29 version changelog.
- See [`babel-eslint`'s releases](https://github.com/babel/babel-eslint/releases) for the changelog before `@babel/eslint-parser` 7.8.0.
- See [`eslint-plugin-babel`'s releases](https://github.com/babel/eslint-plugin-babel/releases) for the changelog before `@babel/eslint-plugin` 7.8.0.

<!-- DO NOT CHANGE THESE COMMENTS -->
<!-- insert-new-changelog-here -->
## v8.0.3 (2026-06-27)

#### :bug: Bug Fix
* `babel-core`, `babel-plugin-syntax-typescript`
  * [#18089](https://github.com/babel/babel/pull/18089) fix: Remove `isTSX` from `babel-plugin-syntax-typescript` types ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-standalone`
  * [#18086](https://github.com/babel/babel/pull/18086) fix: Use `runtime: 'classic'` in the browser for React ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.2 (2026-06-18)

#### :bug: Bug Fix
* Other
  * [#18083](https://github.com/babel/babel/pull/18083) Use the `@babel/core` version when asserting version in `@babel/standalone` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-validator-identifier`
  * [#18075](https://github.com/babel/babel/pull/18075) fix(identifier): avoid double escaping slash ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-plugin-proposal-decorators`, `babel-plugin-transform-regenerator`, `babel-preset-env`
  * [#18081](https://github.com/babel/babel/pull/18081) Update `@babel/preset-modules` and polyfill packages ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.1 (2026-06-17)

#### :boom: Breaking Change
* `babel-core`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-standalone`
  * [#18079](https://github.com/babel/babel/pull/18079) Actually remove `preset-env`'s `useBuiltIns` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0 (2026-06-16)

#### :eyeglasses: Spec Compliance
* `babel-core`
  * [#18039](https://github.com/babel/babel/pull/18039) perf: Only extract source map comments at the end of the file ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :boom: Breaking Change
* `babel-cli`, `babel-node`, `babel-plugin-proposal-decorators`, `babel-plugin-transform-classes`, `babel-plugin-transform-function-name`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-parameters`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-regenerator`, `babel-preset-env`, `babel-register`
  * [#18069](https://github.com/babel/babel/pull/18069) Fallback to assuming ESM support with `modules: auto` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-runtime`, `babel-runtime-corejs3`, `babel-runtime`
  * [#18036](https://github.com/babel/babel/pull/18036) Remove corejs exports for `@babe/runtime-corejs3` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#18034](https://github.com/babel/babel/pull/18034) Remove `locations: "packed"` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* `babel-generator`
  * [#18046](https://github.com/babel/babel/pull/18046) fix(generator): improve new callee parens check ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-modules-systemjs`
  * [#18032](https://github.com/babel/babel/pull/18032) fix(systemjs): support __proto__ as an export name ([@JLHwung](https://github.com/JLHwung))

#### :memo: Documentation
* [#18070](https://github.com/babel/babel/pull/18070) Add EOL date for Babel 7 (end of June 2027) to SECURITY.md ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* [#18018](https://github.com/babel/babel/pull/18018) ci: enforce yarn integrity ([@JLHwung](https://github.com/JLHwung))

#### :running_woman: Performance
* `babel-core`
  * [#18039](https://github.com/babel/babel/pull/18039) perf: Only extract source map comments at the end of the file ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-rc.6 (2026-05-25)

#### :bug: Bug Fix
* `babel-generator`
  * [#18011](https://github.com/babel/babel/pull/18011) Catchup source map position in preserveFormat ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`
  * [#17999](https://github.com/babel/babel/pull/17999) fix: improve inputSourceMap URL handling ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-generator`
  * [#17992](https://github.com/babel/babel/pull/17992) Preserve original identifier names from input sourcemaps ([@Andarist](https://github.com/Andarist))

#### :house: Internal
* `babel-core`
  * [#17970](https://github.com/babel/babel/pull/17970) Always use native Node.js TS support for config files ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-compat-data`, `babel-register`
  * [#17993](https://github.com/babel/babel/pull/17993) chore: use bundled dts for register and eslint-* ([@JLHwung](https://github.com/JLHwung))
* `babel-helper-transform-fixture-test-runner`, `babel-node`
  * [#17989](https://github.com/babel/babel/pull/17989) Test Node.js 26 on CI ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-build-external-helpers`, `babel-cli`, `babel-generator`, `babel-helper-fixtures`, `babel-helper-plugin-test-runner`, `babel-helper-transform-fixture-test-runner`, `babel-node`, `babel-parser`, `babel-plugin-transform-modules-systemjs`, `babel-types`
  * [#18002](https://github.com/babel/babel/pull/18002) Add file URL support for test runners ([@JLHwung](https://github.com/JLHwung))

#### :microscope: Output optimization
* `babel-cli`, `babel-core`, `babel-generator`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-explicit-resource-management`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-react-jsx`, `babel-traverse`
  * [#18005](https://github.com/babel/babel/pull/18005) Do not emit source map names for identical names ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-rc.5 (2026-05-12)

#### :eyeglasses: Spec Compliance
* `babel-parser`
  * [#17949](https://github.com/babel/babel/pull/17949) Disallow decorators on abstract/declare fields ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :boom: Breaking Change
* `babel-code-frame`, `babel-core`, `babel-parser`, `babel-traverse`
  * [#17849](https://github.com/babel/babel/pull/17849) fix(code-frame): use 0-based columns to match Babel AST locations (#1… ([@nehemiyawicks](https://github.com/nehemiyawicks))
* `babel-build-external-helpers`, `babel-cli`, `babel-code-frame`, `babel-compat-data`, `babel-core`, `babel-generator`, `babel-helper-annotate-as-pure`, `babel-helper-builder-react-jsx`, `babel-helper-check-duplicate-nodes`, `babel-helper-compilation-targets`, `babel-helper-create-class-features-plugin`, `babel-helper-create-regexp-features-plugin`, `babel-helper-fixtures`, `babel-helper-globals`, `babel-helper-import-to-platform-api`, `babel-helper-member-expression-to-functions`, `babel-helper-module-imports`, `babel-helper-module-transforms`, `babel-helper-optimise-call-expression`, `babel-helper-plugin-test-runner`, `babel-helper-plugin-utils`, `babel-helper-remap-async-to-generator`, `babel-helper-replace-supers`, `babel-helper-skip-transparent-expression-wrappers`, `babel-helper-string-parser`, `babel-helper-transform-fixture-test-runner`, `babel-helper-validator-identifier`, `babel-helper-validator-option`, `babel-helper-wrap-function`, `babel-helpers`, `babel-node`, `babel-parser`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-bugfix-safari-class-field-initializer-scope`, `babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression`, `babel-plugin-bugfix-safari-rest-destructuring-rhs-array`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-bugfix-v8-static-class-fields-redefine-readonly`, `babel-plugin-external-helpers`, `babel-plugin-proposal-async-do-expressions`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-discard-binding`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-export-default-from`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-function-sent`, `babel-plugin-proposal-import-defer`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-proposal-optional-chaining-assign`, `babel-plugin-proposal-partial-application`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-throw-expressions`, `babel-plugin-syntax-async-do-expressions`, `babel-plugin-syntax-decorators`, `babel-plugin-syntax-destructuring-private`, `babel-plugin-syntax-do-expressions`, `babel-plugin-syntax-export-default-from`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-function-bind`, `babel-plugin-syntax-function-sent`, `babel-plugin-syntax-import-defer`, `babel-plugin-syntax-import-source`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-module-blocks`, `babel-plugin-syntax-optional-chaining-assign`, `babel-plugin-syntax-partial-application`, `babel-plugin-syntax-pipeline-operator`, `babel-plugin-syntax-throw-expressions`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-dotall-regex`, `babel-plugin-transform-duplicate-keys`, `babel-plugin-transform-duplicate-named-capturing-groups-regex`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-explicit-resource-management`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-for-of`, `babel-plugin-transform-function-name`, `babel-plugin-transform-instanceof`, `babel-plugin-transform-jscript`, `babel-plugin-transform-json-modules`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-literals`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-member-expression-literals`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-named-capturing-groups-regex`, `babel-plugin-transform-new-target`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-object-super`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-property-literals`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-display-name`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-react-pure-annotations`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-regexp-modifiers`, `babel-plugin-transform-reserved-words`, `babel-plugin-transform-runtime`, `babel-plugin-transform-shorthand-properties`, `babel-plugin-transform-spread`, `babel-plugin-transform-sticky-regex`, `babel-plugin-transform-strict-mode`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-typeof-symbol`, `babel-plugin-transform-typescript`, `babel-plugin-transform-unicode-escapes`, `babel-plugin-transform-unicode-property-regex`, `babel-plugin-transform-unicode-regex`, `babel-plugin-transform-unicode-sets-regex`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`, `babel-register`, `babel-standalone`, `babel-template`, `babel-traverse`, `babel-types`
  * [#17969](https://github.com/babel/babel/pull/17969) Require Node.js `^22.18.0 || >=24.11.0` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-object-set-prototype-of-to-assign`, `babel-standalone`
  * [#17958](https://github.com/babel/babel/pull/17958) Remove `transform-object-set-prototype-of-to-assign` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-standalone`
  * [#17963](https://github.com/babel/babel/pull/17963) Remove noop plugins from `@babel/standalone` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :loudspeaker: Deprecation
* `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-for-of`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-spread`, `babel-plugin-transform-template-literals`
  * [#17972](https://github.com/babel/babel/pull/17972) Deprecate `spec` and `loose` plugin options ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* `babel-helper-globals`
  * [#17981](https://github.com/babel/babel/pull/17981) fix(helper-globals): Update browser-upper.json ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-modules-systemjs`
  * [#17973](https://github.com/babel/babel/pull/17973) fix(systemjs): improve module string name support ([@JLHwung](https://github.com/JLHwung))

#### :memo: Documentation
* [#17977](https://github.com/babel/babel/pull/17977) Add threat model to SECURITY.md ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* `babel-core`, `babel-helper-create-class-features-plugin`, `babel-plugin-proposal-decorators`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-typescript`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`
  * [#17957](https://github.com/babel/babel/pull/17957) Add testing for plugin options ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* Other
  * [#17950](https://github.com/babel/babel/pull/17950) refactor(ts): migrate babel-eslint-plugin-* to TS ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-rc.4 (2026-04-29)

#### :eyeglasses: Spec Compliance
* `babel-parser`
  * [#17954](https://github.com/babel/babel/pull/17954) fix(parser): ts parser small fixes ([@JLHwung](https://github.com/JLHwung))
  * [#17923](https://github.com/babel/babel/pull/17923) Support flow extends bound ([@JLHwung](https://github.com/JLHwung))
  * [#17888](https://github.com/babel/babel/pull/17888) TS parser small fixes ([@JLHwung](https://github.com/JLHwung))
  * [#17865](https://github.com/babel/babel/pull/17865) Fix(parser): flow parser small fixes ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-spread`, `babel-types`
  * [#17871](https://github.com/babel/babel/pull/17871) Disallow super call after new ([@JLHwung](https://github.com/JLHwung))

#### :boom: Breaking Change
* `babel-cli`, `babel-helper-transform-fixture-test-runner`, `babel-helpers`, `babel-node`, `babel-register`
  * [#17938](https://github.com/babel/babel/pull/17938) Bundle more packages ([@JLHwung](https://github.com/JLHwung))
* `babel-traverse`
  * [#17937](https://github.com/babel/babel/pull/17937) Remove `Scope#buildUndefinedNode` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-wrap-function`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-regenerator`, `babel-traverse`
  * [#17907](https://github.com/babel/babel/pull/17907) Remove `NodePath#toComputedKey` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-external-helpers`, `babel-template`, `babel-traverse`
  * [#17830](https://github.com/babel/babel/pull/17830) Replace remaining whitelist/blacklist with inclusive alternatives ([@stuckvgn](https://github.com/stuckvgn))
* `babel-plugin-transform-property-mutators`, `babel-standalone`
  * [#17882](https://github.com/babel/babel/pull/17882) Remove `@babel/plugin-transform-property-mutators` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* `babel-register`
  * [#17928](https://github.com/babel/babel/pull/17928) fix(register): skip hook for ignored files ([@JLHwung](https://github.com/JLHwung))
  * [#17915](https://github.com/babel/babel/pull/17915) Fix thread synchronization issues in `@babel/register` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-create-class-features-plugin`, `babel-plugin-proposal-decorators`
  * [#17947](https://github.com/babel/babel/pull/17947) Fix decorators interaction with abstract/declare fields ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#17931](https://github.com/babel/babel/pull/17931) fix(decorators): replace super within all removed static elements ([@JLHwung](https://github.com/JLHwung))
* Other
  * [#17940](https://github.com/babel/babel/pull/17940) fix(eslint-plugin): Cleanup references to removed rules ([@JLHwung](https://github.com/JLHwung))
* `babel-core`
  * [#17933](https://github.com/babel/babel/pull/17933) Update Babel 8 config item brand ([@JLHwung](https://github.com/JLHwung))
* `babel-types`
  * [#17885](https://github.com/babel/babel/pull/17885) Make `ArrowFunctionExpression.expression` optional ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :nail_care: Polish
* `babel-register`
  * [#17941](https://github.com/babel/babel/pull/17941) Uninstall sms in register revert ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`
  * [#17902](https://github.com/babel/babel/pull/17902) polish(parser): improve ImportExpression error recovery ([@JLHwung](https://github.com/JLHwung))

#### :memo: Documentation
* [#17952](https://github.com/babel/babel/pull/17952) docs: fix exponentiation fixture links ([@cyphercodes](https://github.com/cyphercodes))

#### :house: Internal
* Other
  * [#17944](https://github.com/babel/babel/pull/17944) refactor(eslint): remove compat layers for ESLint < 9 ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-generator`
  * [#17880](https://github.com/babel/babel/pull/17880) chore: Remove unused merging source map code ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-rc.3 (2026-03-16)

#### :eyeglasses: Spec Compliance
* `babel-parser`
  * [#17839](https://github.com/babel/babel/pull/17839) Fix(parser): async x => {} must be in leading pos ([@JLHwung](https://github.com/JLHwung))
  * [#17803](https://github.com/babel/babel/pull/17803) Disallow non-leading solo await within F# pipeline ([@JLHwung](https://github.com/JLHwung))

#### :boom: Breaking Change
* `babel-parser`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-instanceof`, `babel-traverse`, `babel-types`
  * [#17867](https://github.com/babel/babel/pull/17867) [Babel 8] Remove `Import` from the `Expression` alias ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-preset-react`
  * [#17845](https://github.com/babel/babel/pull/17845) Gate jsxDEV source/self with `developmentSourceSelf` option ([@rootvector2](https://github.com/rootvector2))
* `babel-generator`, `babel-parser`, `babel-types`
  * [#17835](https://github.com/babel/babel/pull/17835) fix: Remove `decorators` from `TSDeclareMethod` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-import-to-platform-api`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-transform-json-modules`
  * [#17816](https://github.com/babel/babel/pull/17816) Pass `file` instead of `path` to importToPlatformApi builders ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :rocket: New Feature
* `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-preset-react`
  * [#17862](https://github.com/babel/babel/pull/17862) Add `sourceSelf` option to `@babel/plugin-transform-react-jsx-development` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#16935](https://github.com/babel/babel/pull/16935) feat: Add `locations` option to parser ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* `babel-compat-data`, `babel-plugin-bugfix-safari-rest-destructuring-rhs-array`, `babel-preset-env`
  * [#17788](https://github.com/babel/babel/pull/17788) Add bugfix plugin for Safari array rest destructuring bug ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-parser`, `babel-traverse`, `babel-types`
  * [#17852](https://github.com/babel/babel/pull/17852) Fix(types): Align AST definitions to parser implementations ([@JLHwung](https://github.com/JLHwung))
* `babel-build-external-helpers`, `babel-cli`, `babel-node`, `babel-parser`
  * [#17859](https://github.com/babel/babel/pull/17859) fix: Ensure packages are executable ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-build-external-helpers`, `babel-cli`, `babel-node`, `babel-register`
  * [#17822](https://github.com/babel/babel/pull/17822) Fix eslint package types ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-transform-parameters`, `babel-traverse`
  * [#17829](https://github.com/babel/babel/pull/17829) Fix types for `path.get("body.${index}")` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#17806](https://github.com/babel/babel/pull/17806) Improve F# pipeline direct body check ([@JLHwung](https://github.com/JLHwung))
  * [#17799](https://github.com/babel/babel/pull/17799) Fix TypeScript parser failing on async calls in ternary consequent ([@veeceey](https://github.com/veeceey))
* `babel-build-external-helpers`
  * [#17827](https://github.com/babel/babel/pull/17827) fix(build-external-helpers): incorrect bin path ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-generator`, `babel-helper-transform-fixture-test-runner`, `babel-plugin-transform-runtime`, `babel-types`
  * [#17811](https://github.com/babel/babel/pull/17811) Support ESLint v10 for babel-eslint-plugin ([@JLHwung](https://github.com/JLHwung))

#### :nail_care: Polish
* `babel-parser`
  * [#17782](https://github.com/babel/babel/pull/17782) Improve trailing comma comment handling ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-regenerator`
  * [#17362](https://github.com/babel/babel/pull/17362) Do not split `awaitAsyncGenerator` in `await yield` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :memo: Documentation
* [#17847](https://github.com/babel/babel/pull/17847) Replace npmjs.com links with npmx.dev ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* `babel-parser`
  * [#17853](https://github.com/babel/babel/pull/17853) refactor(parser): use AST definitions from babel/types ([@JLHwung](https://github.com/JLHwung))
  * [#17838](https://github.com/babel/babel/pull/17838) refactor(parser): simplify arrow start tracking ([@JLHwung](https://github.com/JLHwung))
  * [#17808](https://github.com/babel/babel/pull/17808) Build: Ensure `make build` will build Babel parser typings ([@JLHwung](https://github.com/JLHwung))
* `babel-runtime-corejs3`, `babel-runtime`
  * [#17855](https://github.com/babel/babel/pull/17855) Remove `engines` field  from `@babel/runtime` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* Other
  * [#17825](https://github.com/babel/babel/pull/17825) chore: Set `allowUnreachableCode: false` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :running_woman: Performance
* `babel-helper-import-to-platform-api`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-transform-json-modules`
  * [#17818](https://github.com/babel/babel/pull/17818) Load async Wasm and JSON imports in parallel ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#17834](https://github.com/babel/babel/pull/17834) fix(parser): performance issue due to debug code ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-rc.2 (2026-02-15)

#### :boom: Breaking Change
* Other
  * [#17766](https://github.com/babel/babel/pull/17766) Remove unused code for old ESLint versions ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-code-frame`
  * [#17772](https://github.com/babel/babel/pull/17772) Remove deprecated default export from `@babel/code-frame` ([@fisker](https://github.com/fisker))

#### :bug: Bug Fix
* `babel-helpers`, `babel-plugin-transform-async-generator-functions`, `babel-runtime-corejs3`
  * [#17797](https://github.com/babel/babel/pull/17797) fix: Properly handle `await` in `finally` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#17796](https://github.com/babel/babel/pull/17796) Support ESLint 10 ([@JLHwung](https://github.com/JLHwung))
* `babel-preset-env`
  * [#17787](https://github.com/babel/babel/pull/17787) Fix: preset-env include/exclude should accept bugfix plugins ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`
  * [#17781](https://github.com/babel/babel/pull/17781) fix: preserve trailing comma in optional call args ([@JLHwung](https://github.com/JLHwung))
  * [#17774](https://github.com/babel/babel/pull/17774) Fix `undefined` indentation when exactly 64 indents ([@YoussefHenna](https://github.com/YoussefHenna))
* `babel-standalone`
  * [#17770](https://github.com/babel/babel/pull/17770) fix: ensure `targets.esmodules` is validated ([@JLHwung](https://github.com/JLHwung))

#### :nail_care: Polish
* `babel-core`
  * [#17778](https://github.com/babel/babel/pull/17778) Improve core typings ([@JLHwung](https://github.com/JLHwung))

#### :memo: Documentation
* `babel-parser`
  * [#17786](https://github.com/babel/babel/pull/17786) docs: update spec.md ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-build-external-helpers`, `babel-cli`, `babel-helper-builder-react-jsx`, `babel-helper-create-class-features-plugin`, `babel-helper-create-regexp-features-plugin`, `babel-helper-fixtures`, `babel-helper-import-to-platform-api`, `babel-helper-module-transforms`, `babel-helper-plugin-utils`, `babel-helper-remap-async-to-generator`, `babel-helper-replace-supers`, `babel-node`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-bugfix-safari-class-field-initializer-scope`, `babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-bugfix-v8-static-class-fields-redefine-readonly`, `babel-plugin-external-helpers`, `babel-plugin-proposal-async-do-expressions`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-discard-binding`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-export-default-from`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-function-sent`, `babel-plugin-proposal-import-defer`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-proposal-optional-chaining-assign`, `babel-plugin-proposal-partial-application`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-throw-expressions`, `babel-plugin-syntax-async-do-expressions`, `babel-plugin-syntax-decorators`, `babel-plugin-syntax-destructuring-private`, `babel-plugin-syntax-do-expressions`, `babel-plugin-syntax-export-default-from`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-function-bind`, `babel-plugin-syntax-function-sent`, `babel-plugin-syntax-import-defer`, `babel-plugin-syntax-import-source`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-module-blocks`, `babel-plugin-syntax-optional-chaining-assign`, `babel-plugin-syntax-partial-application`, `babel-plugin-syntax-pipeline-operator`, `babel-plugin-syntax-throw-expressions`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-dotall-regex`, `babel-plugin-transform-duplicate-keys`, `babel-plugin-transform-duplicate-named-capturing-groups-regex`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-explicit-resource-management`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-for-of`, `babel-plugin-transform-function-name`, `babel-plugin-transform-instanceof`, `babel-plugin-transform-jscript`, `babel-plugin-transform-json-modules`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-literals`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-member-expression-literals`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-named-capturing-groups-regex`, `babel-plugin-transform-new-target`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-object-set-prototype-of-to-assign`, `babel-plugin-transform-object-super`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-property-literals`, `babel-plugin-transform-property-mutators`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-display-name`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-react-pure-annotations`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-regexp-modifiers`, `babel-plugin-transform-reserved-words`, `babel-plugin-transform-runtime`, `babel-plugin-transform-shorthand-properties`, `babel-plugin-transform-spread`, `babel-plugin-transform-sticky-regex`, `babel-plugin-transform-strict-mode`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-typeof-symbol`, `babel-plugin-transform-typescript`, `babel-plugin-transform-unicode-escapes`, `babel-plugin-transform-unicode-property-regex`, `babel-plugin-transform-unicode-regex`, `babel-plugin-transform-unicode-sets-regex`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`, `babel-register`
  * [#17800](https://github.com/babel/babel/pull/17800) Set peer dep on `@babel/core` to `workspace:^` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`, `babel-plugin-transform-explicit-resource-management`
  * [#17793](https://github.com/babel/babel/pull/17793) Remove Babel 7 plugins from parser types ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-proposal-discard-binding`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-syntax-explicit-resource-management`, `babel-plugin-syntax-import-assertions`, `babel-plugin-syntax-import-attributes`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-json-modules`, `babel-standalone`
  * [#17792](https://github.com/babel/babel/pull/17792) Archive syntax plugins enabled by default ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-rc.1 (2026-01-31)

#### :boom: Breaking Change
* Other
  * [#17763](https://github.com/babel/babel/pull/17763) Drop support for eslint v7-v8 ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
  * [#17755](https://github.com/babel/babel/pull/17755) Make `eslint-parser/experimental-worker` the default ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-register`
  * [#17762](https://github.com/babel/babel/pull/17762) Remove `browser` entrypoint for `@babel/register` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`, `babel-plugin-proposal-partial-application`, `babel-plugin-syntax-partial-application`
  * [#17760](https://github.com/babel/babel/pull/17760) [Babel 8]: partial-application plugin requires "version" option ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-plugin-transform-runtime`, `babel-register`
  * [#17756](https://github.com/babel/babel/pull/17756) Use `package.json#imports` for browser-specific code ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-build-external-helpers`, `babel-cli`
  * [#17746](https://github.com/babel/babel/pull/17746) [Babel 8] Extract babel-build-external-helpers ([@JLHwung](https://github.com/JLHwung))
* `babel-traverse`
  * [#17722](https://github.com/babel/babel/pull/17722) Remove `NodePath#visit` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-cli`, `babel-node`
  * [#17741](https://github.com/babel/babel/pull/17741) [Babel 8] Disallow excess arguments in babel-external-helpers ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-plugin-proposal-pipeline-operator`, `babel-traverse`, `babel-types`
  * [#17732](https://github.com/babel/babel/pull/17732) [Babel 8] Remove smart pipeline support and remove accessor property from Standardized alias ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-object-assign`, `babel-standalone`
  * [#17619](https://github.com/babel/babel/pull/17619) [Babel 8] Remove `@babel/plugin-transform-object-assign` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-transform-runtime`, `babel-preset-env`
  * [#17701](https://github.com/babel/babel/pull/17701) [Babel 8]: clean up unused preset-env data entries ([@JLHwung](https://github.com/JLHwung))

#### :rocket: New Feature
* `babel-code-frame`, `babel-core`
  * [#17070](https://github.com/babel/babel/pull/17070) feat: Allow specifying `startLine` in code frame ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-types`
  * [#17423](https://github.com/babel/babel/pull/17423) Add attributes to import/export builder ([@JLHwung](https://github.com/JLHwung))
* `babel-standalone`
  * [#17653](https://github.com/babel/babel/pull/17653) feat(standalone): export async transform ([@JLHwung](https://github.com/JLHwung))
  * [#17482](https://github.com/babel/babel/pull/17482) feat: read standalone targets from `data-targets` ([@JLHwung](https://github.com/JLHwung))

#### :bug: Bug Fix
* `babel-parser`
  * [#17761](https://github.com/babel/babel/pull/17761) fix(parser): correctly parse type assertions in `extends` clause ([@wulu007](https://github.com/wulu007))
  * [#17720](https://github.com/babel/babel/pull/17720) fix(parser): improve super type argument parsing ([@JLHwung](https://github.com/JLHwung))
* `babel-register`
  * [#17229](https://github.com/babel/babel/pull/17229) [Babel 8] Refactor register cache ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-traverse`
  * [#17702](https://github.com/babel/babel/pull/17702) fix(babel-traverse): check variable shadowing for global object callees ([@wulu007](https://github.com/wulu007))
* `babel-core`
  * [#17733](https://github.com/babel/babel/pull/17733) fix: Correct the type of plugin parameter ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-proposal-partial-application`
  * [#17662](https://github.com/babel/babel/pull/17662) fix(partial-app): support super method call ([@JLHwung](https://github.com/JLHwung))
* `babel-compat-data`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-preset-env`
  * [#17691](https://github.com/babel/babel/pull/17691) Fix hoisting of function declarations in loops and switch ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`
  * [#17717](https://github.com/babel/babel/pull/17717) fix: improve parentheses rule of conditional ([@JLHwung](https://github.com/JLHwung))

#### :nail_care: Polish
* `babel-parser`
  * [#17531](https://github.com/babel/babel/pull/17531) Improve @babel/parser error types ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :house: Internal
* `babel-code-frame`, `babel-helpers`, `babel-node`, `babel-types`
  * [#17678](https://github.com/babel/babel/pull/17678) Replace `picocolors` with `node:util.styleText()` in `@babel/code-frame` ([@fisker](https://github.com/fisker))
* Other
  * [#17751](https://github.com/babel/babel/pull/17751) Add CI check to make sure packages exist on npm ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-transform-fixture-test-runner`
  * [#17743](https://github.com/babel/babel/pull/17743) Use `require(esm)` for `@babel/core` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-template`
  * [#17748](https://github.com/babel/babel/pull/17748) chore: Improve template exception handling ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :running_woman: Performance
* `babel-generator`, `babel-runtime-corejs3`
  * [#17718](https://github.com/babel/babel/pull/17718) [Babel 8] Improve generator performance ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-beta.4 (2026-01-12)

#### :boom: Breaking Change
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-types`
  * [#17659](https://github.com/babel/babel/pull/17659) Drop support for TS `module <identifier>` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-preset-env`, `babel-preset-typescript`
  * [#17670](https://github.com/babel/babel/pull/17670) breaking(preset-env): remove `isPluginRequired` export ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`
  * [#17666](https://github.com/babel/babel/pull/17666) [Babel 8]: Ensure `parseExpression` with `tokens: true` returns the exported tokens ([@JLHwung](https://github.com/JLHwung))
* `babel-traverse`
  * [#17671](https://github.com/babel/babel/pull/17671) breaking(traverse): remove `blacklist` option ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-react-jsx-compat`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx-self`, `babel-plugin-transform-react-jsx-source`, `babel-standalone`
  * [#17620](https://github.com/babel/babel/pull/17620) [Babel 8] Remove `plugin-transform-react-{compat,source,self}` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-node`
  * [#17639](https://github.com/babel/babel/pull/17639) Remove `regenerator-runtime` from `@babel/node` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-helper-create-class-features-plugin`, `babel-parser`, `babel-plugin-proposal-decorators`, `babel-plugin-syntax-decorators`, `babel-plugin-transform-class-properties`, `babel-standalone`, `babel-traverse`
  * [#17643](https://github.com/babel/babel/pull/17643) [Babel 8] Remove decorator parser plugin options ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-proposal-import-attributes-to-assertions`
  * [#17650](https://github.com/babel/babel/pull/17650) [Babel 8] Archive proposal-import-attributes-to-assertions ([@JLHwung](https://github.com/JLHwung))
* `babel-compat-data`, `babel-helper-compilation-targets`, `babel-preset-env`
  * [#17633](https://github.com/babel/babel/pull/17633) Remove corejs2 and legacy files from compat-data ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-runtime-corejs3`, `babel-runtime`
  * [#17635](https://github.com/babel/babel/pull/17635) Remove `./regenerator` entrypoint from `@babel/runtime` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-types`
  * [#17610](https://github.com/babel/babel/pull/17610) [babel 8] Rename `TSImportType.argument` to `.source` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-import-attributes-to-assertions`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-transform-json-modules`, `babel-types`
  * [#17603](https://github.com/babel/babel/pull/17603) [babel 8] Fully remove import assertions ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-record-and-tuple`, `babel-plugin-syntax-record-and-tuple`, `babel-standalone`, `babel-traverse`, `babel-types`
  * [#17528](https://github.com/babel/babel/pull/17528) Fully remove Records and Tuples support ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :bug: Bug Fix
* `babel-compat-data`, `babel-preset-env`
  * [#16475](https://github.com/babel/babel/pull/16475) Fix order of `transform-block-scoped-functions` in `preset-env` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-traverse`
  * [#17568](https://github.com/babel/babel/pull/17568) Fix traverse NodePath caching ([@coderaiser](https://github.com/coderaiser))
  * [#17570](https://github.com/babel/babel/pull/17570) [Babel 8] fix: Correctly handle export references ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :nail_care: Polish
* `babel-runtime-corejs3`, `babel-runtime`
  * [#17529](https://github.com/babel/babel/pull/17529) [babel 8] Add `sideEffects: false` to babel-runtime ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* `babel-cli`, `babel-code-frame`, `babel-compat-data`, `babel-core`, `babel-generator`, `babel-helper-annotate-as-pure`, `babel-helper-builder-react-jsx`, `babel-helper-check-duplicate-nodes`, `babel-helper-compilation-targets`, `babel-helper-create-class-features-plugin`, `babel-helper-create-regexp-features-plugin`, `babel-helper-fixtures`, `babel-helper-globals`, `babel-helper-import-to-platform-api`, `babel-helper-member-expression-to-functions`, `babel-helper-module-imports`, `babel-helper-module-transforms`, `babel-helper-optimise-call-expression`, `babel-helper-plugin-test-runner`, `babel-helper-plugin-utils`, `babel-helper-remap-async-to-generator`, `babel-helper-replace-supers`, `babel-helper-simple-access`, `babel-helper-skip-transparent-expression-wrappers`, `babel-helper-string-parser`, `babel-helper-transform-fixture-test-runner`, `babel-helper-validator-identifier`, `babel-helper-validator-option`, `babel-helper-wrap-function`, `babel-helpers`, `babel-node`, `babel-parser`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-bugfix-safari-class-field-initializer-scope`, `babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-bugfix-v8-static-class-fields-redefine-readonly`, `babel-plugin-external-helpers`, `babel-plugin-proposal-async-do-expressions`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-discard-binding`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-export-default-from`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-function-sent`, `babel-plugin-proposal-import-defer`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-proposal-optional-chaining-assign`, `babel-plugin-proposal-partial-application`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-throw-expressions`, `babel-plugin-syntax-async-do-expressions`, `babel-plugin-syntax-decorators`, `babel-plugin-syntax-destructuring-private`, `babel-plugin-syntax-do-expressions`, `babel-plugin-syntax-explicit-resource-management`, `babel-plugin-syntax-export-default-from`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-function-bind`, `babel-plugin-syntax-function-sent`, `babel-plugin-syntax-import-assertions`, `babel-plugin-syntax-import-attributes`, `babel-plugin-syntax-import-defer`, `babel-plugin-syntax-import-source`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-module-blocks`, `babel-plugin-syntax-optional-chaining-assign`, `babel-plugin-syntax-partial-application`, `babel-plugin-syntax-pipeline-operator`, `babel-plugin-syntax-throw-expressions`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-dotall-regex`, `babel-plugin-transform-duplicate-keys`, `babel-plugin-transform-duplicate-named-capturing-groups-regex`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-explicit-resource-management`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-for-of`, `babel-plugin-transform-function-name`, `babel-plugin-transform-instanceof`, `babel-plugin-transform-jscript`, `babel-plugin-transform-json-modules`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-literals`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-member-expression-literals`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-named-capturing-groups-regex`, `babel-plugin-transform-new-target`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-assign`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-object-set-prototype-of-to-assign`, `babel-plugin-transform-object-super`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-property-literals`, `babel-plugin-transform-property-mutators`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-display-name`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-react-pure-annotations`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-regexp-modifiers`, `babel-plugin-transform-reserved-words`, `babel-plugin-transform-runtime`, `babel-plugin-transform-shorthand-properties`, `babel-plugin-transform-spread`, `babel-plugin-transform-sticky-regex`, `babel-plugin-transform-strict-mode`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-typeof-symbol`, `babel-plugin-transform-typescript`, `babel-plugin-transform-unicode-escapes`, `babel-plugin-transform-unicode-property-regex`, `babel-plugin-transform-unicode-regex`, `babel-plugin-transform-unicode-sets-regex`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`, `babel-register`, `babel-runtime-corejs3`, `babel-runtime`, `babel-standalone`, `babel-template`, `babel-traverse`, `babel-types`
  * [#17660](https://github.com/babel/babel/pull/17660) Update publishing process for Babel 8 ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-cli`, `babel-helper-transform-fixture-test-runner`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-object-rest-spread`
  * [#17676](https://github.com/babel/babel/pull/17676) Remove unused deps ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-code-frame`, `babel-core`
  * [#17677](https://github.com/babel/babel/pull/17677) Stop vendoring import-meta-resolve ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`
  * [#17665](https://github.com/babel/babel/pull/17665) chore: add preset-typescript as optional peer dep ([@JLHwung](https://github.com/JLHwung))
  * [#17569](https://github.com/babel/babel/pull/17569) Add `BABEL_7_TO_8_DANGEROUSLY_DISABLE_VERSION_CHECK` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helpers`, `babel-runtime-corejs3`, `babel-runtime`
  * [#17661](https://github.com/babel/babel/pull/17661) Remove `@onlyBabel7` helpers ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-generator`, `babel-helper-create-class-features-plugin`, `babel-helper-skip-transparent-expression-wrappers`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-for-of`, `babel-plugin-transform-typescript`
  * [#17651](https://github.com/babel/babel/pull/17651) cleanup `@ts-expect-error(Babel 7 vs Babel 8)` comments (Part 1) ([@JLHwung](https://github.com/JLHwung))
* `babel-code-frame`
  * [#17645](https://github.com/babel/babel/pull/17645) Bump js-tokens to v10 ([@fisker](https://github.com/fisker))
* `babel-parser`
  * [#17641](https://github.com/babel/babel/pull/17641) [Babel 8] Parser cleanup ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-traverse`
  * [#17638](https://github.com/babel/babel/pull/17638) refactor: replace debug with obug ([@sxzz](https://github.com/sxzz))
* `babel-helper-builder-react-jsx`
  * [#17621](https://github.com/babel/babel/pull/17621) [babel 8] Remove `@babel/types` dep from helper-builder-react-jsx ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`
  * [#17597](https://github.com/babel/babel/pull/17597) Record and tuple cleanup ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`, `babel-types`
  * [#17594](https://github.com/babel/babel/pull/17594) [Babel 8]: Bump glob to v12 ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`
  * [#17590](https://github.com/babel/babel/pull/17590) [Babel 8] chore: bump glob to v11 ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-beta.3 (2025-10-23)

#### :boom: Breaking Change
* `babel-parser`
  * [#17505](https://github.com/babel/babel/pull/17505) [Babel 8] Treat `allowSuperOutsideMethod` as top-level only ([@JLHwung](https://github.com/JLHwung))

#### :bug: Bug Fix
* `babel-traverse`, `babel-types`
  * [#17499](https://github.com/babel/babel/pull/17499) Enable `strictNullChecks` for `traverse` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-transform-runtime`
  * [#17512](https://github.com/babel/babel/pull/17512) [babel 8] Update default `@babel/runtime` version ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :nail_care: Polish
* `babel-core`, `babel-helper-transform-fixture-test-runner`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-preset-react`, `babel-preset-typescript`
  * [#17404](https://github.com/babel/babel/pull/17404) Improve `@babel/core` types ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-create-class-features-plugin`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-logical-assignment-operators`, `babel-traverse`, `babel-types`
  * [#17500](https://github.com/babel/babel/pull/17500) [Babel 8] Better node type definitions for `computed` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :house: Internal
* `babel-plugin-transform-runtime`
  * [#17511](https://github.com/babel/babel/pull/17511) [babel 8] Remove `semver` dependency from transform-runtime ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :running_woman: Performance
* `babel-traverse`
  * [#17043](https://github.com/babel/babel/pull/17043) [Babel 8] Improve scope information collection performance ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-create-class-features-plugin`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-typescript`
  * [#17518](https://github.com/babel/babel/pull/17518) [Babel 8] Use `t.traverseFast` to replace some `path.traverse` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-beta.2 (2025-09-05)

#### :boom: Breaking Change
* `babel-standalone`
  * [#17421](https://github.com/babel/babel/pull/17421) Do not enable default plugins in `@babel/standalone` ([@gwillen](https://github.com/gwillen))

#### :bug: Bug Fix
* `babel-types`
  * [#17495](https://github.com/babel/babel/pull/17495) fix: allow `d` and `v` flag in `regExpLiteral` builder ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`
  * [#17479](https://github.com/babel/babel/pull/17479) [Babel 8] Align TSMappedType AST ([@JLHwung](https://github.com/JLHwung))

#### :nail_care: Polish
* `babel-plugin-transform-block-scoping`, `babel-plugin-transform-classes`, `babel-plugin-transform-object-rest-spread`, `babel-traverse`
  * [#17485](https://github.com/babel/babel/pull/17485) Improve @babel/traverse typings ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-helpers`, `babel-runtime-corejs3`, `babel-traverse`, `babel-types`
  * [#17471](https://github.com/babel/babel/pull/17471) Improve @babel/core typings ([@JLHwung](https://github.com/JLHwung))
* `babel-core`
  * [#17470](https://github.com/babel/babel/pull/17470) export PartialConfig and NormalizedOptions ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* [#17468](https://github.com/babel/babel/pull/17468) build(Babel 8): disable JSON module transform ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-beta.1 (2025-07-02)

#### :boom: Breaking Change
* `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-do-expressions`, `babel-plugin-transform-object-rest-spread`, `babel-traverse`, `babel-types`
  * [#17391](https://github.com/babel/babel/pull/17391) LVal coverage updates (Part 2) ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`, `babel-traverse`, `babel-types`
  * [#17378](https://github.com/babel/babel/pull/17378) Accept bigints in `t.bigIntLiteral` factory ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-do-expressions`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-object-rest-spread`, `babel-types`
  * [#17387](https://github.com/babel/babel/pull/17387) [Babel 8]: Fix incorrect LVal coverage ([@JLHwung](https://github.com/JLHwung))

#### :bug: Bug Fix
* `babel-types`
  * [#17398](https://github.com/babel/babel/pull/17398) fix: `BABEL_TYPES_8_BREAKING` in Babel 8 ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :house: Internal
* `babel-types`
  * [#17361](https://github.com/babel/babel/pull/17361) Set binary operator typings to a more precise union ([@RReverser](https://github.com/RReverser))
## v8.0.0-beta.0 (2025-05-30)

#### :boom: Breaking Change
* `babel-helpers`, `babel-plugin-transform-regenerator`, `babel-runtime-corejs2`, `babel-runtime-corejs3`, `babel-runtime`
  * [#17237](https://github.com/babel/babel/pull/17237) [babel 8] Do not replace global `regeneratorRuntime` references in regenerator transform ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-compat-data`, `babel-helper-compilation-targets`, `babel-preset-env`
  * [#17267](https://github.com/babel/babel/pull/17267) [Babel 8] Directly export the JSON files from `@babel/compat-data` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#17265](https://github.com/babel/babel/pull/17265) [babel 8] Drop CJS support from `@babel/parser` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-record-and-tuple`, `babel-standalone`, `babel-traverse`
  * [#17242](https://github.com/babel/babel/pull/17242) [Babel 8]: Remove record and tuple syntax support ([@JLHwung](https://github.com/JLHwung))
* `babel-traverse`, `babel-types`
  * [#17217](https://github.com/babel/babel/pull/17217) Harden variable declarator validations ([@JLHwung](https://github.com/JLHwung))
* _All packages_
  * [#17204](https://github.com/babel/babel/pull/17204) [Babel 8] Bump nodejs requirements to `^20.19.0 || >= 22.12.0` ([@JLHwung](https://github.com/JLHwung))
* `babel-helper-compilation-targets`, `babel-preset-env`
  * [#17188](https://github.com/babel/babel/pull/17188) [Babel 8] Align esmodules: true behaviour to intersect ([@JLHwung](https://github.com/JLHwung))

#### :loudspeaker: Deprecation
* `babel-types`
  * [#17133](https://github.com/babel/babel/pull/17133) [babel 8] Deprecate uppercase builders ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* `babel-traverse`
  * [#16624](https://github.com/babel/babel/pull/16624) [Babel 8] Change `scope.{references,uids}` to `Set` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-core`
  * [#17261](https://github.com/babel/babel/pull/17261) [babel 8] Remove unnecessary CJS ESM wrapper ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helpers`, `babel-plugin-transform-react-jsx`, `babel-preset-env`
  * [#17211](https://github.com/babel/babel/pull/17211) Babel 8 cleanup ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-block-scoping`, `babel-traverse`, `babel-types`
  * [#17148](https://github.com/babel/babel/pull/17148) [Babel 8] Remove `BLOCK_SCOPED_SYMBOL` and `NOT_LOCAL_BINDING` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-transform-regenerator`, `babel-plugin-transform-typeof-symbol`
  * [#17186](https://github.com/babel/babel/pull/17186) Cleanup babel 8 todo item ([@JLHwung](https://github.com/JLHwung))

#### :running_woman: Performance
* `babel-traverse`
  * [#16965](https://github.com/babel/babel/pull/16965) [Babel 8] perf: Improve traverse performance ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

## v8.0.0-alpha.17 (2025-03-11)

#### :boom: Breaking Change
* `babel-parser`, `babel-types`
  * [#17139](https://github.com/babel/babel/pull/17139) [Babel 8] Parse TSHeritageBase.expression as an expression ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-alpha.16 (2025-02-14)

#### :boom: Breaking Change
* `babel-types`
  * [#17099](https://github.com/babel/babel/pull/17099) [babel 8] Remove legacy `.d.ts` for TypeScript <= 4.0 ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-template-literals`, `babel-traverse`, `babel-types`
  * [#17066](https://github.com/babel/babel/pull/17066) [Babel 8] Create TSTemplateLiteralType ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-types`
  * [#17073](https://github.com/babel/babel/pull/17073) [Babel 8] Parse `export import =` as an ExportNamedDeclaration ([@JLHwung](https://github.com/JLHwung))
* `babel-preset-env`
  * [#17078](https://github.com/babel/babel/pull/17078) [babel 8] Remove bugfixes option ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#17063](https://github.com/babel/babel/pull/17063) [Babel 8] Create TSEmptyBodyFunctionExpression also on invalid input ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`, `babel-plugin-transform-typescript`, `babel-types`
  * [#17059](https://github.com/babel/babel/pull/17059) [Babel 8] Create ThisExpression for `typeof this` ([@JLHwung](https://github.com/JLHwung))

#### :bug: Bug Fix
* `babel-generator`
  * [#17131](https://github.com/babel/babel/pull/17131) [Babel 8] Add several TS type parentheses rules ([@JLHwung](https://github.com/JLHwung))
  * [#17125](https://github.com/babel/babel/pull/17125) fix: Missing parentheses when printing a TS arrow function type in a union ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#17106](https://github.com/babel/babel/pull/17106) Fix TS non-array type start ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-parser`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-syntax-pipeline-operator`
  * [#17058](https://github.com/babel/babel/pull/17058) [babel 8] Remove remaining references to minimal/smart pipelines ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-alpha.15 (2025-01-10)

#### :boom: Breaking Change
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-traverse`, `babel-types`
  * [#16979](https://github.com/babel/babel/pull/16979) [Babel 8] Create TSEnumBody for TSEnumDeclaration ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`, `babel-types`
  * [#17046](https://github.com/babel/babel/pull/17046) [Babel 8]: wrap the TSImportType's argument within a TSLiteralType ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-parser`, `babel-types`
  * [#17042](https://github.com/babel/babel/pull/17042) [Babel 8] Rename `typeParameters` to `typeArguments` in `TSImportType` ([@JLHwung](https://github.com/JLHwung))
  * [#17017](https://github.com/babel/babel/pull/17017) [Babel 8]: rename `typeParameters` to `typeArguments` for `TSClassImplements` and `TSInterfaceHeritage` ([@JLHwung](https://github.com/JLHwung))
  * [#17012](https://github.com/babel/babel/pull/17012) Rename `typeParameters` to `typeArguments` for `TSTypeQuery` ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-types`
  * [#17020](https://github.com/babel/babel/pull/17020) Rename `typeParameters` to `typeArguments` for call expression alike ([@JLHwung](https://github.com/JLHwung))
* `babel-parser`
  * [#17014](https://github.com/babel/babel/pull/17014) [Babel 8] Create TSAbstract{Method,Property}Definition ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-generator`
  * [#17057](https://github.com/babel/babel/pull/17057) [babel 8] Remove `DecimalLiteral` printing logic ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-alpha.14 (2024-12-06)

#### :boom: Breaking Change
* `babel-generator`, `babel-parser`, `babel-types`
  * [#17008](https://github.com/babel/babel/pull/17008) Rename `TSTypeReference.typeParameters` to `typeArguments` ([@JLHwung](https://github.com/JLHwung))
  * [#16952](https://github.com/babel/babel/pull/16952) [Babel 8] Remove `TSModuleDeclaration.global` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-typescript`, `babel-types`
  * [#16997](https://github.com/babel/babel/pull/16997) [babel 8] Rename `superTypeParameters` -> `superTypeArguments` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-types`
  * [#16982](https://github.com/babel/babel/pull/16982) [Babel 8] Use `TSQualifiedName` for `namespace X.Y {}`'s name ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* Other
  * [#17010](https://github.com/babel/babel/pull/17010) fix: build updated babel-type helpers ([@JLHwung](https://github.com/JLHwung))
* `babel-preset-react`, `babel-standalone`
  * [#16927](https://github.com/babel/babel/pull/16927) [react] Make `development` option default to the configured env ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* `babel-cli`, `babel-helper-transform-fixture-test-runner`
  * [#17007](https://github.com/babel/babel/pull/17007) fix: migrate to dirent.parentPath ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-alpha.13 (2024-10-25)

#### :boom: Breaking Change
* `babel-core`, `babel-generator`, `babel-parser`, `babel-plugin-syntax-import-assertions`, `babel-plugin-syntax-import-attributes`, `babel-preset-env`, `babel-standalone`, `babel-types`
  * [#16850](https://github.com/babel/babel/pull/16850) Enable import attributes parsing by default ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-transform-typescript`, `babel-traverse`, `babel-types`
  * [#16731](https://github.com/babel/babel/pull/16731) Add `TSClassImplements|TSInterfaceHeritage` and rename `TsExpressionWithTypeArguments` in Babel 8 ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-syntax-pipeline-operator`, `babel-standalone`
  * [#16801](https://github.com/babel/babel/pull/16801) [Babel 8] Remove `minimal,smart` option of Pipeline Operator ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#16813](https://github.com/babel/babel/pull/16813) [Flow] Drop support for annotations inside array patterns ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-class-static-block`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-spread`, `babel-traverse`
  * [#16705](https://github.com/babel/babel/pull/16705) [Babel 8] Remove some `Scope` methods ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-import-wasm-source`, `babel-template`, `babel-types`
  * [#16770](https://github.com/babel/babel/pull/16770) Remove `importAssertions` parser plugin ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-standalone`
  * [#16808](https://github.com/babel/babel/pull/16808) Remove `importReflection` parser plugin ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-traverse`, `babel-types`
  * [#16807](https://github.com/babel/babel/pull/16807) [Babel 8] Remove `DecimalLiteral` AST ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-syntax-decimal`, `babel-standalone`
  * [#16741](https://github.com/babel/babel/pull/16741) [Babel 8] Remove `decimal` from parser ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-types`
  * [#16733](https://github.com/babel/babel/pull/16733) [Babel 8] Split `typeParameter` of `TSMappedType` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-plugin-proposal-async-do-expressions`, `babel-traverse`
  * [#16655](https://github.com/babel/babel/pull/16655) Remove some `NodePath` methods ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :rocket: New Feature
* `babel-parser`, `babel-plugin-syntax-flow`, `babel-preset-typescript`
  * [#16792](https://github.com/babel/babel/pull/16792) [Babel 8] Remove `enums` option of flow plugin ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :bug: Bug Fix
* `babel-core`
  * [#16925](https://github.com/babel/babel/pull/16925) Only parse # as comment in .babelignore at line start ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-template`, `babel-types`
  * [#16830](https://github.com/babel/babel/pull/16830) fix: ObjectPattern used as id inside for-of ([@coderaiser](https://github.com/coderaiser))
* `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`
  * [#16398](https://github.com/babel/babel/pull/16398) Refactor `transform-block-scoped-function` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-transform-fixture-test-runner`, `babel-node`
  * [#16706](https://github.com/babel/babel/pull/16706) [babel 8] Align `@babel/node` args parsing to Node.js ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#16668](https://github.com/babel/babel/pull/16668) [Babel 8] Fix spelling of error code ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :nail_care: Polish
* `babel-core`
  * [#16836](https://github.com/babel/babel/pull/16836) [Babel 8] fix: Throwing exceptions synchronously ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :house: Internal
* `babel-generator`, `babel-helper-create-class-features-plugin`, `babel-helper-module-transforms`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-parameters`, `babel-traverse`, `babel-types`
  * [#16817](https://github.com/babel/babel/pull/16817) Remove `BABEL_TYPES_8_BREAKING` flag and enable it by default ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-cli`, `babel-code-frame`, `babel-compat-data`, `babel-core`, `babel-generator`, `babel-helper-annotate-as-pure`, `babel-helper-builder-binary-assignment-operator-visitor`, `babel-helper-builder-react-jsx`, `babel-helper-check-duplicate-nodes`, `babel-helper-compilation-targets`, `babel-helper-create-class-features-plugin`, `babel-helper-create-regexp-features-plugin`, `babel-helper-fixtures`, `babel-helper-import-to-platform-api`, `babel-helper-member-expression-to-functions`, `babel-helper-module-imports`, `babel-helper-module-transforms`, `babel-helper-optimise-call-expression`, `babel-helper-plugin-test-runner`, `babel-helper-plugin-utils`, `babel-helper-remap-async-to-generator`, `babel-helper-replace-supers`, `babel-helper-simple-access`, `babel-helper-skip-transparent-expression-wrappers`, `babel-helper-string-parser`, `babel-helper-transform-fixture-test-runner`, `babel-helper-validator-identifier`, `babel-helper-validator-option`, `babel-helper-wrap-function`, `babel-helpers`, `babel-highlight`, `babel-node`, `babel-parser`, `babel-plugin-bugfix-firefox-class-in-computed-class-key`, `babel-plugin-bugfix-safari-class-field-initializer-scope`, `babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-bugfix-v8-static-class-fields-redefine-readonly`, `babel-plugin-external-helpers`, `babel-plugin-proposal-async-do-expressions`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-explicit-resource-management`, `babel-plugin-proposal-export-default-from`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-function-sent`, `babel-plugin-proposal-import-attributes-to-assertions`, `babel-plugin-proposal-import-defer`, `babel-plugin-proposal-import-wasm-source`, `babel-plugin-proposal-json-modules`, `babel-plugin-proposal-optional-chaining-assign`, `babel-plugin-proposal-partial-application`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-record-and-tuple`, `babel-plugin-proposal-regexp-modifiers`, `babel-plugin-proposal-throw-expressions`, `babel-plugin-syntax-async-do-expressions`, `babel-plugin-syntax-decimal`, `babel-plugin-syntax-decorators`, `babel-plugin-syntax-destructuring-private`, `babel-plugin-syntax-do-expressions`, `babel-plugin-syntax-explicit-resource-management`, `babel-plugin-syntax-export-default-from`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-function-bind`, `babel-plugin-syntax-function-sent`, `babel-plugin-syntax-import-assertions`, `babel-plugin-syntax-import-attributes`, `babel-plugin-syntax-import-defer`, `babel-plugin-syntax-import-reflection`, `babel-plugin-syntax-import-source`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-module-blocks`, `babel-plugin-syntax-optional-chaining-assign`, `babel-plugin-syntax-partial-application`, `babel-plugin-syntax-pipeline-operator`, `babel-plugin-syntax-record-and-tuple`, `babel-plugin-syntax-throw-expressions`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-dotall-regex`, `babel-plugin-transform-duplicate-keys`, `babel-plugin-transform-duplicate-named-capturing-groups-regex`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-for-of`, `babel-plugin-transform-function-name`, `babel-plugin-transform-instanceof`, `babel-plugin-transform-jscript`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-literals`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-member-expression-literals`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-named-capturing-groups-regex`, `babel-plugin-transform-new-target`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-assign`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-object-set-prototype-of-to-assign`, `babel-plugin-transform-object-super`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-property-literals`, `babel-plugin-transform-property-mutators`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-display-name`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx-compat`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx-self`, `babel-plugin-transform-react-jsx-source`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-react-pure-annotations`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-reserved-words`, `babel-plugin-transform-runtime`, `babel-plugin-transform-shorthand-properties`, `babel-plugin-transform-spread`, `babel-plugin-transform-sticky-regex`, `babel-plugin-transform-strict-mode`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-typeof-symbol`, `babel-plugin-transform-typescript`, `babel-plugin-transform-unicode-escapes`, `babel-plugin-transform-unicode-property-regex`, `babel-plugin-transform-unicode-regex`, `babel-plugin-transform-unicode-sets-regex`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`, `babel-register`, `babel-runtime-corejs3`, `babel-runtime`, `babel-standalone`, `babel-template`, `babel-traverse`, `babel-types`
  * [#16800](https://github.com/babel/babel/pull/16800) [babel 8] Require Node.js `^18.20.0 || ^20.17.0 || >=22.8.0` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-unicode-sets-regex`, `babel-traverse`
  * [#16572](https://github.com/babel/babel/pull/16572) Clean all always enabled parser plugins ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-alpha.12 (2024-07-26)

#### :boom: Breaking Change
* `babel-traverse`
  * [#16504](https://github.com/babel/babel/pull/16504) [babel 8] Remove methods starting with `_` in `@babel/traverse` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-alpha.11 (2024-06-07)

#### :boom: Breaking Change
* `babel-core`
  * [#16561](https://github.com/babel/babel/pull/16561) [babel 8] Remove `File.prototype.getModuleName` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-alpha.10 (2024-06-04)

#### :bug: Bug Fix
* `babel-traverse`, `babel-types`
  * [#16544](https://github.com/babel/babel/pull/16544) Improve `getBindingIdentifiers` ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`, `babel-node`
  * [#16548](https://github.com/babel/babel/pull/16548) fix Babel 8 commander import ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-alpha.9 (2024-06-03)

#### :boom: Breaking Change
* `babel-parser`, `babel-traverse`
  * [#16521](https://github.com/babel/babel/pull/16521) [Babel 8] Remove `extra.shorthand` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-generator`, `babel-parser`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-record-and-tuple`, `babel-plugin-syntax-record-and-tuple`, `babel-standalone`, `babel-traverse`
  * [#16458](https://github.com/babel/babel/pull/16458) Remove `syntaxType` option for record-and-tuple (parser&plugin) ([@JLHwung](https://github.com/JLHwung))
* _Every package_
  * [#16457](https://github.com/babel/babel/pull/16457) [babel 8] Require Node.js `^18.20.0 || ^20.10.0 || >=21.0.0` ([@JLHwung](https://github.com/JLHwung))

#### :rocket: New Feature
* _Every package_
  * [#16416](https://github.com/babel/babel/pull/16416) [babel 8] Publish `.d.ts` files for every package ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :house: Internal
* _Every package_
  * [#16494](https://github.com/babel/babel/pull/16494) Only import types from declared dependencies ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-cli`, `babel-node`
  * [#16517](https://github.com/babel/babel/pull/16517) [Babel 8] Bump commander to 12.1.0 ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`, `babel-helper-transform-fixture-test-runner`
  * [#16459](https://github.com/babel/babel/pull/16459) [Babel 8] Use more native fs methods ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`
  * [#16450](https://github.com/babel/babel/pull/16450) Bump glob to 10.3.12 ([@JLHwung](https://github.com/JLHwung))
## v8.0.0-alpha.8 (2024-04-04)

#### :boom: Breaking Change
* `babel-plugin-transform-runtime`, `babel-runtime-corejs3`
  * [#16347](https://github.com/babel/babel/pull/16347) Remove core-js and regenerator entrypoints from `@babel/runtime-*` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-runtime`
  * [#16346](https://github.com/babel/babel/pull/16346) Remove `./helpers/esm` exports from `@babel/runtime` and drop Node.js 13.0-13.1 ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-runtime`, `babel-plugin-transform-typeof-symbol`, `babel-runtime-corejs2`
  * [#16311](https://github.com/babel/babel/pull/16311) [babel 8] Cleanup `plugin-transform-runtime` options ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :nail_care: Polish
* `babel-plugin-transform-typescript`
  * [#16396](https://github.com/babel/babel/pull/16396) [babel 8] Turn `const enum`s into `const` variables ([@samualtnorman](https://github.com/samualtnorman))

#### :house: Internal
* `babel-core`
  * [#16365](https://github.com/babel/babel/pull/16365) [babel 8] Remove `import_` fallback ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helpers`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-runtime-corejs3`, `babel-runtime`, `babel-standalone`
  * [#16323](https://github.com/babel/babel/pull/16323) Allow separate helpers to be excluded in Babel 8 ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-helper-plugin-test-runner`
  * [#16330](https://github.com/babel/babel/pull/16330) Add missing `"type": "module"` to helper-plugin-test-runner ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-compat-data`, `babel-plugin-transform-object-rest-spread`, `babel-preset-env`
  * [#16318](https://github.com/babel/babel/pull/16318) [babel 8] Fix `@babel/compat-data` package.json ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-alpha.7 (2024-02-28)

#### :house: Internal
* `babel-helper-create-class-features-plugin`, `babel-plugin-proposal-decorators`
  * [#16256](https://github.com/babel/babel/pull/16256) Remove logic for deprecated decorator versions from Babel 8 ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-helper-fixtures`, `babel-helper-plugin-utils`, `babel-helper-transform-fixture-test-runner`, `babel-parser`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-standalone`, `babel-template`, `babel-traverse`, `babel-types`
  * [#16248](https://github.com/babel/babel/pull/16248) Use `Object.hasOwn` when available ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-plugin-transform-object-rest-spread`
  * [#16209](https://github.com/babel/babel/pull/16209) chore: Helper changes for Babel 8 ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-alpha.6 (2024-01-26)

#### :nail_care: Polish
* `babel-register`
  * [#16005](https://github.com/babel/babel/pull/16005) Use `@cspotcode/source-map-support` in `@babel/register` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
## v8.0.0-alpha.5 (2023-12-11)

#### :boom: Breaking Change
* `babel-plugin-transform-runtime`
  * [#16141](https://github.com/babel/babel/pull/16141) [babel 8] Remove `useESModules` option ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#16063](https://github.com/babel/babel/pull/16063) [babel 8] Remove core-js@2 & regenerator from transform-runtime ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-create-class-features-plugin`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-preset-env`
  * [#16043](https://github.com/babel/babel/pull/16043) [babel 8] Remove `loose` and `spec` options from `preset-env` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-generator`, `babel-types`
  * [#16126](https://github.com/babel/babel/pull/16126) [babel 8] Remove `CodeGenerator` from `@babel/generator` ([@liuxingbaoyu](https://github.com/liuxingbaoyu))
* `babel-parser`
  * [#16114](https://github.com/babel/babel/pull/16114) Breaking: parserOpts.createImportExpressions defaults to true ([@JLHwung](https://github.com/JLHwung))
* `babel-traverse`, `babel-types`
  * [#16057](https://github.com/babel/babel/pull/16057) [babel 8] Inline `toSequenceExpression` into `@babel/traverse` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-preset-env`
  * [#15989](https://github.com/babel/babel/pull/15989) [babel 8] Remove `getModulesPluginNames` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-preset-env`
  * [#15838](https://github.com/babel/babel/pull/15838) [babel 8] Remove core-js 2 and regenerator from preset-env ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :nail_care: Polish
* `babel-helper-validator-option`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-standalone`
  * [#16095](https://github.com/babel/babel/pull/16095) [babel 8] Enforce specifying proper core-js version ([@liuxingbaoyu](https://github.com/liuxingbaoyu))

#### :house: Internal
* `babel-core`, `babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression`, `babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining`, `babel-plugin-external-helpers`, `babel-plugin-proposal-async-do-expressions`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-destructuring-private`, `babel-plugin-proposal-do-expressions`, `babel-plugin-proposal-duplicate-named-capturing-groups-regex`, `babel-plugin-proposal-explicit-resource-management`, `babel-plugin-proposal-export-default-from`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-function-sent`, `babel-plugin-proposal-import-attributes-to-assertions`, `babel-plugin-proposal-partial-application`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-proposal-record-and-tuple`, `babel-plugin-proposal-regexp-modifiers`, `babel-plugin-proposal-throw-expressions`, `babel-plugin-syntax-async-do-expressions`, `babel-plugin-syntax-decimal`, `babel-plugin-syntax-decorators`, `babel-plugin-syntax-destructuring-private`, `babel-plugin-syntax-do-expressions`, `babel-plugin-syntax-explicit-resource-management`, `babel-plugin-syntax-export-default-from`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-function-bind`, `babel-plugin-syntax-function-sent`, `babel-plugin-syntax-import-assertions`, `babel-plugin-syntax-import-attributes`, `babel-plugin-syntax-import-reflection`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-module-blocks`, `babel-plugin-syntax-partial-application`, `babel-plugin-syntax-pipeline-operator`, `babel-plugin-syntax-record-and-tuple`, `babel-plugin-syntax-throw-expressions`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoped-functions`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-classes`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-destructuring`, `babel-plugin-transform-dotall-regex`, `babel-plugin-transform-duplicate-keys`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-exponentiation-operator`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-for-of`, `babel-plugin-transform-function-name`, `babel-plugin-transform-instanceof`, `babel-plugin-transform-jscript`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-literals`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-member-expression-literals`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`, `babel-plugin-transform-new-target`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-assign`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-object-set-prototype-of-to-assign`, `babel-plugin-transform-object-super`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-parameters`, `babel-plugin-transform-private-methods`, `babel-plugin-transform-private-property-in-object`, `babel-plugin-transform-property-literals`, `babel-plugin-transform-property-mutators`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-display-name`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx-compat`, `babel-plugin-transform-react-jsx-self`, `babel-plugin-transform-react-jsx-source`, `babel-plugin-transform-react-pure-annotations`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-reserved-words`, `babel-plugin-transform-runtime`, `babel-plugin-transform-shorthand-properties`, `babel-plugin-transform-spread`, `babel-plugin-transform-sticky-regex`, `babel-plugin-transform-strict-mode`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-typeof-symbol`, `babel-plugin-transform-typescript`, `babel-plugin-transform-unicode-escapes`, `babel-plugin-transform-unicode-property-regex`, `babel-plugin-transform-unicode-regex`, `babel-plugin-transform-unicode-sets-regex`, `babel-preset-env`, `babel-preset-flow`, `babel-preset-react`, `babel-preset-typescript`
  * [#15955](https://github.com/babel/babel/pull/15955) Require exact Babel 8 version in `assertVersion` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

## v8.0.0-alpha.4 (2023-10-11)

This release does not include any changes specific to Babel 8, but it ports all the recent Babel 7 commits to Babel 8.

## v8.0.0-alpha.3 (2023-09-26)

#### :boom: Breaking Change
* `babel-node`
  * [#15956](https://github.com/babel/babel/pull/15956) [babel 8] Remove `-d`/`-gc` babel-node aliases ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`
  * [#15869](https://github.com/babel/babel/pull/15869) Disallow sync `createConfigItem`, `loadPartialConfig`, `loadOptions` usage ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-code-frame`, `babel-highlight`
  * [#15792](https://github.com/babel/babel/pull/15792) [babel 8] Use ESM-based `chalk@5` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
## v8.0.0-alpha.2 (2023-08-09)

#### :bug: Bug Fix
* `babel-core`, `babel-traverse`
  * [#15759](https://github.com/babel/babel/pull/15759) [babel 8] Reland "Use `NodePath#hub` as part of the paths cache key" ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :nail_care: Polish
* `babel-preset-typescript`
  * [#15847](https://github.com/babel/babel/pull/15847) Provide better error message when allowDeclareFields is enabled ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-helper-create-class-features-plugin`, `babel-plugin-transform-async-generator-functions`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-dynamic-import`, `babel-plugin-transform-export-namespace-from`, `babel-plugin-transform-json-strings`, `babel-plugin-transform-logical-assignment-operators`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-nullish-coalescing-operator`, `babel-plugin-transform-numeric-separator`, `babel-plugin-transform-object-rest-spread`, `babel-plugin-transform-optional-catch-binding`, `babel-plugin-transform-optional-chaining`, `babel-plugin-transform-private-property-in-object`
  * [#15823](https://github.com/babel/babel/pull/15823) Do not use syntax plugins for syntax enabled by default ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-code-frame`, `babel-highlight`
  * [#15814](https://github.com/babel/babel/pull/15814) [babel 8] Use `chalk@4` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

## v8.0.0-alpha.0 (2023-07-20)

#### :eyeglasses: Spec Compliance
* `babel-parser`
  * [#12451](https://github.com/babel/babel/pull/12451) [babel 8] Report a SyntaxError for `}` and `>` in JSX text ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#12447](https://github.com/babel/babel/pull/12447) [babel 8] Disallow sequence expressions in JSX expression containers ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :boom: Breaking Change
* Other
  * [#15763](https://github.com/babel/babel/pull/15763) [babel 8] Bump eslint-parser/plugin eslint requirements ([@JLHwung](https://github.com/JLHwung))
  * [#13921](https://github.com/babel/babel/pull/13921) [babel 8] Align `allow*` parser options with ESLint behavior ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* _All packages_
  * [#15585](https://github.com/babel/babel/pull/15585) [babel 8] Require Node.js `^16.20.0 || ^18.16.0 || >=20.0.0` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#14013](https://github.com/babel/babel/pull/14013) [babel 8] Add `"exports"` to every package ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-proposal-decorators`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-transform-class-properties`
  * [#15676](https://github.com/babel/babel/pull/15676) [babel 8] Only support `legacy` and `2023-05` decorators ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-helper-create-class-features-plugin`, `babel-plugin-transform-arrow-functions`, `babel-plugin-transform-computed-properties`, `babel-plugin-transform-for-of`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-unicode-escapes`, `babel-preset-env`, `babel-traverse`, `babel-types`
  * [#15576](https://github.com/babel/babel/pull/15576) [babel 8] Other Babel 8 misc changes ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-helper-builder-binary-assignment-operator-visitor`, `babel-helper-create-class-features-plugin`, `babel-helper-create-regexp-features-plugin`, `babel-helper-environment-visitor`, `babel-helper-member-expression-to-functions`, `babel-helper-module-transforms`, `babel-helper-plugin-utils`, `babel-helper-replace-supers`, `babel-helper-simple-access`, `babel-helper-string-parser`, `babel-helper-transform-fixture-test-runner`, `babel-helpers`, `babel-plugin-transform-modules-commonjs`, `babel-preset-env`
  * [#15550](https://github.com/babel/babel/pull/15550) More misc Babel 8 little changes ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-cli`, `babel-compat-data`, `babel-core`, `babel-helper-create-class-features-plugin`, `babel-helper-environment-visitor`, `babel-helper-replace-supers`, `babel-helpers`, `babel-parser`, `babel-plugin-transform-for-of`, `babel-plugin-transform-react-jsx`, `babel-preset-env`, `babel-traverse`, `babel-types`
  * [#15068](https://github.com/babel/babel/pull/15068) Babel 8 misc changes ([@JLHwung](https://github.com/JLHwung))
* `babel-types`
  * [#15527](https://github.com/babel/babel/pull/15527) [babel 8] Remove builders present only for backwards-compatibility ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#14464](https://github.com/babel/babel/pull/14464) [babel 8] Remove `selfClosing` from `jsxElement` builder ([@wjw99830](https://github.com/wjw99830))
* `babel-core`, `babel-plugin-syntax-flow`, `babel-plugin-syntax-jsx`, `babel-plugin-syntax-typescript`, `babel-plugin-transform-parameters`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-spread`, `babel-plugin-transform-typescript`, `babel-preset-flow`, `babel-preset-typescript`, `babel-standalone`
  * [#14955](https://github.com/babel/babel/pull/14955) [babel 8] Better file ext handling for TS and Flow presets ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-traverse`
  * [#15288](https://github.com/babel/babel/pull/15288) [babel 8] Remove `block` argument from `Scope#rename` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-helper-compilation-targets`, `babel-preset-env`, `babel-preset-flow`, `babel-types`
  * [#14179](https://github.com/babel/babel/pull/14179) Bundle most packages in Babel 8 ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-helper-builder-binary-assignment-operator-visitor`, `babel-helper-create-class-features-plugin`, `babel-helper-member-expression-to-functions`, `babel-helper-skip-transparent-expression-wrappers`, `babel-plugin-proposal-function-bind`, `babel-plugin-proposal-logical-assignment-operators`, `babel-plugin-proposal-optional-chaining`, `babel-plugin-proposal-partial-application`, `babel-plugin-transform-proto-to-assign`, `babel-plugin-transform-spread`, `babel-traverse`, `babel-types`
  * [#14750](https://github.com/babel/babel/pull/14750) Remove `Super` from `Expression` alias ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-generator`, `babel-helper-create-class-features-plugin`, `babel-plugin-proposal-class-properties`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-pipeline-operator`, `babel-plugin-syntax-decorators`, `babel-plugin-transform-function-name`, `babel-plugin-transform-typescript`, `babel-standalone`
  * [#12712](https://github.com/babel/babel/pull/12712) [babel 8] Remove support for the `2018-09` decorators proposal ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`, `babel-helper-module-imports`, `babel-helper-transform-fixture-test-runner`, `babel-node`, `babel-plugin-proposal-class-static-block`, `babel-plugin-syntax-decorators`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-runtime`, `babel-standalone`
  * [#12695](https://github.com/babel/babel/pull/12695) [babel 8] Disallow synchronous usage of `babel.*` callback methods ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-types`
  * [#14465](https://github.com/babel/babel/pull/14465) [babel 8] `ObjectTypeAnnotation` fields must always be arrays ([@danez](https://github.com/danez))
  * [#12361](https://github.com/babel/babel/pull/12361) [babel 8] Remove the `Noop` node type ([@sidntrivedi012](https://github.com/sidntrivedi012))
* `babel-generator`, `babel-parser`, `babel-types`
  * [#13709](https://github.com/babel/babel/pull/13709) [babel 8] fix properties name for function-like TS nodes ([@sosukesuzuki](https://github.com/sosukesuzuki))
  * [#12829](https://github.com/babel/babel/pull/12829) [babel 8] Use an identifier for `TSTypeParameter.name` ([@fedeci](https://github.com/fedeci))
* `babel-node`, `babel-register`
  * [#14025](https://github.com/babel/babel/pull/14025) [babel 8] Move `@babel/register` transform to a separate worker ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#13919](https://github.com/babel/babel/pull/13919) Improve template tokenizing ([@JLHwung](https://github.com/JLHwung))
  * [#13752](https://github.com/babel/babel/pull/13752) [babel 8] Materialize ESTree's `classFeatures` option ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-transform-react-constant-elements`, `babel-preset-env`
  * [#13866](https://github.com/babel/babel/pull/13866) [babel 8] Enable preset-env bugfixes by default ([@JLHwung](https://github.com/JLHwung))
* `babel-core`
  * [#13199](https://github.com/babel/babel/pull/13199) [babel 8] Move ESLint parsing to a Worker ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-generator`, `babel-parser`
  * [#13308](https://github.com/babel/babel/pull/13308) [Babel 8]: remove module attributes parser/generator support ([@JLHwung](https://github.com/JLHwung))
  * [#12608](https://github.com/babel/babel/pull/12608) [babel 8] Don't create `TSParenthesizedType` nodes by default ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-block-scoping`, `babel-traverse`
  * [#13291](https://github.com/babel/babel/pull/13291) [babel 8] Do not skip requeued paths ([@JLHwung](https://github.com/JLHwung))
* `babel-cli`, `babel-core`, `babel-helper-module-transforms`, `babel-plugin-transform-modules-amd`, `babel-plugin-transform-modules-systemjs`, `babel-plugin-transform-modules-umd`
  * [#12724](https://github.com/babel/babel/pull/12724) [babel 8] Remove module-specific options from `@babel/core` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-preset-react`
  * [#12741](https://github.com/babel/babel/pull/12741) [babel 8] Type checking preset-react options ([@JLHwung](https://github.com/JLHwung))
* `babel-preset-flow`
  * [#12751](https://github.com/babel/babel/pull/12751) [babel 8] type checking preset-flow options ([@JLHwung](https://github.com/JLHwung))
* `babel-core`, `babel-helper-compilation-targets`, `babel-plugin-proposal-async-generator-functions`, `babel-plugin-proposal-class-properties`, `babel-plugin-proposal-decorators`, `babel-plugin-proposal-object-rest-spread`, `babel-plugin-transform-classes`, `babel-plugin-transform-flow-comments`, `babel-plugin-transform-flow-strip-types`, `babel-plugin-transform-function-name`, `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-parameters`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-regenerator`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-standalone`
  * [#12989](https://github.com/babel/babel/pull/12989) breaking: fallback targets to "defaults, not ie 11" ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-proposal-dynamic-import`, `babel-plugin-transform-modules-systemjs`
  * [#12700](https://github.com/babel/babel/pull/12700) Require @babel/plugin-proposal-dynamic-import when transforming import() to SystemJS ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-template-literals`, `babel-plugin-transform-unicode-escapes`
  * [#12675](https://github.com/babel/babel/pull/12675) [babel 8] Output minimal strings by default ([@JLHwung](https://github.com/JLHwung))
* `babel-code-frame`, `babel-highlight`
  * [#12660](https://github.com/babel/babel/pull/12660) [babel 8] Improve syntax highlighting ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-node`, `babel-plugin-transform-async-to-generator`, `babel-plugin-transform-block-scoping`, `babel-plugin-transform-classes`, `babel-plugin-transform-function-name`, `babel-plugin-transform-react-constant-elements`, `babel-plugin-transform-react-inline-elements`, `babel-plugin-transform-react-jsx`, `babel-plugin-transform-regenerator`, `babel-preset-react`, `babel-preset-typescript`, `babel-standalone`
  * [#12630](https://github.com/babel/babel/pull/12630) [babel 8] Use the JSX automatic runtime by default ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-builder-react-jsx`, `babel-plugin-transform-react-jsx-development`, `babel-plugin-transform-react-jsx`, `babel-preset-react`
  * [#12593](https://github.com/babel/babel/pull/12593) [babel 8] Remove `useSpread` and `useBuiltIns` jsx options ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-preset-env`
  * [#12594](https://github.com/babel/babel/pull/12594) [babel 8] Remove `uglify` target support in preset-env ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-proposal-class-properties`, `babel-plugin-transform-typescript`, `babel-preset-typescript`
  * [#12461](https://github.com/babel/babel/pull/12461) [babel 8] Enable `allowDeclareFields` option by default with TS ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-preset-typescript`
  * [#12460](https://github.com/babel/babel/pull/12460) Type checking preset-typescript options ([@JLHwung](https://github.com/JLHwung))
* `babel-generator`
  * [#12477](https://github.com/babel/babel/pull/12477) [babel 8] Remove the `jsonCompatibleStrings` option ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-helper-fixtures`, `babel-plugin-transform-flow-strip-types`
  * [#12457](https://github.com/babel/babel/pull/12457) [babel 8] Enable `allowDeclareFields` option by default w/ Flow ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))

#### :rocket: New Feature
* `babel-helper-compilation-targets`
  * [#15551](https://github.com/babel/babel/pull/15551) use browserslist's defaults as default targets ([@JLHwung](https://github.com/JLHwung))

#### :bug: Bug Fix
* `babel-helper-fixtures`, `babel-preset-typescript`
  * [#15562](https://github.com/babel/babel/pull/15562) [Babel 8] fix `ignoreExtensions` behaviour ([@JLHwung](https://github.com/JLHwung))

#### :house: Internal
* `babel-plugin-transform-runtime`
  * [#15528](https://github.com/babel/babel/pull/15528) [babel 8] regeneratorRuntime helper is always available ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-core`
  * [#15526](https://github.com/babel/babel/pull/15526) [babel 8] Remove old error plugin mappings for default syntax ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* Other
  * [#14949](https://github.com/babel/babel/pull/14949) Fix prepublish build of Babel 8 with ESM ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#14872](https://github.com/babel/babel/pull/14872) Use the built-in class fields and private methods rules in ESLint 8 ([@JLHwung](https://github.com/JLHwung))
* `babel-plugin-transform-modules-commonjs`, `babel-plugin-transform-runtime`
  * [#14120](https://github.com/babel/babel/pull/14120) [babel 8] Remove `@babel/runtime@<=7.13.0` compat check ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-cli`
  * [#14119](https://github.com/babel/babel/pull/14119) [babel 8] Remove `@nicolo-ribaudo/chokidar-2` fallback ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-cli`, `babel-node`, `babel-plugin-transform-runtime`, `babel-register`
  * [#13828](https://github.com/babel/babel/pull/13828) [babel 8] Remove `make-dir` polyfill for `fs.mkdirSync` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
  * [#12458](https://github.com/babel/babel/pull/12458) Use native Node.js functions when available ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-parser`
  * [#13768](https://github.com/babel/babel/pull/13768) Store token type as number ([@JLHwung](https://github.com/JLHwung))
  * [#13294](https://github.com/babel/babel/pull/13294) fix(parser): [Babel8] Align error codes between Flow and TypeScript ([@sosukesuzuki](https://github.com/sosukesuzuki))
* `babel-plugin-proposal-partial-application`, `babel-types`
  * [#13407](https://github.com/babel/babel/pull/13407) [Babel 8] Remove `optional` field from `MemberExpression` ([@danez](https://github.com/danez))
* `babel-core`, `babel-helper-transform-fixture-test-runner`, `babel-register`
  * [#12677](https://github.com/babel/babel/pull/12677) [babel 8] Replace lodash/escapeRegExp with escape-string-regexp ([@hzoo](https://github.com/hzoo))
* `babel-cli`, `babel-plugin-transform-classes`, `babel-register`, `babel-traverse`
  * [#12656](https://github.com/babel/babel/pull/12656) [babel 8] Update `globals`, `find-cache-dir` and `slash` ([@nicolo-ribaudo](https://github.com/nicolo-ribaudo))
* `babel-plugin-syntax-typescript`
  * [#12607](https://github.com/babel/babel/pull/12607) chore: do not push objectRestSpread parser option in Babel 8 ([@JLHwung](https://github.com/JLHwung))

---

See [CHANGELOG - v7.15.0 to v7.28.5](/.github/CHANGELOG-v7.15.0-v7.28.5.md) for v7.15.0 to v7.28.5 changes (the last common release between the v8 and v7 release lines was v7.28.5).
