Update mp4parse-rust to commit 3011a2
Categories
(Core :: Audio/Video: Playback, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox87 | --- | fixed |
People
(Reporter: bryce, Assigned: bryce)
References
Details
Attachments
(1 file)
Update mp4parse-rust, primarily to bring fixes aimed at bug 1687357.
Assignee | ||
Comment 1•4 years ago
|
||
Bumps version to
3011a2b923c8b0f1b392bcdd008cd8b95ffd846b
This is done to fix a bug where parsing bad metadata in the userdata (udta)
would be fatal when we should instead just fail the userdata.
This also updates some mp4parse-rust dependencies which results in some
removals.
Updated•4 years ago
|
Comment 3•4 years ago
|
||
Backed out changeset 924a3c191cdb (bug 1688784) for rust related windows bustage.
Backout link: https://hg.mozilla.org/integration/autoland/rev/a600444d5bf8cae7302558b631ae2b0e1649a15e
Failure log: https://treeherder.mozilla.org/logviewer?job_id=327872515&repo=autoland&lineNumber=15974
[task 2021-01-26T20:48:09.325Z] 20:48:09 INFO - Compiling dirs-sys v0.3.4
[task 2021-01-26T20:48:09.325Z] 20:48:09 INFO - Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=dirs_sys CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/dirs-sys CARGO_PKG_AUTHORS='Simon Ochsenreither <simon@ochsenreither.de>' CARGO_PKG_DESCRIPTION='System-level helper functions for the dirs and directories crates.' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=dirs-sys CARGO_PKG_REPOSITORY='https://github.com/soc/dirs-sys-rs' CARGO_PKG_VERSION=0.3.4 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=3 CARGO_PKG_VERSION_PATCH=4 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/builds/worker/workspace/obj-build/release/deps:/builds/worker/fetches/rustc/lib' /builds/worker/fetches/sccache/sccache /builds/worker/fetches/rustc/bin/rustc --crate-name dirs_sys /builds/worker/checkouts/gecko/third_party/rust/dirs-sys/src/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 embed-bitcode=no -C metadata=09444ebc70d92155 -C extra-filename=-09444ebc70d92155 --out-dir /builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps --target i686-pc-windows-msvc -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -L dependency=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --extern cfg_if=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps/libcfg_if-bb5005515c5a9952.rmeta --extern winapi=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps/libwinapi-24d8b21c632b06cc.rmeta --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -C control-flow-guard=yes -Dwarnings -Cembed-bitcode=yes -C profile-generate=/builds/worker/workspace/obj-build -C llvm-args=-enable-name-compression=false -C codegen-units=1`
[task 2021-01-26T20:48:09.325Z] 20:48:09 INFO - warning: `#[inline]` is ignored on function prototypes
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/lib.rs:260:5
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - 260 | #[inline]
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - | ^^^^^^^^^
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - = note: `#[warn(unused_attributes)]` on by default
[task 2021-01-26T20:48:09.326Z] 20:48:09 ERROR - error[E0277]: the trait bound `i128: traits::Num` is not satisfied
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/roots.rs:136:14
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - 9 | pub trait Roots: Integer {
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - | ------- required by this bound in `Roots`
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - 136 | impl Roots for $T {
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - | ^^^^^ the trait `traits::Num` is not implemented for `i128`
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - 170 | signed_roots!(i128, u128);
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - | -------------------------- in this macro invocation
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[task 2021-01-26T20:48:09.326Z] 20:48:09 ERROR - error[E0277]: the trait bound `u128: traits::Num` is not satisfied
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/roots.rs:204:14
[task 2021-01-26T20:48:09.326Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - 9 | pub trait Roots: Integer {
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - | ------- required by this bound in `Roots`
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - 204 | impl Roots for $T {
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - | ^^^^^ the trait `traits::Num` is not implemented for `u128`
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - 390 | unsigned_roots!(u128);
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - | ---------------------- in this macro invocation
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[task 2021-01-26T20:48:09.327Z] 20:48:09 ERROR - error[E0277]: the trait bound `i128: traits::Num` is not satisfied
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/lib.rs:406:14
[task 2021-01-26T20:48:09.327Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 33 | pub trait Integer: Sized + Num + PartialOrd + Ord + Eq {
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | --- required by this bound in `Integer`
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 406 | impl Integer for $T {
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | ^^^^^^^ the trait `traits::Num` is not implemented for `i128`
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 794 | impl_integer_for_isize!(i128, test_integer_i128);
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | ------------------------------------------------- in this macro invocation
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[task 2021-01-26T20:48:09.328Z] 20:48:09 ERROR - error[E0277]: the trait bound `u128: traits::Num` is not satisfied
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/lib.rs:798:14
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 33 | pub trait Integer: Sized + Num + PartialOrd + Ord + Eq {
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | --- required by this bound in `Integer`
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 798 | impl Integer for $T {
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | ^^^^^^^ the trait `traits::Num` is not implemented for `u128`
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - ...
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - 1011 | impl_integer_for_usize!(u128, test_integer_u128);
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - | ------------------------------------------------- in this macro invocation
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - error: aborting due to 4 previous errors; 1 warning emitted
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - For more information about this error, try `rustc --explain E0277`.
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - error: could not compile `num-integer`
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - Caused by:
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - process didn't exit successfully: `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=num_integer CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/num-integer CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_DESCRIPTION='Integer traits and functions' CARGO_PKG_HOMEPAGE='https://github.com/rust-num/num-integer' CARGO_PKG_LICENSE=MIT/Apache-2.0 CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=num-integer CARGO_PKG_REPOSITORY='https://github.com/rust-num/num-integer' CARGO_PKG_VERSION=0.1.41 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=1 CARGO_PKG_VERSION_PATCH=41 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/builds/worker/workspace/obj-build/release/deps:/builds/worker/fetches/rustc/lib' OUT_DIR=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/build/num-integer-5b08a9f814b1137b/out /builds/worker/fetches/sccache/sccache /builds/worker/fetches/rustc/bin/rustc --crate-name num_integer /builds/worker/checkouts/gecko/third_party/rust/num-integer/src/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 embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=c52f87b78fa278ec -C extra-filename=-c52f87b78fa278ec --out-dir /builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps --target i686-pc-windows-msvc -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -L dependency=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --extern num_traits=/builds/worker/workspace/obj-build/i686-pc-windows-msvc/release/deps/libnum_traits-f84ba0b647583bf6.rmeta --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -C control-flow-guard=yes -Dwarnings -Cembed-bitcode=yes -C profile-generate=/builds/worker/workspace/obj-build -C llvm-args=-enable-name-compression=false -C codegen-units=1 --cfg has_i128` (exit code: 1)
[task 2021-01-26T20:48:09.328Z] 20:48:09 INFO - warning: build failed, waiting for other jobs to finish...
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/dns-parser/src/error.rs:3:1
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 3 | / quick_error! {
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 4 | | /// Error parsing DNS packet
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 5 | | #[derive(Debug)]
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 6 | | pub enum Error {
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - ... |
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 70 | | }
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - 71 | | }
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - | |_^
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - |
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - warning: use of deprecated macro `try`: use the `?` operator instead
[task 2021-01-26T20:48:09.329Z] 20:48:09 INFO - --> /builds/worker/checkouts/gecko/third_party/rust/time/src/display.rs:14:25
...
Assignee | ||
Comment 4•4 years ago
•
|
||
This looks due to the availability of numtraits for 128 width integers[0]. The current docs contain the following
Implementations for i128 and u128 are only available with Rust 1.26 and later. The build script automatically detects this, but you can make it mandatory by enabling the i128 crate feature.
Since these are not universally available, I guess something about the shippable build config is triggering the error. I'm not familiar with what's different with such configs, but am trying to debug this now.
Assignee | ||
Comment 5•4 years ago
|
||
I've done a try push to repro the issue and check is is a shippable build problem and it does appear to be:
I'm trying to compare the logs there to see if there's any obvious differences. I think I've found something relevant.
The passing opt build contains the following (more easily read if copied into something with word wrapping).
Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=num_traits CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/num-traits CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_DESCRIPTION='Numeric traits for generic mathematics' CARGO_PKG_HOMEPAGE='https://github.com/rust-num/num-traits' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=num-traits CARGO_PKG_REPOSITORY='https://github.com/rust-num/num-traits' CARGO_PKG_VERSION=0.2.14 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=2 CARGO_PKG_VERSION_PATCH=14 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/builds/worker/workspace/obj-build/release/deps:/builds/worker/fetches/rustc/lib' OUT_DIR=/builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/build/num-traits-7310d13342f1212b/out /builds/worker/fetches/sccache/sccache /builds/worker/fetches/rustc/bin/rustc --crate-name num_traits /builds/worker/checkouts/gecko/third_party/rust/num-traits/src/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 embed-bitcode=no --cfg 'feature="std"' -C metadata=4759a8d955e30c6b -C extra-filename=-4759a8d955e30c6b --out-dir /builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/deps --target x86_64-pc-windows-msvc -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -L dependency=/builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -C control-flow-guard=yes -Dwarnings -Cembed-bitcode=yes -C codegen-units=1 --cfg has_i128 --cfg has_to_int_unchecked`
while the failing shippable build has a similar line the notably lacks the --cfg has_i128
:
Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=num_traits CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/num-traits CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_DESCRIPTION='Numeric traits for generic mathematics' CARGO_PKG_HOMEPAGE='https://github.com/rust-num/num-traits' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=num-traits CARGO_PKG_REPOSITORY='https://github.com/rust-num/num-traits' CARGO_PKG_VERSION=0.2.14 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=2 CARGO_PKG_VERSION_PATCH=14 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/builds/worker/workspace/obj-build/release/deps:/builds/worker/fetches/rustc/lib' OUT_DIR=/builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/build/num-traits-e56ef49fa29f8f11/out /builds/worker/fetches/sccache/sccache /builds/worker/fetches/rustc/bin/rustc --crate-name num_traits /builds/worker/checkouts/gecko/third_party/rust/num-traits/src/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 embed-bitcode=no --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=fb543a78dcaa64e1 -C extra-filename=-fb543a78dcaa64e1 --out-dir /builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/deps --target x86_64-pc-windows-msvc -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -L dependency=/builds/worker/workspace/obj-build/x86_64-pc-windows-msvc/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -C control-flow-guard=yes -Dwarnings -Cembed-bitcode=yes -C profile-generate=/builds/worker/workspace/obj-build -C llvm-args=-enable-name-compression=false -C codegen-units=1`
The missing flag seems pertinent to the error here, but it's not clear to me what in the shippable build means we don't get the flag.
Assignee | ||
Comment 6•4 years ago
|
||
Currently passing shippable windows builds appear to have the --cfg has_i128
in their build logs, so there's something about the patch here that tickles the issue. I'm guessing it's something to do with autocfg. Onto the next yak.
Assignee | ||
Comment 7•4 years ago
|
||
Another try push where I tried reverting some of the autocfg done by num-traits: https://treeherder.mozilla.org/jobs?repo=try&revision=01e57329ea8caa51f19ec9deede07b893c1cb9cf&selectedTaskRun=W-Mfz9fyQc6lZESPXJXijw.0
But that doesn't seem to be the problem.
Assignee | ||
Comment 8•4 years ago
|
||
Mike, do you have any insight into what in the patch is causing issues with the windows shippable build?
Comment 9•4 years ago
|
||
You're hitting bug 1632776, combined with the fact that bug 1685697 hid the error.
Assignee | ||
Comment 10•4 years ago
|
||
Try push is now happy https://treeherder.mozilla.org/jobs?repo=try&revision=a805b779ffdfe77344b07d48287f6041d04db972
Relanding shortly.
Comment 11•4 years ago
|
||
Comment 12•4 years ago
|
||
bugherder |
Description
•