v4.9.0 #221
Aukevanoost
announced in
Announcements
v4.9.0
#221
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Highlights
This minor is focussed on stabilizing our new 4.8.0 direction (check out the non-stitching announcement), and at the same time generalizing the core into something usable for all bundlers/adapters. This was already the case but we're working towards improving the build flows and making them a bit more adaper agnostic.
Declare shared mapping packages
Until now, a shared mapping's package came from its name:
@shared/components/tableand@shared/components/collapsecounted as two entry points of one package,@shared/components. In a workspace where slashes mark a domain rather than a package, that grouped independent libraries together. WithmappingsFromWorkspace().package(prefix, cfg)you declare the boundaries yourself. Every mapping at or under the prefix belongs to that package, the longest declaration wins, and mappings outside any declaration keep the name rule. A declared package gets one config, and its entry points are checked for a matching version before anything is bundled.chunksper shared mappingchunkscan now be set on a shared mapping and applies to the bundle the mapping is built in. Mappings that don't set it follow the global value, and two mappings in one bundle t]hat disagree fail the build instead of one setting being silently dropped. Achunkssetting on a shared external that can't take effect now warns, and is part of the cache key.A sturdier adapter contract
Adapters get more ways to tell core what they did, and core checks more of what they write:
setupis told which kind of bundle it builds (shared,mappingorexposed);remoteEntry.jsonis written, so a missing or misplaced file fails early.More reliable builds
federationBuilder.outputFiles). The check for bare imports the import map can't resolve now scans all of them, chunks not named inremoteEntry.jsonincluded, and in watch mode no longer repeats unchanged warnings.federationBuilderagain runs a full build../a/Cmp,./b/Cmp) each get their own file. A build also warns when two mappings would write the same file.Heads-up
esbuildis no longer a dependency of core. Adapters that use it must depend on it themselves.isMappingOrExposedandoptimizedMappingsare deprecated in favour of the bundlekind, and will be removed in v5.What's Changed
Full Changelog: v4.8.1...v4.9.0
This discussion was created from the release v4.9.0.
All reactions