81.0 FTBFS in css_parser with rust 1.47
Categories
(Core :: CSS Parsing and Computation, defect)
Tracking
()
People
(Reporter: gaston, Unassigned)
Details
Testing the new rust 1.47.0 release which builds 82.0b9 without issues, but building 81.0.1 fails with strange errors in rust code that hasnt changed in ages, and seems to be the same in beta..
Compiling style_traits v0.0.1 (/usr/obj/ports/firefox-81.0.1/firefox-81.0.1/servo/components/style_traits)
Running `CARGO=/usr/local/bin/cargo CARGO_CRATE_NAME=style_traits CARGO_MANIFEST_DIR=/usr/obj/ports/firefox-81.0.1/firefox-81.0.1/servo/components/style_traits CARGO_PKG_AUTHORS='The Servo Project Developers' CARGO_PKG_DESCRIPTION=''
CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE=MPL-2.0 CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=style_traits CARGO_PKG_REPOSITORY='' CARGO_PKG_VERSION=0.0.1 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=0 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/usr/obj/ports/firefox-81.0.1/build-amd64/release/deps:/usr/local/lib' /usr/local/bin/rustc --crate-name style_traits servo/components/style_traits/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C panic=abort -C linker-plugin-lto --cfg 'feature="gecko"' -C metadata=4246abbcd1c993f0 -C extra-filename=-4246abbcd1c993f0 --out-dir /usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps --target x86_64-unknown-openbsd -C linker=/usr/obj/ports/firefox-81.0.1/firefox-81.0.1/build/cargo-linker -L dependency=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps -L dependency=/usr/obj/ports/firefox-81.0.1/build-amd64/release/deps --extern app_units=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libapp_units-120264a13b2750c2.rmeta --extern bitflags=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libbitflags-6206c8c6d82c4ab2.rmeta --extern cssparser=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libcssparser-9926c318acdf7e63.rmeta --extern euclid=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libeuclid-0499bce74cad9f6c.rmeta --extern lazy_static=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/liblazy_static-06d56d7997c67a89.rmeta --extern malloc_size_of=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libmalloc_size_of-aaf2e7631c4b904d.rmeta --extern malloc_size_of_derive=/usr/obj/ports/firefox-81.0.1/build-amd64/release/deps/libmalloc_size_of_derive-02af885905dcc758.so --extern selectors=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libselectors-2acaa3337615d3dc.rmeta --extern serde=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libserde-b6f7cac8286200e3.rmeta --extern servo_arc=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libservo_arc-dc7cfdddbbf4420f.rmeta --extern to_shmem=/usr/obj/ports/firefox-81.0.1/build-amd64/x86_64-unknown-openbsd/release/deps/libto_shmem-2de4fcb1fa3bd356.rmeta --extern to_shmem_derive=/usr/obj/ports/firefox-81.0.1/build-amd64/release/deps/libto_shmem_derive-d3ea810c65de15ed.so -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes --cap-lints warn -Cembed-bitcode=yes -C codegen-units=1`
error: expected literal
--> servo/components/style_traits/viewport.rs:12:1
|
12 | / define_css_keyword_enum! {
13 | | pub enum UserZoom {
14 | | Zoom = "zoom",
15 | | Fixed = "fixed",
16 | | }
17 | | }
| |_^
|
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
error: expected literal
--> servo/components/style_traits/viewport.rs:19:1
|
19 | / define_css_keyword_enum! {
20 | | pub enum Orientation {
21 | | Auto = "auto",
22 | | Portrait = "portrait",
23 | | Landscape = "landscape",
24 | | }
25 | | }
| |_^
|
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0425]: cannot find value `MAX_LENGTH` in module `cssparser_internal`
--> servo/components/style_traits/viewport.rs:12:1
|
12 | / define_css_keyword_enum! {
13 | | pub enum UserZoom {
14 | | Zoom = "zoom",
15 | | Fixed = "fixed",
16 | | }
17 | | }
| |_^ not found in `cssparser_internal`
|
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0425]: cannot find value `MAX_LENGTH` in module `cssparser_internal`
--> servo/components/style_traits/viewport.rs:19:1
|
19 | / define_css_keyword_enum! {
20 | | pub enum Orientation {
21 | | Auto = "auto",
22 | | Portrait = "portrait",
23 | | Landscape = "landscape",
24 | | }
25 | | }
| |_^ not found in `cssparser_internal`
|
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
error: aborting due to 4 previous errors
For more information about this error, try `rustc --explain E0425`.
error: could not compile `style_traits`.
Comment 1•4 years ago
|
||
Yeah, this is https://github.com/rust-lang/rust/issues/76480.
Bug 1663715 fixed this. Do you need this uplifted somehow?
Reporter | ||
Comment 2•4 years ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #1)
Yeah, this is https://github.com/rust-lang/rust/issues/76480.
Bug 1663715 fixed this. Do you need this uplifted somehow?
Oh thanks, havent been able to find it.. well, it needs uplifting if one plans to build 81 with rust 1.47, decision which is left to releng ? As 81.0.2 just went to build.. oh well.
I see on bug 1663715 that 78esr is also affected and that uplifts have been requested for it, so why not for 81 ? In the meantime, i'll try to locally backport those.
Comment 3•4 years ago
|
||
(In reply to Landry Breuil (:gaston) from comment #2)
I see on bug 1663715 that 78esr is also affected and that uplifts have been requested for it, so why not for 81 ? In the meantime, i'll try to locally backport those.
Mostly because ESR has a lot longer support window, but sure, I'll try to uplift them to 81. You likely need bug 1663677 too, can you confirm that?
Reporter | ||
Comment 4•4 years ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #3)
(In reply to Landry Breuil (:gaston) from comment #2)
I see on bug 1663715 that 78esr is also affected and that uplifts have been requested for it, so why not for 81 ? In the meantime, i'll try to locally backport those.
Mostly because ESR has a lot longer support window, but sure, I'll try to uplift them to 81. You likely need bug 1663677 too, can you confirm that?
hmm, probably.. or we can also wait for 82 to be out and update rust to 1.47 after that, which would only then require us to backport the uplifts to 78esr if they missed 78.4.
Reporter | ||
Comment 5•4 years ago
|
||
i'm a bit lost now, since https://hg.mozilla.org/releases/mozilla-esr78/rev/65acca4d6d8b9e7d9f371c477656a1c5c8c3fbcf & https://hg.mozilla.org/releases/mozilla-esr78/rev/feb6a72d2e799af4df13e1f3d21bb32105f3b6d1 were backported to 78esr, something must still be missing as i fail to build 78.4.0rc2 with rust 1.47.
Reporter | ||
Updated•4 years ago
|
Comment 6•4 years ago
|
||
I think you still need bug 1663715, which didn't make it.
Reporter | ||
Comment 7•4 years ago
|
||
Ugh, https://hg.mozilla.org/integration/autoland/rev/e2cede25c027 will be painful to handle as a jumbo patch...sigh, well, thanks for pointing out the right bug/commit
Updated•4 years ago
|
Reporter | ||
Comment 8•4 years ago
|
||
just as a data point, thunderbird 78.4.0 and firefox esr 78.4.0 build fine with rust 1.47.0, using a huge jumbo patch backporting https://hg.mozilla.org/integration/autoland/rev/e2cede25c027
Comment 9•4 years ago
|
||
The patch above is in esr now so I don't think we can do much more here. Thanks Landry :)
Description
•