From ac8253c49bbbc27d437ac4ef9130d932a80079df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ber=C3=A1nek?= Date: Tue, 4 Mar 2025 12:02:39 +0100 Subject: [PATCH 1/2] Fix compilation of `html5ever` Change `RustcEncodable/Decodable` to `serde_json` --- .../compile-benchmarks/html5ever/Cargo.lock | 91 ++++++++++++++++++- .../compile-benchmarks/html5ever/Cargo.toml | 5 +- .../compile-benchmarks/html5ever/build.rs | 12 +-- 3 files changed, 95 insertions(+), 13 deletions(-) diff --git a/collector/compile-benchmarks/html5ever/Cargo.lock b/collector/compile-benchmarks/html5ever/Cargo.lock index f71ebb7be..30ac8690c 100644 --- a/collector/compile-benchmarks/html5ever/Cargo.lock +++ b/collector/compile-benchmarks/html5ever/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "bitflags" @@ -143,6 +143,8 @@ dependencies = [ "phf_codegen", "rustc-serialize", "rustc-test", + "serde 1.0.218", + "serde_json", "string_cache", "tendril", ] @@ -154,6 +156,12 @@ dependencies = [ "mac", ] +[[package]] +name = "itoa" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + [[package]] name = "kernel32-sys" version = "0.2.2" @@ -194,6 +202,12 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + [[package]] name = "phf" version = "0.7.21" @@ -232,6 +246,24 @@ dependencies = [ "siphasher", ] +[[package]] +name = "proc-macro2" +version = "1.0.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801" +dependencies = [ + "proc-macro2", +] + [[package]] name = "rand" version = "0.3.18" @@ -267,12 +299,50 @@ dependencies = [ "time", ] +[[package]] +name = "ryu" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" + [[package]] name = "serde" version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8" +[[package]] +name = "serde" +version = "1.0.218" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.218" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.140" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde 1.0.218", +] + [[package]] name = "siphasher" version = "0.2.2" @@ -289,7 +359,18 @@ dependencies = [ "lazy_static", "phf_generator", "phf_shared", - "serde", + "serde 0.8.23", +] + +[[package]] +name = "syn" +version = "2.0.99" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e02e925281e18ffd9d640e234264753c43edc62d64b2d4cf898f1bc5e75f3fc2" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", ] [[package]] @@ -325,6 +406,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "unicode-ident" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" + [[package]] name = "unreachable" version = "0.1.1" diff --git a/collector/compile-benchmarks/html5ever/Cargo.toml b/collector/compile-benchmarks/html5ever/Cargo.toml index 67478f87c..8df656712 100644 --- a/collector/compile-benchmarks/html5ever/Cargo.toml +++ b/collector/compile-benchmarks/html5ever/Cargo.toml @@ -2,7 +2,7 @@ name = "html5ever" version = "0.5.4" -authors = [ "The html5ever Project Developers" ] +authors = ["The html5ever Project Developers"] license = "MIT / Apache-2.0" repository = "https://github.com/servo/html5ever" description = "High-performance browser-grade HTML5 parser" @@ -35,7 +35,8 @@ rustc-test = "0.1.3" [build-dependencies] phf_codegen = "0.7.3" -rustc-serialize = "0.3.15" +serde_json = "1" +serde = { version = "1", features = ["derive"] } html5ever_macros = { version = "0.2.6", path = "macros", optional = true } [profile.dev] diff --git a/collector/compile-benchmarks/html5ever/build.rs b/collector/compile-benchmarks/html5ever/build.rs index 63e1d7fc4..808d6cb0e 100644 --- a/collector/compile-benchmarks/html5ever/build.rs +++ b/collector/compile-benchmarks/html5ever/build.rs @@ -7,13 +7,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -#![feature(rustc_encodable_decodable)] - extern crate phf_codegen; -extern crate rustc_serialize; -use rustc_serialize::json::{Json, Decoder}; -use rustc_serialize::Decodable; use std::collections::HashMap; use std::env; use std::fs::File; @@ -99,14 +94,13 @@ fn check_hash(from: &Path, to: &Path) -> Result<(), String> { fn named_entities_to_phf(from: &Path, to: &Path) { // A struct matching the entries in entities.json. - #[derive(RustcDecodable)] + #[derive(serde::Deserialize)] struct CharRef { codepoints: Vec, //characters: String, // Present in the file but we don't need it } - let json = Json::from_reader(&mut File::open(from).unwrap()).unwrap(); - let entities: HashMap = Decodable::decode(&mut Decoder::new(json)).unwrap(); + let entities: HashMap = serde_json::from_reader(&mut File::open(from).unwrap()).unwrap(); let mut entities: HashMap<&str, (u32, u32)> = entities.iter().map(|(name, char_ref)| { assert!(name.starts_with("&")); assert!(char_ref.codepoints.len() <= 2); @@ -115,7 +109,7 @@ fn named_entities_to_phf(from: &Path, to: &Path) { // Add every missing prefix of those keys, mapping to NULL characters. for key in entities.keys().cloned().collect::>() { - for n in 1 .. key.len() { + for n in 1..key.len() { entities.entry(&key[..n]).or_insert((0, 0)); } } From 94e49fcc7f4e4b2505c298498dcb1e8658f39485 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ber=C3=A1nek?= Date: Tue, 4 Mar 2025 12:03:57 +0100 Subject: [PATCH 2/2] Fix compilation of `piston-image` Update `num-*` dependencies --- .../piston-image/Cargo.lock | 45 +++++++++++++------ 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/collector/compile-benchmarks/piston-image/Cargo.lock b/collector/compile-benchmarks/piston-image/Cargo.lock index 4eb07ba02..ab7ba48d0 100644 --- a/collector/compile-benchmarks/piston-image/Cargo.lock +++ b/collector/compile-benchmarks/piston-image/Cargo.lock @@ -1,6 +1,12 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "bitflags" @@ -54,7 +60,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180" dependencies = [ - "num-traits", + "num-traits 0.1.40", ] [[package]] @@ -113,7 +119,7 @@ dependencies = [ "num-complex", "num-iter", "num-rational", - "num-traits", + "num-traits 0.1.40", "png", "scoped_threadpool", ] @@ -164,12 +170,13 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.1.40" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fd0f8dbb4c0960998958a796281d88c16fbe68d87b1baa6f31e2979e81fd0bd" +checksum = "1357c02fa1d647dd0769ef5bc2bf86281f064231c09c192a46c71246e3ec9258" dependencies = [ + "autocfg", "num-integer", - "num-traits", + "num-traits 0.2.19", "rand", "rustc-serialize", ] @@ -180,17 +187,17 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "503e668405c5492d67cf662a81e05be40efe2e6bcf10f7794a07bd9865e704e6" dependencies = [ - "num-traits", + "num-traits 0.1.40", "rustc-serialize", ] [[package]] name = "num-integer" -version = "0.1.35" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1452e8b06e448a07f0e6ebb0bb1d92b8890eea63288c0b627331d53514d0fba" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "num-traits", + "num-traits 0.2.19", ] [[package]] @@ -200,18 +207,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7485fcc84f85b4ecd0ea527b14189281cf27d60e583ae65ebc9c088b13dffe01" dependencies = [ "num-integer", - "num-traits", + "num-traits 0.1.40", ] [[package]] name = "num-rational" -version = "0.1.40" +version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7cb72a95250d8a370105c828f388932373e0e94414919891a0f945222310fe" +checksum = "fbfff0773e8a07fb033d726b9ff1327466709820788e5298afce4d752965ff1e" dependencies = [ + "autocfg", "num-bigint", "num-integer", - "num-traits", + "num-traits 0.2.19", "rustc-serialize", ] @@ -221,6 +229,15 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99843c856d68d8b4313b03a17e33c4bb42ae8f6610ea81b28abe076ac721b9b0" +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + [[package]] name = "num_cpus" version = "1.7.0"