Update SpiderMonkey to 153_0esr_RELEASE - #803
Conversation
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
|
Whats the reason for removing the Linux armv7 builds? Upstream dropped support? |
No, we would just need to update cross images, but my rationale was that armv7 as an arch is covered by android and arm64-linux means that it will probably also work on linux. Ideally we should be able to run/compile it on arm64 runners anyway. |
|
https://github.com/servo/mozjs/blob/main/README.md instructions are still for 140. Should that be updated to 153 as well? |
|
I think we might want to still do something about HOST_CC / HOST_CXX before this lands (could be in a seperate PR that we rebase on). My suggestion would be to not just check |
So you propose we populate HOST_CC with newer clang? I am not sure how I feel about this aditional logic. It would be ok if we could reuse something from cc-rs or bindgen, but I am not sure something version oriented like this exists there. Anyway I consider those stuff non blocking as most user will use artifact anyway, meaning they will get away with older clang. |
|
I will have time tomorrow to review this. |
|
I published dummy version of mozjs extracted crates and invited jdm as co-owner and setup trusted publishing, so it should just work on land. |
updated filters extract patched icu crates as mozjs-extracted-crates update patches Co-authored-by: Jonathan Schwender <schwenderjonathan@gmail.com> Co-authored-by: Gae24 <96017547+Gae24@users.noreply.github.com> Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
|
For some reason I can't see |
We run devtools test CI and it doesn't crashes, but it sure looks wrong (C++ compilers are useless). |
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
They did crash, but they work now so good catch. |
jdm
left a comment
There was a problem hiding this comment.
The changes in this PR look reasonable to me. I'm going to take a look at the servo one next.
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Companion PR to servo/mozjs#803 So this has been in the baking for a month at servo/mozjs#687. As in mozjs we need to update clang, NDK. The most interesting changes are microtask as jobqueue now lives in SM which greatly simplifies our logic, but running the queue is somehow harder. There is no need for enqueue promise job hook and we now have special hook to define incubemnt global of task (we do things more correctly now which brings two more passes). The second big change is moduleloading which is now mainly implemented in SM. Moduleloading commit was mainly written by @Gae24. Reviewable per commit. Testing: Covered by WPT. --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com> Co-authored-by: Gae24 <96017547+Gae24@users.noreply.github.com>
We already run publish there. I did this in #803 for testing but when squashing forgot to revert it. Signed-off-by: Sam <16504129+sagudev@users.noreply.github.com>
There are some changes in hazard packaging in TC so we repackage to older format to avoid more work.
SM now unconditionally depends on some rust code: vendored&patched icu crates and some glue crates that bridge icu through rust to C. Because recursive cargo invocation are no go we extract rust crates from tar and import them in our tree. This means we will publish all those mozilla and patched icu crates under mozjs- prefix. We also need to provide headers from cbindgen to SM, so we reuse same pattern as we used for zlib for this.
Then there are some boring changes like requiring newer clang, NDK.
We fixed and added some more patches and some glue. The most important parts are changes to JobQueue (for microtask changes) and some additional moduleloading code. For their use see corresponding commits in servo companion PR.
Reviewable per commits. During working on this I squashed many commits otherwise rebase would be hellish.
Testing: Covered by existing tests.
Servo PR: servo/servo#47489
Fixes #687