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

Not all assert calls are being removed from v0.js by babel transforms #23960

Closed
rsimha opened this issue Aug 14, 2019 · 6 comments · Fixed by #24028, #28127 or #24047
Closed

Not all assert calls are being removed from v0.js by babel transforms #23960

rsimha opened this issue Aug 14, 2019 · 6 comments · Fixed by #24028, #28127 or #24047

Comments

@rsimha
Copy link
Contributor

rsimha commented Aug 14, 2019

#23377 updated the babel transforms to remove assert calls. This should have paved the way for the removal of AmpPass.java from the custom closure compiler runner. However, removing AmpPass.java increases the number of instances of assert in v0.js from 20 to 80.

Before removing AmpPass.java: 20 instances
After removing AmpPass.java: 80 instances

See discussion at #23377 (comment)

@rsimha
Copy link
Contributor Author

rsimha commented Sep 9, 2019

This is still an issue. Reopening based on the discussion at #24047 (comment)

@kevinkimball
Copy link
Contributor

@erwinmombay is this issue still relevant?

@rsimha
Copy link
Contributor Author

rsimha commented Apr 14, 2020

@erwinmombay is this issue still relevant?

Yes, this is still relevant, and is the only thing that's blocking #24047. Start reading from #24047 (comment) for the latest status.

/cc @kristoferbaxter who is waiting on #24047 to be merged in order to fix a concurrency bug with our custom closure compiler runner.

@rsimha
Copy link
Contributor Author

rsimha commented Apr 29, 2020

@jridgewell @erwinmombay Can we prioritize this fix and unblock #24047? Our inability to remove AmpPass.java is resulting in cascading build problems, because (as discovered by @kristoferbaxter), runner.jar does not reliably run in a concurrent fashion due to the code in AmpPass.java.

@kristoferbaxter
Copy link
Contributor

I’m out on paternity leave, but started work on a refactor of the Babel transforms necessary to complete this transition.

Note, once complete you can use the async pool implementation (used internally in filesize and open sourced separately) and remove nailgun. Those combined improve compilation times for everyone significantly.

All together on a sample machine it was a 12x reduction in build time.

An additional optimization to finish later would be to request the compilation of all resources together as a complete array instead of extensions separately from runtime.

@rsimha
Copy link
Contributor Author

rsimha commented Apr 30, 2020

Reopening due to non-trivial diffs in extension code, leading to test failures: #24047 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment