New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deoptimize all parameters when losing track of a function #5158
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
Thank you for your contribution! ❤️You can try out this pull request locally by installing Rollup via npm install rollup/rollup#gh-5156-treeshake-if Notice: Ensure you have installed Rust nightly. If you haven't installed it yet, please first see https://www.rust-lang.org/tools/install to learn how to download Rustup and install Rust, then see https://rust-lang.github.io/rustup/concepts/channels.html to learn how to install Rust nightly. or load it into the REPL: |
Codecov Report
@@ Coverage Diff @@
## master #5158 +/- ##
==========================================
+ Coverage 98.93% 98.94% +0.01%
==========================================
Files 226 226
Lines 8444 8447 +3
Branches 2319 2319
==========================================
+ Hits 8354 8358 +4
Misses 32 32
+ Partials 58 57 -1
|
This PR has been released as part of rollup@3.29.4. You can test it via |
<p>This PR was automatically created by Snyk using the credentials of a real user.</p><br /><h3>Snyk has created this PR to upgrade rollup from 3.29.4 to 4.0.0.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> *Warning:* This is a major version upgrade, and may be a breaking change. - The recommended version is **25 versions** ahead of your current version. - The recommended version was released **21 days ago**, on 2023-10-05. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>rollup</b></summary> <ul> <li> <b>4.0.0</b> - <a href="https://snyk.io/redirect/github/rollup/rollup/releases/tag/v4.0.0">2023-10-05</a></br><h2>4.0.0</h2> <p><em>2023-10-05</em></p> <h3>BREAKING CHANGES</h3> <h4>General Changes</h4> <ul> <li>The minimal required Node version is now 18.0.0 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899815236" data-permission-text="Title is private" data-url="rollup/rollup#5142" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5142/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5142">#5142</a>)</li> <li>The browser build now relies on a WASM artifact that needs to be provided as well (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>The NodeJS build now relies on an optional native binary; for unsupported platforms, users can use the <code>@ rollup/wasm-node</code> package that has the same interface as Rollup but relies on WASM artifacts (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>The "with" syntax for import attributes is not yet supported, awaiting support in SWC (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>The <code>INVALID_IMPORT_ASSERTION</code> error code has been replaced with <code>INVALID_IMPORT_ATTRIBUTE</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>Rollup will now warn for <code>@ __PURE__</code> and <code>@ __NO_SIDE_EFFECTS__</code> annotations in invalid locations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1921228669" data-permission-text="Title is private" data-url="rollup/rollup#5165" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5165/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5165">#5165</a>)</li> <li>If an entry module starts with a shebang comment <code>#!...</code>, this comment will be prepended to the output for <code>es</code> and <code>cjs</code> formats (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1920177473" data-permission-text="Title is private" data-url="rollup/rollup#5163" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5163/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5163">#5163</a>)</li> <li>File hashes will now use url-safe base64 encoded hashes (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1911769288" data-permission-text="Title is private" data-url="rollup/rollup#5155" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5155/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5155">#5155</a>)</li> <li>The maximum hash length has been reduced to 22 characters (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1911769288" data-permission-text="Title is private" data-url="rollup/rollup#5155" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5155/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5155">#5155</a>)</li> <li>The <code>RollupWarning</code> type has been removed in favor of the <code>RollupLog</code> type (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1906127628" data-permission-text="Title is private" data-url="rollup/rollup#5147" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5147/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5147">#5147</a>)</li> </ul> <h4>Changes to Rollup Options</h4> <ul> <li>Acorn plugins are no longer supported, the <code>acornInjectPlugins</code> option has been removed (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>The <code>acorn</code> option has been removed (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li><code>output.externalImportAssertions</code> has been deprecated in favor of <code>output.externalImportAttributes</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li><code>inlineDynamicImports</code>, <code>manualChunks</code> and <code>preserveModules</code> have been removed on input option level: Please use the corresponding output options of the same names (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899897351" data-permission-text="Title is private" data-url="rollup/rollup#5143" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5143/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5143">#5143</a>)</li> <li>Removed output options (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899897351" data-permission-text="Title is private" data-url="rollup/rollup#5143" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5143/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5143">#5143</a>): <ul> <li><code>output.experimentalDeepDynamicChunkOptimization</code>: This option is no longer needed as Rollup now always runs the full chunking algorithm</li> <li><code>output.dynamicImportFunction</code>: Use the <code>renderDynamicImport</code> plugin hook instead</li> <li><code>output.namespaceToStringTag</code>: Use <code>output.generatedCode.symbols</code> instead</li> <li><code>output.preferConst</code>: Use <code>output.generatedCode.constBindings</code> instead</li> </ul> </li> </ul> <h4>Plugin API Changes</h4> <ul> <li>For <code>this.resolve</code>, the default of the <code>skipSelf</code> option is now <code>true</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899815236" data-permission-text="Title is private" data-url="rollup/rollup#5142" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5142/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5142">#5142</a>)</li> <li><code>this.parse</code> now only supports the <code>allowReturnOutsideFunction</code> option for now (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>Import assertions now use the <a href="https://snyk.io/redirect/github/estree/estree/blob/master/experimental/import-attributes.md">new import attribute AST structure</a> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>"assertions" have been replaced with "attributes" in various places of the plugin interface (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>If the import of a module id is handled by the <code>load</code> hook of a plugin, <code>rollup.watch</code> no longer watches the actual file if the module id corresponds to a real path; if this is intended, then the plugin is responsible for calling <code>this.addWatchFile</code> for any dependency files (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1908157110" data-permission-text="Title is private" data-url="rollup/rollup#5150" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5150/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5150">#5150</a>)</li> <li>The normalized input options provided by <code>buildStart</code> and other hooks no longer contain an <code>onwarn</code> handler; plugins should use <code>onLog</code> instead (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1906127628" data-permission-text="Title is private" data-url="rollup/rollup#5147" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5147/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5147">#5147</a>)</li> <li><code>this.moduleIds</code> has been removed from the plugin context: Use <code>this.getModuleIds()</code> instead (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899897351" data-permission-text="Title is private" data-url="rollup/rollup#5143" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5143/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5143">#5143</a>)</li> <li>The <code>hasModuleSideEffects</code> flag has been removed from the <code>ModuleInfo</code> returned by <code>thi s.getModuleInfo()</code>: Use <code>moduleSideEffects</code> on the <code>ModuleInfo</code> instead (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1899897351" data-permission-text="Title is private" data-url="rollup/rollup#5143" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5143/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5143">#5143</a>)</li> </ul> <h3>Features</h3> <ul> <li>Improve parsing speed by switching to a native SWC-based parser (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1820063431" data-permission-text="Title is private" data-url="rollup/rollup#5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5073">#5073</a>)</li> <li>Rollup will now warn for <code>@ __PURE__</code> and <code>@ __NO_SIDE_EFFECTS__</code> annotations in invalid locations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1921228669" data-permission-text="Title is private" data-url="rollup/rollup#5165" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5165/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5165">#5165</a>)</li> <li>The parser is now exposed as a separate export <code>parseAst</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1928078406" data-permission-text="Title is private" data-url="rollup/rollup#5169" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5169/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5169">#5169</a>)</li> </ul> <h3>Bug Fixes</h3> <ul> <li>Rollup no longer tries to watch virtual files if their name corresponds to an actual file name; instead, plugins handle watching via <code>this.addWatchFile()</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1908157110" data-permission-text="Title is private" data-url="rollup/rollup#5150" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5150/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5150">#5150</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5073" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5073/hovercard">#5073</a>: [v4.0] Switch parser to SWC and introduce native/WASM code (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5142" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5142/hovercard">#5142</a>: [v4.0] Set the default of skipSelf to true (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5143" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5143/hovercard">#5143</a>: [v4.0] Remove deprecated features (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5144" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5144/hovercard">#5144</a>: [v4.0] Imporve the performance of generating ast and rollup ast nodes (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5147" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5147/hovercard">#5147</a>: [v4.0] Remove onwarn from normalized input options (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5150" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5150/hovercard">#5150</a>: [v4.0] feat: Do not watch files anymore if their content is returned by the load hook (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5154" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5154/hovercard">#5154</a>: [v4.0] Add parse option to allow return outside function (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5155" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5155/hovercard">#5155</a>: [v4.0] feat: implement hashing content in Rust (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5157" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5157/hovercard">#5157</a>: [v4.0] Handle empty exports (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5160" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5160/hovercard">#5160</a>: chore(deps): lock file maintenance minor/patch updates (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/renovate">@ renovate</a>[bot])</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5163" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5163/hovercard">#5163</a>: [v4.0] feat: preserve shebang in entry module for CJS and ESM outputs (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5164" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5164/hovercard">#5164</a>: [v4.0] fix: also strip BOM from code strings in JS (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TrickyPi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/TrickyPi">@ TrickyPi</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5165" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5165/hovercard">#5165</a>: [v4.0] warn for invalid annotations (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5168" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5168/hovercard">#5168</a>: [v4.0] Ensure we support new import attribute "with" syntax (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5169" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5169/hovercard">#5169</a>: [v4.0] Expose parser (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> </ul> </li> <li> <b>4.0.0-25</b> - <a href="https://snyk.io/redirect/github/rollup/rollup/releases/tag/v4.0.0-25">2023-10-05</a></br><p>4.0.0-25</p> </li> <li> <b>4.0.0-24</b> - 2023-10-03 </li> <li> <b>4.0.0-23</b> - 2023-09-26 </li> <li> <b>4.0.0-22</b> - 2023-09-26 </li> <li> <b>4.0.0-21</b> - 2023-09-24 </li> <li> <b>4.0.0-20</b> - 2023-09-24 </li> <li> <b>4.0.0-19</b> - 2023-09-15 </li> <li> <b>4.0.0-18</b> - 2023-09-15 </li> <li> <b>4.0.0-17</b> - 2023-09-15 </li> <li> <b>4.0.0-16</b> - 2023-09-15 </li> <li> <b>4.0.0-15</b> - 2023-09-15 </li> <li> <b>4.0.0-14</b> - 2023-09-15 </li> <li> <b>4.0.0-13</b> - 2023-08-24 </li> <li> <b>4.0.0-12</b> - 2023-08-23 </li> <li> <b>4.0.0-10</b> - 2023-08-21 </li> <li> <b>4.0.0-9</b> - 2023-08-20 </li> <li> <b>4.0.0-8</b> - 2023-08-20 </li> <li> <b>4.0.0-7</b> - 2023-08-20 </li> <li> <b>4.0.0-6</b> - <a href="https://snyk.io/redirect/github/rollup/rollup/releases/tag/v4.0.0-6">2023-08-20</a></br><p>Check publish</p> </li> <li> <b>4.0.0-5</b> - 2023-08-20 </li> <li> <b>4.0.0-4</b> - 2023-08-04 </li> <li> <b>4.0.0-3</b> - 2023-08-04 </li> <li> <b>4.0.0-2</b> - 2023-08-01 </li> <li> <b>4.0.0-1</b> - 2023-08-01 </li> <li> <b>3.29.4</b> - <a href="https://snyk.io/redirect/github/rollup/rollup/releases/tag/v3.29.4">2023-09-28</a></br><h2>3.29.4</h2> <p><em>2023-09-28</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix static analysis when an exported function uses callbacks (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1914196648" data-permission-text="Title is private" data-url="rollup/rollup#5158" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5158/hovercard" href="https://snyk.io/redirect/github/rollup/rollup/pull/5158">#5158</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://snyk.io/redirect/github/rollup/rollup/pull/5158" data-hovercard-type="pull_request" data-hovercard-url="/rollup/rollup/pull/5158/hovercard">#5158</a>: Deoptimize all parameters when losing track of a function (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lukastaegert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/lukastaegert">@ lukastaegert</a>)</li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/rollup/rollup/releases">rollup GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>rollup</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/2f261358c62b4f9e62cb86bf99de8d4ff3668994">2f26135</a> 4.0.0</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/4e8e5b40cf6eb1be278c9e2146c073db8ea603ec">4e8e5b4</a> [v4.0] Expose parser (#5169)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/cade24fbf3390a31734301a1f803b24e34b6cedd">cade24f</a> [v4.0] Ensure we support new import attribute "with" syntax (#5168)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/dd709c3fab369232c7c08089162981e1a44bdd60">dd709c3</a> [v4.0] warn for invalid annotations (#5165)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/bfbea66569491f5466fbba99de2ba6a0225f851b">bfbea66</a> [v4.0] feat: preserve shebang in entry module for CJS and ESM outputs (#5163)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/4e562e52db3f55832de17ce02fabcc05c292861f">4e562e5</a> [v4.0] fix: also strip BOM from code strings in JS (#5164)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/fbc25afcc2e494b562358479524a88ab8fe0f1bf">fbc25af</a> [v4.0] feat: implement hashing content in Rust (#5155)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/0b0eabd8cd93de7c6b69c95a4cac24559c040b80">0b0eabd</a> [v4.0] Handle empty exports (#5157)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/fda977bb38ab31638c3a4a18e0c4f8b9c8482e6c">fda977b</a> [v4.0] Add parse option to allow return outside function (#5154)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/7325320ad95955540e1bb38dab9d600f569d915c">7325320</a> [v4.0] Remove onwarn from normalized input options (#5147)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/accd66a4247dfdb4d7f2605b399d12d001e5a3ed">accd66a</a> [v4.0] feat: Do not watch files anymore if their content is returned by the load hook (#5150)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/55abe0fbf7116c9160a53da6a27cc9bce2eafd40">55abe0f</a> [v4.0] Remove deprecated features (#5143)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/62cbff4a20030c5d787f3162ea29981e40525030">62cbff4</a> [v4.0] Imporve the performance of generating ast and rollup ast nodes (#5144)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/92864d48896dd09c0381d4b1cbef769a03c3f7d1">92864d4</a> [v4.0] Set the default of skipSelf to true (#5142)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/643272e0d11a28bd56491719b75f95147bb66ac7">643272e</a> [v4.0] Switch parser to SWC and introduce native/WASM code (#5073)</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/4576ef3dfaf83415b319c851acd1a85b100e4ad1">4576ef3</a> [v4.0] Set minimum Node version to 18</li> <li><a href="https://snyk.io/redirect/github/rollup/rollup/commit/fac5f1c1c12dc0409ff090664e305586747dc2f7">fac5f1c</a> chore(deps): lock file maintenance minor/patch updates (#5160)</li> </ul> <a href="https://snyk.io/redirect/github/rollup/rollup/compare/a6448b99f725d457e35821b73a865b5c4d4c6a61...2f261358c62b4f9e62cb86bf99de8d4ff3668994">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiIwNGFkNWFlMS01YjE4LTQ3N2MtOGZiOC05MzI3MzQ0MjJlYmEiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6IjA0YWQ1YWUxLTViMTgtNDc3Yy04ZmI4LTkzMjczNDQyMmViYSJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/woodpile37/project/edb93f5a-17e2-4a56-beb9-1796f0e58302?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/woodpile37/project/edb93f5a-17e2-4a56-beb9-1796f0e58302/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/woodpile37/project/edb93f5a-17e2-4a56-beb9-1796f0e58302/settings/integration?pkg=rollup&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) <!--- (snyk:metadata:{"prId":"04ad5ae1-5b18-477c-8fb8-932734422eba","prPublicId":"04ad5ae1-5b18-477c-8fb8-932734422eba","dependencies":[{"name":"rollup","from":"3.29.4","to":"4.0.0"}],"packageManager":"npm","type":"auto","projectUrl":"https://app.snyk.io/org/woodpile37/project/edb93f5a-17e2-4a56-beb9-1796f0e58302?utm_source=github&utm_medium=referral&page=upgrade-pr","projectPublicId":"edb93f5a-17e2-4a56-beb9-1796f0e58302","env":"prod","prType":"upgrade","vulns":[],"issuesToFix":[],"upgrade":[],"upgradeInfo":{"versionsDiff":25,"publishedDate":"2023-10-05T15:15:21.062Z"},"templateVariants":[],"hasFixes":false,"isMajorUpgrade":true,"isBreakingChange":true,"priorityScoreList":[]}) --->
This PR contains:
Are tests included?
Breaking Changes?
List any relevant issue numbers:
if
statement #5156Description
I wonder why this did not turn up earlier. Basically we need to assume a function can be called with arbitrary values when we lose track of it e.g. because it is exported.