- [Feature]: Add
resolver.schemeResolversto resolve URI-scheme-prefixed specifiers (egfoo:bar) with custom resolvers (#1804 by @robhogan) - [Feature]: Resolve
metro:babel-runtime/<path>imports to Metro's own@babel/runtimedependency (8388f71 by @robhogan) - [Feature]:
metro-babel-transformer: PassinlinePlatformto Babel presets viacaller(6bbe095 by @robhogan) - [Fix]: Replace
image-sizedependency with vendored parsers, fix CVE alerts (#1860 by @robhogan) - [Fix]: Include
charset=utf-8in theContent-Typeof text assets and source files served by the dev server (#1888 by @robhogan) - [Fix]: Preserve
Platform.OSwrite targets during constant inlining (#1890 by @OskarEichler) - [Fix]: Inline the last duplicate key from static
Platform.selectobject literals (#1889 by @OskarEichler) - [Fix]:
FallbackWatcherno longer misses files written to a directory while it is being crawled (#1907 by @robhogan) - [Fix]:
HttpStore: Handle socket errors during writes, so they're retried rather than crashing the process (fad3b88) - [Fix]: Treat
CI=falseandCI=0as not-CI when defaultingwatch. CI is now detected fromprocess.env.CIonly, dropping theci-infodependency (61e4592 by @robhogan) - [Fix]: Fix Fast Refresh hitting undefined modules when using lazy (segmented) bundles in dev (c70d0ae by @robhogan)
- [Performance]:
FallbackWatcher: Dropwalkerdependency, reduce crawl RSS by ~34% and peak heap by ~41% (#1906 by @robhogan) - [Performance]: Don't emit redundant empty dependency map arrays for modules with no dependencies (#1858 by @robhogan)
- [Types]: Restore publishing of private (underscore-prefixed) fields in TypeScript declarations (#1876 by @robhogan)
- [Types]: Fix async functions being inferred as returning
void(notPromise<void>), egMetroServer#end(#1909 by @robhogan) - [Types]: Tidy up generated types, allow nullable props to be omitted in more places (#1885 by @robhogan)
NOTE: Experimental features are not covered by semver and can change at any time.
- [Experimental]:
metro-file-map: AddcrawlerFactoryto optionally replace the built-in Watchman / Node crawlers (68022f0 by @vzaidman) - [Experimental]: Add
serializer.unstable_inlineDependencyMapto inline module IDs at serialisation time (#1786 by @robhogan) - [Experimental]: Add
serializer.unstable_getAsyncDependencyPathto supply custompathsto framework-defined__loadBundleAsync(#1855 by @robhogan) - [Experimental]: Remove
transformer.unstable_renameRequire-requireis never renamed (42577f7 by @robhogan) - [Experimental]:
experimentalImportSupport: Fixexport * fromre-exporting the source module's default export (#1777 by @robhogan)
Full Changelog: v0.87.0...v0.87.1