Add regression tests for instanceof#4525
Merged
lukastaegert merged 3 commits intomasterfrom Jun 10, 2022
Merged
Conversation
001639d to
4547588
Compare
Thank you for your contribution! ❤️You can try out this pull request locally by installing Rollup via npm install rollup/rollup#optimize-instanceofor load it into the REPL: |
Codecov Report
@@ Coverage Diff @@
## master #4525 +/- ##
=======================================
Coverage 98.89% 98.89%
=======================================
Files 208 208
Lines 7332 7332
Branches 2094 2094
=======================================
Hits 7251 7251
Misses 26 26
Partials 55 55
Continue to review full report at Codecov.
|
pos777
pushed a commit
to pos777/rollup
that referenced
this pull request
Jun 18, 2022
* Treeshake instanceof * Fix side effect and self-reference handling * Remove feature and add regression test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains:
Are tests included?
Breaking Changes?
List any relevant issue numbers:
#4524
Description
To not go empty handed after the explorations in #4524, this PR adds the regression tests created there so that we have them available when we have another attempt at tree-shaking instanceof.
The core of the problem is that there are quite legitimate use cases where the only usage of a class is in the left side of an instanceof, most importantly if the left side is a function parameter and the instance is passed as a parameter to that function.
One possible approach would be to actively determine if
But that would require quite a bit of new infrastructure just to support this, so I would rather hold off on this until we have a real use case.