From 640166ea310788a1fabca4ea99fc8cb0c6ae70f4 Mon Sep 17 00:00:00 2001 From: Frando Date: Mon, 28 Apr 2025 11:33:12 +0200 Subject: [PATCH 1/4] update to latest iroh-metrics branch --- Cargo.lock | 85 ++------------------------------------- portmapper/Cargo.toml | 2 +- portmapper/src/metrics.rs | 2 +- 3 files changed, 5 insertions(+), 84 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fb200da..3a5bfa9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -265,12 +265,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "dtoa" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" - [[package]] name = "equivalent" version = "1.0.1" @@ -938,11 +932,10 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iroh-metrics" version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d64b607e49f67fa42b3e780109cad0fa1fdb476b4a78d4cf8443499bbc1ad0a" +source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#f8a2a047fc9f4232e0920501150efddc11be7060" dependencies = [ "iroh-metrics-derive", - "prometheus-client", + "itoa", "serde", "thiserror 2.0.11", "tracing", @@ -951,8 +944,7 @@ dependencies = [ [[package]] name = "iroh-metrics-derive" version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caaa484b5f192006b1cc39261712d65baf87342fc72a4acc1560355d1dc410d9" +source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#f8a2a047fc9f4232e0920501150efddc11be7060" dependencies = [ "heck", "proc-macro2", @@ -1008,16 +1000,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", -] - [[package]] name = "log" version = "0.4.25" @@ -1361,29 +1343,6 @@ version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", -] - [[package]] name = "paste" version = "1.0.15" @@ -1489,29 +1448,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "prometheus-client" -version = "0.22.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504ee9ff529add891127c4827eb481bd69dc0ebc72e9a682e187db4caa60c3ca" -dependencies = [ - "dtoa", - "itoa", - "parking_lot", - "prometheus-client-derive-encode", -] - -[[package]] -name = "prometheus-client-derive-encode" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.96", -] - [[package]] name = "quote" version = "1.0.38" @@ -1551,15 +1487,6 @@ dependencies = [ "getrandom", ] -[[package]] -name = "redox_syscall" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" -dependencies = [ - "bitflags 2.8.0", -] - [[package]] name = "regex" version = "1.11.1" @@ -1673,12 +1600,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - [[package]] name = "send_wrapper" version = "0.6.0" diff --git a/portmapper/Cargo.toml b/portmapper/Cargo.toml index 7a681bf..913dda0 100644 --- a/portmapper/Cargo.toml +++ b/portmapper/Cargo.toml @@ -22,7 +22,7 @@ derive_more = { version = "1.0.0", features = ["debug", "display", "from", "try_ futures-lite = "2.5" futures-util = "0.3.25" igd-next = { version = "0.15.1", features = ["aio_tokio"] } -iroh-metrics = { version = "0.33", default-features = false } +iroh-metrics = { git = "https://github.com/n0-computer/iroh-metrics", branch = "Frando/derive-metricsgroupset" } libc = "0.2.139" netwatch = { version = "0.4.0", path = "../netwatch" } num_enum = "0.7" diff --git a/portmapper/src/metrics.rs b/portmapper/src/metrics.rs index fb447cf..0befa70 100644 --- a/portmapper/src/metrics.rs +++ b/portmapper/src/metrics.rs @@ -1,7 +1,7 @@ use iroh_metrics::{Counter, MetricsGroup}; /// Enum of metrics for the module -#[derive(Debug, Clone, MetricsGroup)] +#[derive(Debug, Default, MetricsGroup)] #[metrics(name = "portmap")] pub struct Metrics { /* From dae8cea85713f36a3880c40893c17ccb3f712af0 Mon Sep 17 00:00:00 2001 From: Frando Date: Mon, 28 Apr 2025 13:29:50 +0200 Subject: [PATCH 2/4] update iroh-metrics ref --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3a5bfa9..101036b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -932,7 +932,7 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iroh-metrics" version = "0.33.0" -source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#f8a2a047fc9f4232e0920501150efddc11be7060" +source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#ff3c5270a5e5e6bd909e9cd0214d659f899f0073" dependencies = [ "iroh-metrics-derive", "itoa", @@ -944,7 +944,7 @@ dependencies = [ [[package]] name = "iroh-metrics-derive" version = "0.1.0" -source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#f8a2a047fc9f4232e0920501150efddc11be7060" +source = "git+https://github.com/n0-computer/iroh-metrics?branch=Frando%2Fderive-metricsgroupset#ff3c5270a5e5e6bd909e9cd0214d659f899f0073" dependencies = [ "heck", "proc-macro2", From 647b31b2c4468b7fe8651f8a31d5fea5411ee549 Mon Sep 17 00:00:00 2001 From: Frando Date: Mon, 28 Apr 2025 13:39:19 +0200 Subject: [PATCH 3/4] impl serde for metrics --- portmapper/src/metrics.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/portmapper/src/metrics.rs b/portmapper/src/metrics.rs index 0befa70..f7982f8 100644 --- a/portmapper/src/metrics.rs +++ b/portmapper/src/metrics.rs @@ -1,7 +1,8 @@ use iroh_metrics::{Counter, MetricsGroup}; +use serde::{Deserialize, Serialize}; /// Enum of metrics for the module -#[derive(Debug, Default, MetricsGroup)] +#[derive(Debug, Default, MetricsGroup, Serialize, Deserialize)] #[metrics(name = "portmap")] pub struct Metrics { /* From 03f971d55894a7ff638d44ed621beeb202b33328 Mon Sep 17 00:00:00 2001 From: Frando Date: Wed, 30 Apr 2025 10:36:59 +0200 Subject: [PATCH 4/4] update to iroh-metrics main --- portmapper/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/portmapper/Cargo.toml b/portmapper/Cargo.toml index 913dda0..1c5c704 100644 --- a/portmapper/Cargo.toml +++ b/portmapper/Cargo.toml @@ -22,7 +22,7 @@ derive_more = { version = "1.0.0", features = ["debug", "display", "from", "try_ futures-lite = "2.5" futures-util = "0.3.25" igd-next = { version = "0.15.1", features = ["aio_tokio"] } -iroh-metrics = { git = "https://github.com/n0-computer/iroh-metrics", branch = "Frando/derive-metricsgroupset" } +iroh-metrics = { git = "https://github.com/n0-computer/iroh-metrics", branch = "main" } libc = "0.2.139" netwatch = { version = "0.4.0", path = "../netwatch" } num_enum = "0.7"