From 54a422fa8f80b7ecb7468664d7f01cafe970a609 Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:54:28 -0400 Subject: [PATCH 1/7] Update nix formatter rust toml edition In rust edition 2024 `gen` is a reserved keyword so these methods need to be prefixed with the `r#` raw identifier prefix to pass formatting rules. --- payjoin-ffi/uniffi-bindgen.rs | 2 +- payjoin-mailroom/src/lib.rs | 2 +- treefmt.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/payjoin-ffi/uniffi-bindgen.rs b/payjoin-ffi/uniffi-bindgen.rs index 7408f35d9..33e83f74c 100644 --- a/payjoin-ffi/uniffi-bindgen.rs +++ b/payjoin-ffi/uniffi-bindgen.rs @@ -22,7 +22,7 @@ fn uniffi_bindgen() { .position(|arg| arg == "--out-dir") .and_then(|idx| args.get(idx + 1)) .expect("--out-dir is required when using --library"); - uniffi_dart::gen::generate_dart_bindings( + uniffi_dart::r#gen::generate_dart_bindings( "src/payjoin.udl".into(), Some("uniffi.toml".into()), Some(output_dir.as_str().into()), diff --git a/payjoin-mailroom/src/lib.rs b/payjoin-mailroom/src/lib.rs index 65ec40260..1240ed0de 100644 --- a/payjoin-mailroom/src/lib.rs +++ b/payjoin-mailroom/src/lib.rs @@ -227,7 +227,7 @@ pub async fn serve_acme( /// Generate random sentinel tag at startup. /// The relay and directory share this tag in a best-effort attempt /// at detecting self loops. -fn generate_sentinel_tag() -> SentinelTag { SentinelTag::new(rand::thread_rng().gen()) } +fn generate_sentinel_tag() -> SentinelTag { SentinelTag::new(rand::thread_rng().r#gen()) } #[cfg(feature = "access-control")] impl Connected> for middleware::MaybePeerIp { diff --git a/treefmt.nix b/treefmt.nix index ee223c814..8ecb3d5f4 100644 --- a/treefmt.nix +++ b/treefmt.nix @@ -9,7 +9,7 @@ rustfmt = { enable = true; package = pkgs.rustToolchains.nightly; - edition = "2021"; + edition = "2024"; }; shellcheck = { enable = true; From 5b18bef74096aadd8ae3a8cfa968a417c5a5475b Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:43:42 -0400 Subject: [PATCH 2/7] Update fuzz cargo toml edition 2024 In rust edition 2024 if let statements that can be collapsed into a let chain will fail clippy checks. See https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if for details. --- Cargo-minimal.lock | 80 +++++++++---------------- Cargo-recent.lock | 19 ------ fuzz/Cargo.toml | 7 +-- fuzz/fuzz_targets/directory/short_id.rs | 14 ++--- fuzz/fuzz_targets/url/arbitrary_url.rs | 8 +-- 5 files changed, 39 insertions(+), 89 deletions(-) diff --git a/Cargo-minimal.lock b/Cargo-minimal.lock index 39ac8afbc..351a9558f 100644 --- a/Cargo-minimal.lock +++ b/Cargo-minimal.lock @@ -1343,7 +1343,7 @@ dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.59.0", + "windows-sys 0.60.0", ] [[package]] @@ -1652,7 +1652,7 @@ dependencies = [ "cfg-if 1.0.0", "libc", "wasi 0.13.0+wasi-0.2.0", - "windows-targets 0.52.6", + "windows-targets 0.52.0", ] [[package]] @@ -1830,15 +1830,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "http" version = "1.3.1" @@ -2653,7 +2644,6 @@ name = "payjoin-fuzz" version = "0.0.1" dependencies = [ "arbitrary", - "home", "libfuzzer-sys", "payjoin", ] @@ -4919,16 +4909,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", + "windows-targets 0.52.0", ] [[package]] @@ -4966,18 +4947,17 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", ] [[package]] @@ -4989,7 +4969,7 @@ dependencies = [ "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", + "windows_i686_gnullvm", "windows_i686_msvc 0.53.0", "windows_x86_64_gnu 0.53.0", "windows_x86_64_gnullvm 0.53.0", @@ -5004,9 +4984,9 @@ checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" [[package]] name = "windows_aarch64_gnullvm" @@ -5028,9 +5008,9 @@ checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" [[package]] name = "windows_aarch64_msvc" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" [[package]] name = "windows_aarch64_msvc" @@ -5052,9 +5032,9 @@ checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" [[package]] name = "windows_i686_gnu" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" [[package]] name = "windows_i686_gnu" @@ -5062,12 +5042,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - [[package]] name = "windows_i686_gnullvm" version = "0.53.0" @@ -5088,9 +5062,9 @@ checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" [[package]] name = "windows_i686_msvc" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" [[package]] name = "windows_i686_msvc" @@ -5112,9 +5086,9 @@ checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" [[package]] name = "windows_x86_64_gnu" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" [[package]] name = "windows_x86_64_gnu" @@ -5130,9 +5104,9 @@ checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" [[package]] name = "windows_x86_64_gnullvm" @@ -5154,9 +5128,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "windows_x86_64_msvc" -version = "0.52.6" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" [[package]] name = "windows_x86_64_msvc" diff --git a/Cargo-recent.lock b/Cargo-recent.lock index 6238d0da7..58c928cd4 100644 --- a/Cargo-recent.lock +++ b/Cargo-recent.lock @@ -1857,15 +1857,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "http" version = "1.5.0" @@ -2784,7 +2775,6 @@ name = "payjoin-fuzz" version = "0.0.1" dependencies = [ "arbitrary", - "home", "libfuzzer-sys", "payjoin", ] @@ -5183,15 +5173,6 @@ dependencies = [ "windows-targets", ] -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets", -] - [[package]] name = "windows-sys" version = "0.61.2" diff --git a/fuzz/Cargo.toml b/fuzz/Cargo.toml index 21c3ecbd2..c7f38da7d 100644 --- a/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -2,7 +2,7 @@ name = "payjoin-fuzz" version = "0.0.1" publish = false -edition = "2021" +edition = "2024" [package.metadata] cargo-fuzz = true @@ -12,7 +12,6 @@ default = [] [dependencies] arbitrary = { version = "1.0.1" } -home = "=0.5.11" libfuzzer-sys = { version = "0.4.10" } payjoin = { path = "../payjoin", default-features = false, features = [ "arbitrary", @@ -21,10 +20,6 @@ payjoin = { path = "../payjoin", default-features = false, features = [ "v2", ] } -# Pinned transitive dependencies that appear unused to cargo-machete -[package.metadata.cargo-machete] -ignored = ["home"] - [[bin]] name = "uri_deserialize_pjuri" path = "fuzz_targets/uri/deserialize_pjuri.rs" diff --git a/fuzz/fuzz_targets/directory/short_id.rs b/fuzz/fuzz_targets/directory/short_id.rs index 36ea343f4..0f8402048 100644 --- a/fuzz/fuzz_targets/directory/short_id.rs +++ b/fuzz/fuzz_targets/directory/short_id.rs @@ -22,13 +22,13 @@ fn do_test(data: &[u8]) { // Path 2: attacker-controlled URL path segment, decoded as bech32 // without a checksum. This is the actual parsing path exercised by // payjoin-mailroom when routing /{id} requests. - if let Ok(s) = std::str::from_utf8(data) { - if let Ok(id) = s.parse::() { - let reencoded = id.to_string(); - let reparsed: ShortId = - reencoded.parse().expect("re-encoding a parsed ShortId must re-parse"); - assert_eq!(reparsed, id, "round-trip mismatch via FromStr/Display: {s}"); - } + if let Ok(s) = std::str::from_utf8(data) + && let Ok(id) = s.parse::() + { + let reencoded = id.to_string(); + let reparsed: ShortId = + reencoded.parse().expect("re-encoding a parsed ShortId must re-parse"); + assert_eq!(reparsed, id, "round-trip mismatch via FromStr/Display: {s}"); } } diff --git a/fuzz/fuzz_targets/url/arbitrary_url.rs b/fuzz/fuzz_targets/url/arbitrary_url.rs index ca92b47f9..9114e7881 100644 --- a/fuzz/fuzz_targets/url/arbitrary_url.rs +++ b/fuzz/fuzz_targets/url/arbitrary_url.rs @@ -17,10 +17,10 @@ fn do_test(data: &[u8]) { url.query_pairs_mut().append_pair(key, value); url.clear_query(); } - if let Some(mut segs) = url.path_segments_mut() { - if let Ok(segment) = u.arbitrary::<&str>() { - segs.push(segment); - } + if let Some(mut segs) = url.path_segments_mut() + && let Ok(segment) = u.arbitrary::<&str>() + { + segs.push(segment); } if let Ok(segment) = String::arbitrary(&mut u) { let _ = url.join(&segment); From 70fbff46465fe04c839d98e71eff9989a7ddd8be Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:53:18 -0400 Subject: [PATCH 3/7] Update payjoin-ffi Cargo toml edition 2024 --- Cargo-minimal.lock | 133 +------------------ Cargo-recent.lock | 2 - payjoin-ffi/Cargo.toml | 6 +- payjoin-ffi/dart/native/Cargo.toml | 2 +- payjoin-ffi/javascript/test-utils/Cargo.toml | 11 +- 5 files changed, 10 insertions(+), 144 deletions(-) diff --git a/Cargo-minimal.lock b/Cargo-minimal.lock index 351a9558f..2a491bbd4 100644 --- a/Cargo-minimal.lock +++ b/Cargo-minimal.lock @@ -1348,9 +1348,9 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +checksum = "278ef1934318d524612205f69df005eea30ec10edf7913e500b5a527fce55bc0" dependencies = [ "proc-macro2", "quote", @@ -1963,34 +1963,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "icu_locale_core" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93cca704c2d63cf8a91f5c2c5f88e027940dede132319b85a52939db9758f7e5" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", -] - -[[package]] -name = "icu_provider" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" -dependencies = [ - "displaydoc", - "icu_locale_core", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -2173,12 +2145,6 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6db9c683daf087dc577b7506e9695b3d556a9f3849903fa28186283afd6809e9" -[[package]] -name = "litemap" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" - [[package]] name = "litrs" version = "0.2.3" @@ -2623,8 +2589,6 @@ dependencies = [ "async-trait", "bdk_wallet", "getrandom 0.2.10", - "icu_locale_core", - "icu_provider", "lazy_static", "payjoin", "payjoin-test-utils", @@ -3726,12 +3690,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - [[package]] name = "static_assertions" version = "1.1.0" @@ -3812,9 +3770,9 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.12.4" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701" +checksum = "575be94ccb86e8da37efb894a87e2b660be299b41d8ef347f9d6d79fbe61b1ba" dependencies = [ "proc-macro2", "quote", @@ -3974,15 +3932,6 @@ dependencies = [ "crunchy", ] -[[package]] -name = "tinystr" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b56a820bb70060f096338fcc02edb78cb3f8fb21c5078503f48588cfcaf494" -dependencies = [ - "displaydoc", -] - [[package]] name = "tinyvec" version = "1.1.0" @@ -5162,12 +5111,6 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "026d24a27f6712541fa534f2954bd9e0eb66172f033c2157c0f31d106255c497" -[[package]] -name = "writeable" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" - [[package]] name = "x509-parser" version = "0.18.0" @@ -5215,30 +5158,6 @@ dependencies = [ "time", ] -[[package]] -name = "yoke" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure 0.13.0", -] - [[package]] name = "zerocopy" version = "0.7.31" @@ -5279,27 +5198,6 @@ dependencies = [ "syn 2.0.87", ] -[[package]] -name = "zerofrom" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "655b0814c5c0b19ade497851070c640773304939a6c0fd5f5fb43da0696d05b7" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e8aa86add9ddbd2409c1ed01e033cd457d79b1b1229b64922c25095c595e829" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.74", - "synstructure 0.12.4", -] - [[package]] name = "zeroize" version = "1.8.1" @@ -5318,28 +5216,7 @@ dependencies = [ "proc-macro2", "quote", "syn 1.0.74", - "synstructure 0.12.4", -] - -[[package]] -name = "zerovec" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94e62113720e311984f461c56b00457ae9981c0bc7859d22306cc2ae2f95571c" -dependencies = [ - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", + "synstructure 0.12.2", ] [[package]] diff --git a/Cargo-recent.lock b/Cargo-recent.lock index 58c928cd4..8a0d942d3 100644 --- a/Cargo-recent.lock +++ b/Cargo-recent.lock @@ -2754,8 +2754,6 @@ dependencies = [ "async-trait", "bdk_wallet", "getrandom 0.2.17", - "icu_locale_core", - "icu_provider", "lazy_static", "payjoin", "payjoin-test-utils", diff --git a/payjoin-ffi/Cargo.toml b/payjoin-ffi/Cargo.toml index 74a09acce..4ca014d0e 100644 --- a/payjoin-ffi/Cargo.toml +++ b/payjoin-ffi/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "payjoin-ffi" version = "0.24.0" -edition = "2021" +edition = "2024" license = "MIT OR Apache-2.0" exclude = ["tests"] @@ -24,8 +24,6 @@ path = "uniffi-bindgen.rs" [dependencies] async-trait = "0.1.89" getrandom = "0.2.10" -icu_locale_core = "=2.0.1" -icu_provider = "=2.0.0" lazy_static = "1.5.0" payjoin = { version = "1.0.0", features = ["v1", "v2"] } payjoin-test-utils = { version = "0.0.1", optional = true } @@ -40,7 +38,7 @@ url = "2.5.4" # Pinned transitive dependencies that appear unused to cargo-machete [package.metadata.cargo-machete] -ignored = ["getrandom", "icu_provider", "icu_locale_core", "socks"] +ignored = ["getrandom", "socks"] [dev-dependencies] bdk_wallet = { version = "3.1.0", features = ["all-keys"] } diff --git a/payjoin-ffi/dart/native/Cargo.toml b/payjoin-ffi/dart/native/Cargo.toml index 3ecc73611..bf209bc2c 100644 --- a/payjoin-ffi/dart/native/Cargo.toml +++ b/payjoin-ffi/dart/native/Cargo.toml @@ -5,7 +5,7 @@ resolver = "3" name = "payjoin-ffi-wrapper" description = "This is a simple wrapper crate which re-exports payjoin-ffi for publishing to pub.dev" version = "0.1.0" -edition = "2021" +edition = "2024" rust-version = "1.85" license = "MIT OR Apache-2.0" publish = false diff --git a/payjoin-ffi/javascript/test-utils/Cargo.toml b/payjoin-ffi/javascript/test-utils/Cargo.toml index 089671517..f6dcd48b7 100644 --- a/payjoin-ffi/javascript/test-utils/Cargo.toml +++ b/payjoin-ffi/javascript/test-utils/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "payjoin-test-utils-napi" version = "0.1.0" -edition = "2021" +edition = "2024" [lib] crate-type = ["cdylib"] @@ -12,18 +12,11 @@ napi-derive = "2.16.13" serde_json = "1.0.149" tokio = { version = "1.52.3", features = ["full"] } -icu_locale_core = "=2.0.1" -icu_provider = "=2.0.0" - -# Pinned transitive dependencies that appear unused to cargo-machete -[package.metadata.cargo-machete] -ignored = ["icu_provider", "icu_locale_core"] - [dependencies.payjoin-test-utils] path = "../../../payjoin-test-utils" [build-dependencies] -napi-build = "=2.2.4" +napi-build = "2.2.4" [patch.crates-io.payjoin] path = "../../../payjoin" From 52d66608444cbcdb21bd939f28ac9dcba553634a Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:55:07 -0400 Subject: [PATCH 4/7] Update payjoin-cli cargo toml edition 2024 --- payjoin-cli/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/payjoin-cli/Cargo.toml b/payjoin-cli/Cargo.toml index c9f00f3b1..6d1d6c0fa 100644 --- a/payjoin-cli/Cargo.toml +++ b/payjoin-cli/Cargo.toml @@ -8,7 +8,7 @@ readme = "README.md" keywords = ["bip78", "payjoin", "bitcoin"] categories = ["cryptography::cryptocurrencies", "network-programming"] license = "MITNFA" -edition = "2021" +edition = "2024" rust-version = "1.85" exclude = ["tests"] From 26874d284e90ecf5da07a752fc10fdd2e7d117b2 Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:55:42 -0400 Subject: [PATCH 5/7] Update payjoin-mailroom cargo toml edition 2024 --- Cargo-minimal.lock | 5 ++--- Cargo-recent.lock | 1 - payjoin-mailroom/Cargo.toml | 7 +------ 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/Cargo-minimal.lock b/Cargo-minimal.lock index 2a491bbd4..86c4d2504 100644 --- a/Cargo-minimal.lock +++ b/Cargo-minimal.lock @@ -2661,7 +2661,6 @@ dependencies = [ "tower-http", "tracing", "tracing-subscriber", - "unicode-segmentation", "uuid", ] @@ -4341,9 +4340,9 @@ dependencies = [ [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" [[package]] name = "unicode-width" diff --git a/Cargo-recent.lock b/Cargo-recent.lock index 8a0d942d3..7a0e31e3f 100644 --- a/Cargo-recent.lock +++ b/Cargo-recent.lock @@ -2826,7 +2826,6 @@ dependencies = [ "tower-http", "tracing", "tracing-subscriber", - "unicode-segmentation", "uuid", ] diff --git a/payjoin-mailroom/Cargo.toml b/payjoin-mailroom/Cargo.toml index 1b8886952..612a5527e 100644 --- a/payjoin-mailroom/Cargo.toml +++ b/payjoin-mailroom/Cargo.toml @@ -10,7 +10,7 @@ categories = [ "web-programming", ] license = "MITNFA" -edition = "2021" +edition = "2024" rust-version = "1.85.0" [features] @@ -87,11 +87,6 @@ tower = "0.5.2" tower-http = { version = "0.6.11", features = ["trace"] } tracing = "0.1.41" tracing-subscriber = { version = "0.3.19", features = ["env-filter", "json"] } -unicode-segmentation = "=1.12.0" - -# Pinned transitive dependencies that appear unused to cargo-machete -[package.metadata.cargo-machete] -ignored = ["unicode-segmentation"] [dev-dependencies] mockito = "1.7.0" From b5b954e09d5fcd83543be13ab72e16eaa405774f Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:56:11 -0400 Subject: [PATCH 6/7] Update payjoin-test-utils cargo toml edition 2024 --- Cargo-minimal.lock | 35 ++++++++++++++--------------------- payjoin-test-utils/Cargo.toml | 9 ++++----- 2 files changed, 18 insertions(+), 26 deletions(-) diff --git a/Cargo-minimal.lock b/Cargo-minimal.lock index 86c4d2504..f33358767 100644 --- a/Cargo-minimal.lock +++ b/Cargo-minimal.lock @@ -863,9 +863,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "0.1.0" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de1e760d7b6535af4241fca8bd8adf68e2e7edacc6b29f5d399050c5e48cf88c" +checksum = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33" [[package]] name = "cfg-if" @@ -1453,13 +1453,13 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "filetime" -version = "0.2.0" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08530a39af0bd442c40aabb9e854f442a83bd2403feb1ed58fbe982dec2385f3" +checksum = "dc13aeb5af393916d68940b3223262d43df07ef7e6a0aff91453e386d10cce41" dependencies = [ - "cfg-if 0.1.0", + "kernel32-sys", "libc", - "redox_syscall 0.1.0", + "winapi 0.2.4", ] [[package]] @@ -2507,7 +2507,7 @@ checksum = "b2f4f894f3865f6c0e02810fc597300f34dc2510f66400da262d8ae10e75767d" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.8", + "redox_syscall", "smallvec", "windows-sys 0.29.0", ] @@ -3088,12 +3088,6 @@ dependencies = [ "yasna", ] -[[package]] -name = "redox_syscall" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35a48131ab10dbeb17202bd1dcb9c9798963a58a50c9ec31640f237358832094" - [[package]] name = "redox_syscall" version = "0.2.8" @@ -3793,13 +3787,12 @@ dependencies = [ [[package]] name = "tar" -version = "0.4.20" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a303ba60a099fcd2aaa646b14d2724591a96a75283e4b7ed3d1a1658909d9ae2" +checksum = "0c9048e27119ff1fcf5b0e147ca0936d911b607d87440b042d4ecaa111b523ee" dependencies = [ "filetime", "libc", - "redox_syscall 0.1.0", "xattr", ] @@ -4691,11 +4684,11 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.19" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fe9756085a84584ee9457a002b7cdfe0bfff169f45d2591d8be1345a6780e35" +checksum = "b7866cab0aa01de1edf8b5d7936938a7e397ee50ce24119aef3e1eaa3b6171da" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 0.1.9", "js-sys", "wasm-bindgen", "web-sys", @@ -5130,9 +5123,9 @@ dependencies = [ [[package]] name = "xattr" -version = "0.2.0" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f20ed92d3af1dcee2ab0b8f167c2ce4865e5a4fa174656c9432d77bda446e11d" +checksum = "fa3838ce46f489be85e47cb3b83e72c7be8d3577fd20c291877733beda97fffc" dependencies = [ "libc", ] diff --git a/payjoin-test-utils/Cargo.toml b/payjoin-test-utils/Cargo.toml index 08bd6f2b4..c947d60fd 100644 --- a/payjoin-test-utils/Cargo.toml +++ b/payjoin-test-utils/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "payjoin-test-utils" version = "0.0.1" -edition = "2021" +edition = "2024" authors = ["Dan Gould "] description = "Payjoin test utilities" repository = "https://github.com/payjoin/rust-payjoin" @@ -34,15 +34,14 @@ ohttp = { package = "bitcoin-ohttp", version = "0.6.0", optional = true } once_cell = "1.21.3" payjoin = { version = "1.0.0", default-features = false } payjoin-mailroom = { version = "0.1.2", features = ["_manual-tls"] } -tar = "0.4.20" -# Pin to 0.14.7 (last version to support our MSRV 1.85) -rcgen = { version = "=0.14.7", optional = true } +rcgen = { version = "0.14.7", optional = true } reqwest = { version = "0.12.23", default-features = false, features = [ "rustls-tls", ], optional = true } rustls = { version = "0.23.38", default-features = false, features = [ "ring", ], optional = true } +tar = "0.4.9" tempfile = { version = "3.20.0", optional = true } # Pin to 0.3.45 (last version to support our MSRV 1.85) time = "=0.3.45" @@ -52,4 +51,4 @@ tracing-subscriber = { version = "0.3.19", features = ["env-filter"] } # Pinned transitive dependencies that appear unused to cargo-machete [package.metadata.cargo-machete] -ignored = ["time", "tar"] +ignored = ["tar", "time"] From 95c4afb2fc71f51ea943be7e1378e2b9cdc6b680 Mon Sep 17 00:00:00 2001 From: Benalleng Date: Thu, 10 Sep 2026 12:56:39 -0400 Subject: [PATCH 7/7] Update payjoin crate cargo toml edition 2024 --- payjoin/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/payjoin/Cargo.toml b/payjoin/Cargo.toml index f00311dd1..0af0f40f0 100644 --- a/payjoin/Cargo.toml +++ b/payjoin/Cargo.toml @@ -12,7 +12,7 @@ categories = [ "network-programming", ] license = "MITNFA" -edition = "2021" +edition = "2024" rust-version = "1.85" exclude = ["tests"]