Conversation
|
macos unit test fails: but there is no change to fetch(-related) code |
|
Should rust-version in Cargo.toml be updated as well? |
Good catch! I changed it in the latest version. |
|
Huh, I don't reproduce the hang with a debug/release build locally, but I do get this: Filed #36837 since this also reproduces on main. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
|
my plan to fix this:
|
|
It works normally in my fork: https://github.com/sagudev/servo/actions/runs/14840532532/job/41662172500 I think the problem is in our self hosted runners. @delan we might need CLOBBER |
|
This PR consistently breaks about:memory for me with: |
|
Ah, we're hitting https://blog.rust-lang.org/2025/04/03/Rust-1.86.0/#debug-assertions-that-pointers-are-non-null-when-required-for-soundness rather than a miscompilation. I've opened #36869 that avoids this. |
…ndler custom data (#36869) While the vast majority of DOM proxy objects created have a non-null pointer in the handler's extra data field, there is one place we create a proxy object that has a null pointer: https://github.com/servo/servo/blob/8b05b7449d3ceaeb6ae834246012ac04a4f048c6/components/script/window_named_properties.rs#L76 . Before #36818, dereferencing this null pointer was undefined behaviour that was silently being ignored; now that Rust 1.86 adds debug pointer validity checks, we get a panic when trying to dereference it. Testing: Tested about:memory with rustc 1.86. --------- Signed-off-by: Josh Matthews <[email protected]>
…ndler custom data (servo#36869) While the vast majority of DOM proxy objects created have a non-null pointer in the handler's extra data field, there is one place we create a proxy object that has a null pointer: https://github.com/servo/servo/blob/8b05b7449d3ceaeb6ae834246012ac04a4f048c6/components/script/window_named_properties.rs#L76 . Before servo#36818, dereferencing this null pointer was undefined behaviour that was silently being ignored; now that Rust 1.86 adds debug pointer validity checks, we get a panic when trying to dereference it. Testing: Tested about:memory with rustc 1.86. --------- Signed-off-by: Josh Matthews <[email protected]>
|
And now rustc 1.87 is available :) |
|
🔨 Triggering try run (#17066407600) for MacOS |
|
🔨 Triggering try run (#17066477502) for Linux (Build libservo) |
|
|
Signed-off-by: sagudev <[email protected]>
|
🔨 Triggering try run (#17067002229) for Linux (Build libservo) |
|
✨ Try run (#17067002229) succeeded. |
…38780) This is a follow up to #36818 (comment). Since openxr is a feature only available on Windows, it was omitted. Testing: Fixes ``` warning: hiding a lifetime that's elided elsewhere is confusing --> components\webxr\openxr\input.rs:366:9 | 366 | &self, | ^^^^^ the lifetime is elided here ... 371 | ) -> Vec<Binding> { | ------- the same lifetime is hidden here | = help: the same lifetime is referred to in inconsistent ways, making the signature confusing = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default help: use `'_` for type paths | 371 | ) -> Vec<Binding<'_>> { ``` Signed-off-by: Euclid Ye <[email protected]>
Update Rustc to 1.89. Reviewable by commit. Leftover work: - servo#37330 - servo#38777 --------- Signed-off-by: sagudev <[email protected]> Co-authored-by: sagudev <[email protected]>
…ervo#38780) This is a follow up to servo#36818 (comment). Since openxr is a feature only available on Windows, it was omitted. Testing: Fixes ``` warning: hiding a lifetime that's elided elsewhere is confusing --> components\webxr\openxr\input.rs:366:9 | 366 | &self, | ^^^^^ the lifetime is elided here ... 371 | ) -> Vec<Binding> { | ------- the same lifetime is hidden here | = help: the same lifetime is referred to in inconsistent ways, making the signature confusing = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default help: use `'_` for type paths | 371 | ) -> Vec<Binding<'_>> { ``` Signed-off-by: Euclid Ye <[email protected]>
Update Rustc to 1.89. Reviewable by commit. Leftover work: - servo#37330 - servo#38777 --------- Signed-off-by: sagudev <[email protected]> Co-authored-by: sagudev <[email protected]>
…ervo#38780) This is a follow up to servo#36818 (comment). Since openxr is a feature only available on Windows, it was omitted. Testing: Fixes ``` warning: hiding a lifetime that's elided elsewhere is confusing --> components\webxr\openxr\input.rs:366:9 | 366 | &self, | ^^^^^ the lifetime is elided here ... 371 | ) -> Vec<Binding> { | ------- the same lifetime is hidden here | = help: the same lifetime is referred to in inconsistent ways, making the signature confusing = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default help: use `'_` for type paths | 371 | ) -> Vec<Binding<'_>> { ``` Signed-off-by: Euclid Ye <[email protected]>
Update Rustc to 1.89. Reviewable by commit. Leftover work: - servo#37330 - servo#38777 --------- Signed-off-by: sagudev <[email protected]> Co-authored-by: sagudev <[email protected]>
…ervo#38780) This is a follow up to servo#36818 (comment). Since openxr is a feature only available on Windows, it was omitted. Testing: Fixes ``` warning: hiding a lifetime that's elided elsewhere is confusing --> components\webxr\openxr\input.rs:366:9 | 366 | &self, | ^^^^^ the lifetime is elided here ... 371 | ) -> Vec<Binding> { | ------- the same lifetime is hidden here | = help: the same lifetime is referred to in inconsistent ways, making the signature confusing = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default help: use `'_` for type paths | 371 | ) -> Vec<Binding<'_>> { ``` Signed-off-by: Euclid Ye <[email protected]>
|
The mismatched_lifetime_syntaxes lint is complaining a lot when I compile Servo patched with a local Stylo. Was there a way to automatically address the warnings, or does it need to be manual? |
Setting |
|
Not really, I did do find and replace on most common types tho. |
Update Rustc to 1.89.
Reviewable by commit.
Leftover work:
HTMLImageElement::finish_reacting_to_environment_changeis swapping refs instead of the actual data #38777