-
Notifications
You must be signed in to change notification settings - Fork 732
bootstrap.py regression doubles distribution size #1546
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
Comments
I agree the dev dependencies should never be part of the distribution of emscripten/emsdk.
My understanding o the specific issue with closure compiler was that it was the various native binaries that the were the real problem, not the java version. Perhaps my memory is not correct, I will need to go back and re-read the issue. |
I can look into updated the emsdk build of emscripten to avoid shipping the result of |
@juj what is the process you use to create a distribution from the contents of the emsdk directory? I want to make sure the changes I make are compatible. |
Going back to npm/cli#558 and google/closure-compiler-npm#186 and https://chromium-review.googlesource.com/c/emscripten-releases/+/6388656, I'm pretty sure the original issue that were were trying to solve was not avoiding the installation of the java version of closure-compiler, but the installation of the all 3 mac/linux/windows binary versions. Indeed, its seems that the java version is actually still required, for example, on macOS arm64 machines. Currently we are seeing the fallback to the java version there due to the lack of the arm64 binary in npm: google/closure-compiler-npm#291 |
It looks like there is an unfortunate regression from the creation of the
bootstrap.py
script in Emscripten.Before
bootstrap.py
script, thenode_modules\
subdirectory on Windows would read81.0 MB (85,015,488 bytes)
in size. (afteremsdk install sdk-main-64bit
)After the addition of that script, it then reads
169 MB (177,525,552 bytes)
, a 2x increase.Here are the directory contents:
The diff reads:
I think this might be caused by the installation of dev dependencies in addition to the release dependencies? Plus then the java version of closure compiler, which Emscripten doesn't use/need.
This kind of increase causes threefold issues in our distribution at Unity:
It would be great somehow to get back to the previous state before the
bootstrap.py
regression. The PR #1541 caused a regression with removing Java closure compiler, but it went masked by the earlier regression with the bootstrap.py script.The text was updated successfully, but these errors were encountered: