-
Notifications
You must be signed in to change notification settings - Fork 124
Upgrade to SpiderMonkey 137 #584
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
base: main
Are you sure you want to change the base?
Conversation
TODO:
|
That could be rust-lang/rust-bindgen#2682 - you can work around this by explicitly setting LIBCLANG_PATH and CLANG_PATH. |
for
we can go back to packing all files or manually hardcode list of files we need (if there is no list generated at build). |
for integrity we should replace |
Note to self: the js_static_libs.list files looks like it came from mozjs/mozjs-sys/mozjs/python/mozbuild/mozbuild/backend/recursivemake.py Lines 1463 to 1465 in 728acdf
It's worth checking https://github.com/jdm/mozjs/blob/91a576a85a3f8902f5f2eaab6e1b9cd1d2d1bbca/mozjs-sys/mozjs/build/moz.configure/toolchain.configure#L3711C13-L3711C38 |
Verified that https://github.com/jdm/mozjs/blob/91a576a85a3f8902f5f2eaab6e1b9cd1d2d1bbca/mozjs-sys/mozjs/build/moz.configure/toolchain.configure#L3707-L3708 is returning None in the windows builds. |
Currently blocked on:
Currently investigating:
|
The NDK 26 error is this:
|
The windows build failures are a regression caused by https://hg-edge.mozilla.org/mozilla-central/rev/5dd0a7f7b85a, which mistranslated ar_supports_response_files so the list file is deleted before the ar command has a chance to read it. |
The android issue looks like jsapi.cpp (our special file for bindgen) is not being built with |
debugmozjs failure:
Commenting out the problem MOZ_ASSERT allows the build to succeed. |
f7ff8f9
to
d35fa2d
Compare
@mukilan You've done a bunch of Android build integration before, IIRC. Do you have any idea about what to try to fix this error when building jsapi.cpp for Android?
|
What's the status/plan of this PR? I see that you made a lot of progress to make the Android build pass. Over in Servo a lot of WPT tests start passing. Are we waiting for a particular release or any other blocking factors we could help out with? I am eager to continue working on trusted types after this upgrade, but do take your time as required to get this across the finish line. |
At this point the only thing blocking it is solving the Android build issue from https://github.com/jdm/servo/actions/runs/15750256672 . Once that's complete, I need to collapse the stack of commits in this PR, make proper patches for the remaining changes to the upstream mozjs code, and figure out if the changes that allow it to build right now are acceptable to merge or if we need to dig deeper into why they're needed. In particular: |
All that being said, there's nothing wrong with starting the trusted types implementation work on top of this branch and servo/servo#37077 if you're eager! |
Do you also have an associated servo branch with |
That's https://github.com/jdm/servo/tree/137up . Latest status at servo/servo#37077 (comment) |
This PR is quite big with loads of commits and I have trouble following the status of it. It seems like many changes are related to the fact that files were moved into a subdirectory. Can we separate out the file moves from the actual upgrade so that it becomes easier to understand where this PR stands for merging? |
There are no file moves apart from the upgrade itself as dar as I know. It's strictly the upgrade and the changes required to make it pass CI on all platforms. |
Ah okay! Thanks for taking care of this massive undertaking |
7455c98
to
620d967
Compare
Oof. I no longer have the original xz file I downloaded, and I can't get it from taskcluster any more. I'd like to comment out the integrity step for this PR, get it merged, and then we can do a quick-ish followup for 138 that reinstates the patch integrity check using this repo's releases to host it. |
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
…roid. Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Servo builds and tests are passing, so we're good to review this for real. |
Hm, main result is still failing. |
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.
Hm, this and 1634a4b suggest that we do some compilation wrong (wrong flags), but let's not block this on that.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Companion servo PR: servo/servo#37077
Note to self: nontrivial Servo change required to implement this new jobqueue hook: