From 83e605d6ecef83d4969f5f278142f06f6239f61e Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 1 Sep 2026 00:35:16 +0200 Subject: [PATCH] iai-callgrind -> gungraun --- Cargo.lock | 104 ++++++++++++++++++++++++++++++++++++----------- Cargo.toml | 2 +- benches/parse.rs | 2 +- 3 files changed, 83 insertions(+), 25 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 41465f9..be8b1aa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -64,12 +64,15 @@ dependencies = [ ] [[package]] -name = "bincode" -version = "1.3.3" +name = "bincode-next" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +checksum = "1d6626829353ae29293be5c86f42de5f0468bc758af074b0c7d08f07e538ccbc" dependencies = [ + "pastey", + "rapidhash", "serde", + "unty-next", ] [[package]] @@ -187,6 +190,16 @@ version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34" +[[package]] +name = "either-or-both" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6717164c227120ba9ddf3e2b32305fc0122741d3ee41a54968eae7573ee01933" +dependencies = [ + "indexmap", + "serde", +] + [[package]] name = "encode_unicode" version = "0.3.6" @@ -266,47 +279,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" [[package]] -name = "hashbrown" -version = "0.17.1" +name = "gungraun" +version = "0.19.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" - -[[package]] -name = "iai-callgrind" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b1e4910d3a9137442723dfb772c32dc10674c4181ca078d2fd227cd5dce9db0" +checksum = "9300d38d30facf6870c15bc9e243edcc47e5ddc270c9d2c1ae824a00b1faea79" dependencies = [ - "bincode", + "bincode-next", "derive_more", - "iai-callgrind-macros", - "iai-callgrind-runner", + "gungraun-macros", + "gungraun-runner", ] [[package]] -name = "iai-callgrind-macros" -version = "0.6.1" +name = "gungraun-macros" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d03775318d3f9f01b39ac6612b01464006dc397a654a89dd57df2fd34fb68c3" +checksum = "d7f3214bae6cfd6739f4f29edb262bae439c6393a7b7b12c4eeb96417c2e50df" dependencies = [ "derive_more", - "proc-macro-error2", + "proc-macro-error3", "proc-macro2", "quote", + "rustc_version", "serde", "serde_json", "syn 2.0.119", ] [[package]] -name = "iai-callgrind-runner" -version = "0.16.1" +name = "gungraun-runner" +version = "0.19.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b74c9743c00c3bca4aaffc69c87cae56837796cd362438daf354a3f785788c68" +checksum = "47c68c92812da579a2510a2cc702d5aa3251992b9662d4a98502ca46e0cbe16e" dependencies = [ + "either-or-both", "serde", ] +[[package]] +name = "hashbrown" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" + [[package]] name = "indexmap" version = "2.14.1" @@ -521,6 +536,12 @@ dependencies = [ "syn 2.0.119", ] +[[package]] +name = "pastey" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ee67f1008b1ba2321834326597b8e186293b049a023cdef258527550b9935b4" + [[package]] name = "pin-project-lite" version = "0.2.17" @@ -566,6 +587,16 @@ dependencies = [ "quote", ] +[[package]] +name = "proc-macro-error-attr3" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e564d14133360e1ae169ffde5da25881b5fa47261665b8e5713c212c27799da" +dependencies = [ + "proc-macro2", + "quote", +] + [[package]] name = "proc-macro-error2" version = "2.0.1" @@ -578,6 +609,18 @@ dependencies = [ "syn 2.0.119", ] +[[package]] +name = "proc-macro-error3" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f0d4471b3436c22106b21913b1dda531558918ae9b7ec55d58aa84b43552233" +dependencies = [ + "proc-macro-error-attr3", + "proc-macro2", + "quote", + "syn 3.0.4", +] + [[package]] name = "proc-macro2" version = "1.0.107" @@ -602,6 +645,15 @@ version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" +[[package]] +name = "rapidhash" +version = "4.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5da7e78a036ce858e8d55b7e7dc8ba3a88b78350fd2155d3591bbd966b58589e" +dependencies = [ + "rustversion", +] + [[package]] name = "ref-cast" version = "1.0.26" @@ -915,7 +967,7 @@ dependencies = [ "const-fnv1a-hash", "enumflags2", "fnv", - "iai-callgrind", + "gungraun", "insta", "itertools", "jemallocator", @@ -1068,6 +1120,12 @@ version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" +[[package]] +name = "unty-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16062d030850f35054e37746427b9febb74a2f24c9c6dd6fa2d0c13c5f53221e" + [[package]] name = "valuable" version = "0.1.1" diff --git a/Cargo.toml b/Cargo.toml index af724de..cb51f1f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -84,7 +84,7 @@ tempfile = { version = "3", optional = true } log = { version = "0.4.34", features = [] } [dev-dependencies] -iai-callgrind = "0.16.1" +gungraun = "0.19.4" insta = { version = "1.48.0", features = ["json"] } pretty_assertions = "1.4.1" test-case = "3.3.1" diff --git a/benches/parse.rs b/benches/parse.rs index bcd6fb6..afa9b3f 100644 --- a/benches/parse.rs +++ b/benches/parse.rs @@ -1,4 +1,4 @@ -use iai_callgrind::{library_benchmark, library_benchmark_group, main}; +use gungraun::prelude::*; use std::fs::read; use std::hint::black_box; use std::path::Path;