feat(tree-shaking): track dynamic imports in object properties - #15443
feat(tree-shaking): track dynamic imports in object properties#15443LingyuCoder wants to merge 1 commit into
Conversation
📦 Binary Size-limit
Note This PR is stacked on ❌ Size increased by 36.00KB from 68.37MB to 68.40MB (⬆️0.05%) |
Rsdoctor Bundle Diff AnalysisFound 5 projects in monorepo, 0 projects with changes. 📊 Quick Summary
Generated by Rsdoctor GitHub Action |
Merging this PR will not alter performance
Comparing Footnotes
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
00e79b0 to
34933af
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 34933afee9
ℹ️ 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".
34933af to
eb66514
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: eb665149cf
ℹ️ 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".
eb66514 to
9f9ea8f
Compare
Summary
Build on #15449 by recovering InnerGraph ownership for deferred functions stored in direct object properties.
When
featureis unused, the loader's dynamic import inherits the top-level export's usage condition and its async target can be omitted. Eager initialization still behaves normally, so side effects such ascreateId("feature")are preserved.Scope
The generic
ImportDependencycondition and incremental-cache support live in the base PR, leaving this layer limited to object ownership recovery and its focused test case.Tests
The object-property case covers arrow functions, function expressions, nested deferred functions, used owners, eager dynamic imports, and side-effectful sibling properties.
Related links
Checklist