Skip to content
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

Disable Symbol typeof transform #5278

Merged
merged 1 commit into from
Oct 3, 2018
Merged

Disable Symbol typeof transform #5278

merged 1 commit into from
Oct 3, 2018

Conversation

gaearon
Copy link
Contributor

@gaearon gaearon commented Oct 3, 2018

I think leaving it on was a mistake. It causes some issues (#5267), but more fundamentally, it's a leaky abstraction. It tries to make typeof behave to return 'symbol' for Symbols by hijacking every single typeof. This leads to slowing down all code for the benefit of edge cases that likely won't work 100% correctly anyway. It definitely makes React slower (I've measured this before).

I considered disabling it just for node_modules at first. But I don't see good reasons to leave it on in application code either. Code that relies on this is inherently fragile and can break in other ways.

We're early enough in 2.x cycle that I consider this a bugfix. It definitely will fix bugs for some libraries in node_modules. And arguably performance improvements in the application code are worth the edge case issues that this would uncover.

@Timer Timer added this to the 2.0.4 milestone Oct 3, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants