Visitar URL original
Comparing v4.55.3...v4.56.0 · rollup/rollup · GitHub
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rollup/rollup
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v4.55.3
Choose a base ref
...
head repository: rollup/rollup
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v4.56.0
Choose a head ref
  • 3 commits
  • 161 files changed
  • 2 contributors

Commits on Jan 22, 2026

  1. Refine namespace handling (#6230)

    * Do not always include entire namespace when used as variable
    
    * Refine export handling in module
    
    Add general caching. The idea is to eventually merge this with the caching in
    NamespaceVariabe.getMemberVariables
    
    * Use cached exports in NamespaceVariable
    
    * Replace usages of cached namespace variables
    
    * Use cached map to get export names for variables
    
    * Use cached map in more places
    
    * Use cached exports to replace list of export names
    
    * Separate namespace- and all-export-inclusion
    
    * Refine namespace inclusion
    
    * Break early in some loop
    
    * Store ImportExpression resolution only on Node
    
    This will make it easier to handle includes etc.
    
    * Dynamically include dynamic import members
    
    Instead of doing static analysis, this dynamically links the namespace to its
    usage.
    Currently, this is not as good, some test cases need to be analyzed if we can
    improve here.
    
    * Improve tree-shaking to match most of the old behaviour
    
    * It was not easily to support optimizing (await import()).foo() because we
      cannot easily track if `foo` accesses `this`, in which case it could see the
      entire namespace. Added a regression test for this.
    * As .catch and .finally do not change property inclusion, we can now optimize
      cases where a .catch or .finally is followed by a .then
    * There was a bug in the synthetic namespace inclusion. Fixing this allows
    tree-shaking for synthetic namespaces.
    
    * Ensure Promise handler return value is deoptimized for now
    
    * Add test for deep object property tree-shaking
    
    * Avoid some property accesses and improve names
    
    * Remove TODO
    
    * Ensure catch and finally handlers are always included and deoptimized
    
    This also simplifies return value deoptimization
    
    * Reinstate system default export test
    
    * Clarify synthetic named export test
    lukastaegert authored Jan 22, 2026
    Configuration menu
    Copy the full SHA
    18ccab2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3506af2 View commit details
    Browse the repository at this point in the history
  3. 4.56.0

    lukastaegert committed Jan 22, 2026
    Configuration menu
    Copy the full SHA
    1cbac18 View commit details
    Browse the repository at this point in the history
Loading