Not building Thunderbird-68.1.1 with Rust 1.38.0
Categories
(Thunderbird :: Build Config, defect)
Tracking
(Not tracked)
People
(Reporter: mozilla, Unassigned)
Details
User Agent: Mozilla/5.0 (X11; OS ROSA; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36
Steps to reproduce:
Updated to 68.1.1
Actual results:
7:25.96 error[E0506]: cannot assign to self.input.cached_token because it is borrowed
7:25.96 --> /builddir/build/BUILD/thunderbird-68.1.1/third_party/rust/cssparser/src/parser.rs:584:17
7:25.96 |
7:25.96 559 | pub fn next_including_whitespace_and_comments(&mut self) -> Result<&Token<'i>, BasicParseError<'i>> {
7:25.96 | - let's call the lifetime of this reference '1
7:25.96 ...
7:25.96 572 | Some(ref cached_token)
7:25.96 | ---------------- borrow of self.input.cached_token occurs here
7:25.96 ...
7:25.96 584 | self.input.cached_token = Some(CachedToken {
7:25.96 | ^^^^^^^^^^^^^^^^^^^^^^^ assignment to borrowed self.input.cached_token occurs here
7:25.96 ...
7:25.96 596 | Ok(token)
7:25.96 | --------- returning this value requires that self.input.cached_token.0 is borrowed for '1
7:25.99 media/webrtc/trunk/webrtc/modules/audio_coding/rent_a_codec_gn
7:26.60 error: aborting due to previous error
7:26.60 For more information about this error, try rustc --explain E0506.
7:26.61 media/webrtc/trunk/webrtc/modules/audio_coding/webrtc_opus_c_gn
7:26.72 error: Could not compile cssparser.
Expected results:
Need update cssparser to version 0.25.5 or later.
https://github.com/servo/rust-cssparser/pull/245
Comment 1•6 years ago
|
||
Is there a particular reason you're trying to build with Rust 1.38?
The Rust requirement comes from Firefox 68esr, which requires Rust 1.34. I wouldn't expect anything newer to work. That won't change during the 68esr lifecycle.
Assuming you're Rust installation is managed with Cargo/Rustup you can install version 1.34 with:
rustup toolchain install 1.34.0
Then you can pin your Thunderbird 68 source directory to use it by cd'ing to that directory and running:
rustup override set 1.34.0
(In reply to Rob Lemley [:rjl] from comment #1)
Is there a particular reason you're trying to build with Rust 1.38?
In the Rust 1.38 repository. I can't change it myself. It's for work.
Comment 3•6 years ago
|
||
I don't understand. You're unable to get the older version?
The Rust components like cssparser are part of Firefox, and for a stable version like 68, the versions are fixed and the only potential changes are for security updates. Your options are to get the older Rust version as I suggested (I believe you can use up to 1.36 with Thunderbird 68) or you can work with the beta or daily versions.
(In reply to Rob Lemley [:rjl] from comment #3)
Your options are to get the older Rust version as I suggested (I believe you can use up to 1.36 with Thunderbird 68) or you can work with the beta or daily versions.
We only have the new RUST. We don't have old RUST. I can't use beta TB. Prohibited by the managers.
Updated•6 years ago
|
Description
•