-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
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
[Web] Update minimum requirements for emscripten to 3.1.62 #96610
[Web] Update minimum requirements for emscripten to 3.1.62 #96610
Conversation
I'm not too keen on dropping support for older compiler versions generally, especially versions as recent as just a couple months old. But if both @Faless and @adamscott think it's a good idea, I'm fine. Emscripten is relatively easy to update / use different versions for different projects, so I guess it's not too big a hassle for users to have to update. |
Are other compilers update at the same rhythm as emscripten? And is emscripten the outlier in version checks for flags? (from a quick check, there's only the Linux build that has a We obviously don't test every version of emscripten. It makes things kinda hard to maintain, isn't it? |
Bump, review feedback still needs to be addressed. |
af2554d
to
1ed9e42
Compare
My feeling is that we should always try to stay close to the latest version. The reason is that the whole WASM ecosystem is still evolving, with parts being understandardized and left to tool conventions including things like the metadata format for dynamic linking. You don't usually expect your application to break if you use an older or newer toolchain (when GCC did that it was a big fuss ). Emscripten, on the other hand, constantly changes flags, add/remove functionalities, and, more importantly, changes the runtime. Part of the heavy lifting emscripten does, is providing a "unix-like" runtime (file system, opengl abstraction, threads, etc). The runtime is constantly changing, using more modern APIs, converting things that had to be done in JS to WASM (because new WASM specs comes out), etc. This means that using old versions, will most likely produce worse, less performant binaries. In some cases (e.g. audio), old versions, may use now deprecated APIs, that would either no longer work, or have terrible performance in browsers (which no longer care about support them since they are deprecated). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
1ed9e42
to
3fc34f3
Compare
3fc34f3
to
a1e409c
Compare
Thanks! |
Debian 12 now can't build godot for web :/ |
I regularly build from Debian 12.
Use emsdk to install a recent version of the emscripten toolchain
https://github.com/emscripten-core/emsdk .
The version in Debian would have produced broken builds anyway for some
configuration (e.g. dlink+thread).
…On Sat, Sep 28, 2024, 12:53 Yevhen Babiichuk (DustDFG) < ***@***.***> wrote:
Debian 12 <https://packages.debian.org/en/bookworm/emscripten> now can't
build godot for web :/
—
Reply to this email directly, view it on GitHub
<#96610 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAM4C3RNGWZD5WLJCLQTP7LZY2DEFAVCNFSM6AAAAABNWUDAVSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBQGYYDCMZXGQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
This PR updates the minimum requirements for emscripten to 3.1.62
See godotengine/godot-cpp#1566 (comment) for more context.
tl;dr: Godot-cpp requires emscripten >= 3.1.62 to compile, why not set the same for the main project.