Skip to content

Releases: react/metro

v0.86.0

Choose a tag to compare

@robhogan robhogan released this 06 Jul 16:46
  • [Breaking]: Metro now always emits whole-bundle source maps as index maps, and stores each module's map internally as a VlqMap (#1764, #1765 by @robhogan). Custom serialisers/transformers must consume/provide VlqMap mappings, not tuples.
  • [Breaking]: Remove deprecated default exports from public entry points (#1759 by @robhogan)
  • [Breaking]: Remove support for deprecated YAML and .es6 config files (#1752 by @robhogan)
  • [Breaking]: Remove long-deprecated resolver.blacklistRE config in favour of blockList (#1758 by @robhogan)
  • [Fix]: Fix HttpStore write retries incorrectly using the read endpoint's config (#1751 by @durvesh1992)
  • [Performance]: Source maps work makes Metro use 50% less memory and serve source maps 2x faster, for faster RNDT loads (#1741, #1742, #1743, #1760, #1763, #1764, #1765 by @robhogan)

Full Changelog: v0.85.0...v0.86.0

v0.85.0

Choose a tag to compare

@huntie huntie released this 23 Jun 16:07
  • [Breaking]: Raise minimum supported Node.js version to 22 (#1715 by @huntie)
  • [Feature]: Implement PACKAGE_SELF_RESOLVE for self-referencing imports in the resolver (#1721 by @robhogan)
  • [Fix]: Add ESM unwrapping to all CommonJS require calls (#1675 by @kitten)
  • [Fix]: Fix Windows cross-drive path resolution in metro-file-map (#1711 by @kitten)
  • [Fix]: Fix "browser"-spec bare-specifier β†’ relative path redirects for nested and first-party package.jsons (#1720 by @robhogan)
  • [Fix]: Gracefully reject illegal "browser"-spec redirects of a bare specifier to an absolute path (e1f4d61 by @robhogan)
  • [Performance]: Avoid intermediate allocations in matchSubpathFromMainFields, improving overall resolver performance ~5% (9341463 by @robhogan)

Full Changelog: v0.84.4...v0.85.0

v0.84.4

Choose a tag to compare

@robhogan robhogan released this 30 Apr 11:39
  • [Feature]: Support /[metro-watchFolders]/n/ paths for .bundle and .map requests (#1695 by @huntie)
  • [Fix]: Fix regression to allow scale assets to be resolved again for single asset requests (#1694 by @kitten)
  • [Fix]: Treat import().catch(), etc. as optional under transformer.allowOptionalDependencies (#1697 by @robhogan)
  • [Performance]: Interleave resolution attempts with building node_modules candidate paths (#1680 by @kitten)

Full Changelog: v0.84.3...v0.84.4

v0.83.7

Choose a tag to compare

@robhogan robhogan released this 29 Apr 10:46

This release is on the 0.83.x branch

  • [Feature]: Support /[metro-watchFolders]/n/ paths for .bundle and .map requests (#1695 by @huntie)
  • [Fix]: Fix regression to allow scale assets to be resolved again for single asset requests (#1694 by @kitten)
  • [Fix]: Treat import().catch(), etc. as optional under transformer.allowOptionalDependencies (#1697 by @robhogan)
  • [Performance]: Interleave resolution attempts with building node_modules candidate paths (#1680 by @kitten)

Full Changelog: v0.83.6...v0.83.7

v0.83.6

Choose a tag to compare

@robhogan robhogan released this 13 Apr 17:00

This release is on the 0.83.x branch

  • [Feature]: Add keepalive "heartbeat" message to Fast Refresh connections (#1685 by @robhogan)
  • [Feature]: Add changeId metadata on HMRClient update-done messages (1585e444284f by @huntie)
  • [Fix]: Include user-defined Babel config in transformer cache key to ensure correctness (#1638 by @EvanBacon)
  • [Fix]: Detection of contents of directories moved or cloned into a watched location (#1660 by @robhogan)
  • [Fix]: Correctly detect contents as removed when a watched directory is moved, on macOS without Watchman (c9e9fe64a77c by @robhogan)
  • [Performance]: Optimize PackageCache: use Map/Set, cache null results, eliminate per-hit allocations (877b64ea5967 by @robhogan)
  • [Types]: Restore type exports from metro that were previously TypeScript-specific (#1672 by @robhogan)

NOTE: Experimental features are not covered by semver and can change at any time.

v0.84.3

Choose a tag to compare

@robhogan robhogan released this 13 Apr 16:04
  • [Feature]: Add keepalive "heartbeat" message to Fast Refresh connections (#1685 by @robhogan)
  • [Feature]: Add changeId metadata on HMRClient update-done messages (1585e444284f by @huntie)
  • [Feature]: config.server.tls now sets Metro to be exposed as an https server (#1657 by @vzaidman)
  • [Fix]: sync bundling progress between Metro cli and app hints (34ca6a6 by @vzaidman)
  • [Fix]: Include user-defined Babel config in transformer cache key to ensure correctness (#1638 by @EvanBacon)
  • [Fix]: Detection of contents of directories moved or cloned into a watched location (#1660 by @robhogan)
  • [Fix]: Correctly detect contents as removed when a watched directory is moved, on macOS without Watchman (c9e9fe64a77c by @robhogan)
  • [Performance]: Optimize PackageCache: use Map/Set, cache null results, eliminate per-hit allocations (877b64ea5967 by @robhogan)
  • [Types]: Restore type exports from metro that were previously TypeScript-specific (#1672 by @robhogan)

NOTE: Experimental features are not covered by semver and can change at any time.

Full Changelog: v0.84.2...v0.84.3

v0.83.5

Choose a tag to compare

@robhogan robhogan released this 01 Mar 16:15

This is a hotfix on the 0.83.x branch.

  • [Feature]: config.server.tls now sets Metro to be exposed as an https server (#1657 by @vzaidman)
  • [Fix]: sync bundling progress between Metro cli and app hints (34ca6a6 by @vzaidman)
  • [Types]: Restore accidentally removed publication of TypeScript types (#1662 by @robhogan)

Full Changelog: v0.83.4...v0.83.5

v0.84.2

Choose a tag to compare

@robhogan robhogan released this 27 Feb 17:48
  • [Types]: Restore publishing of TypeScript types to npm (#1662 by @robhogan)

Full changelog: v0.84.1...v0.84.2

v0.84.1

Choose a tag to compare

@vzaidman vzaidman released this 25 Feb 15:02
  • [Fix] sync bundling progress between Metro cli and app hints (34ca6a6 by @vzaidman)
  • [Feature] config.server.tls now sets Metro to be exposed as an https server (35ff94b by @vzaidman)

Full Changelog: v0.84.0...v0.84.1

v0.84.0

Choose a tag to compare

@robhogan robhogan released this 20 Feb 20:49
  • [Breaking]: Drop support for Node v21, v23, and LTS minors released before v20.19 (b85f7fe by @robhogan)

Full Changelog: v0.83.4...v0.84.0