feat(mf): emit layered federation manifest metadata - #14913
feat(mf): emit layered federation manifest metadata#14913ScriptedAlchemy wants to merge 31 commits into
Conversation
📦 Binary Size-limit
Note This PR is stacked on ❌ Size increased by 44.00KB from 66.75MB to 66.79MB (⬆️0.06%) |
Rsdoctor Bundle Diff AnalysisFound 5 projects in monorepo, 5 projects with changes. 📊 Quick Summary
📋 Detailed Reports (Click to expand)📁 popular-libsPath:
📁 react-10kPath:
📁 react-1kPath:
📁 react-5kPath:
📁 ui-componentsPath:
Generated by Rsdoctor GitHub Action |
Merging this PR will not alter performance
Comparing Footnotes
|
a77d97a to
c85c8d1
Compare
c85c8d1 to
9e13563
Compare
9e13563 to
7878e38
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7878e38bf3
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…es' into codex/work-pr14913
Deploying rspack with
|
| Latest commit: |
d695f80
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://78923b29.rspack-v2.pages.dev |
| Branch Preview URL: | https://codex-mf-layered-manifest-me.rspack-v2.pages.dev |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d695f80231
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 104779a8a0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 047855fea1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/sharing/shared_used_exports_optimizer_plugin.rs
# Conflicts: # crates/rspack_plugin_mf/src/manifest/data.rs # crates/rspack_plugin_mf/src/sharing/shared_used_exports_optimizer_plugin.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 641e8bdbce
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/sharing/shared_used_exports_optimizer_plugin.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 26d39dc06c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/sharing/shared_used_exports_optimizer_plugin.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: aaa5e5db77
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4b12fb5ff0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/sharing/shared_used_exports_optimizer_plugin.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: eec50cb633
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/manifest/mod.rs # crates/rspack_plugin_mf/src/manifest/utils.rs
# Conflicts: # crates/rspack_plugin_mf/src/manifest/data.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ba3cbe8beb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
# Conflicts: # crates/rspack_plugin_mf/src/manifest/mod.rs # crates/rspack_plugin_mf/src/sharing/consume_shared_module.rs
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 86f2304ce5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…es' into codex/work-pr14913
…es' into codex/work-pr14913
…es' into codex/work-pr14913
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 61096f03ee
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| let target = expose_module_paths | ||
| .get(expose_identity) | ||
| .cloned() | ||
| .unwrap_or_else(|| expose.path.clone()); |
There was a problem hiding this comment.
Track usedIn paths per exposed import
When an expose has multiple imports and a non-first import consumes the share, this lookup still uses the expose-wide path populated from only the first import in expose_imports. For example, with import: ['./plain.js', './server.js'] where only server.js consumes React, the requirement is now matched correctly but stats.shared[].usedIn incorrectly reports plain.js. Key module paths by (ExposeIdentity, expose_import) and use the path corresponding to the current usage link.
Useful? React with 👍 / 👎.
Summary
required_versionaccessor in this slice because this is their first consumer.Related links
Testing
CI=true pnpm run build:cli:devpnpm run build:binding:devpnpm run build:jsRUSTFLAGS='-D warnings' cargo check -p rspack_plugin_mf -p rspack_binding_api --quietpnpm exec rstest --project base -t manifest-(20 passed)pnpm exec rstest --project base -t tree-shaking-shared(9 passed)Checklist