From 61b6b27434898308681a3a96067635f94bf6556c Mon Sep 17 00:00:00 2001 From: Yuval Kogman Date: Sat, 13 Dec 2025 19:24:21 +0100 Subject: [PATCH 1/4] flake: build dev profile instead of release this results in much faster builds and therefore checks, improving developer experience. if we additionally want to build the packages in release mode, or run certain tests in release mode, we can build the workspace dependencies using both release and dev profiles as appropriate, but unless we intend to ship e.g. docker containers based on our built packages we don't need the release profile for the foreseeable future. --- flake.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flake.nix b/flake.nix index 6c7cab5eb..ef17cd00d 100644 --- a/flake.nix +++ b/flake.nix @@ -96,6 +96,10 @@ inherit src; strictDeps = true; + # avoid release builds throughout for faster feedback from checks + # note that this also affects the built packages + CARGO_PROFILE = "dev"; + # provide fallback name & version for workspace related derivations # this is mainly to silence warnings from crane about providing a stub # value overridden in per-crate packages with info from Cargo.toml From 5cf917fcff6ee76b35df43e3be2b2a3e01df7cb5 Mon Sep 17 00:00:00 2001 From: Yuval Kogman Date: Mon, 15 Dec 2025 17:59:58 +0100 Subject: [PATCH 2/4] disable terminal reliant progress output from nextest --- flake.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/flake.nix b/flake.nix index ef17cd00d..7d1348af0 100644 --- a/flake.nix +++ b/flake.nix @@ -221,6 +221,7 @@ partitions = 1; partitionType = "count"; cargoExtraArgs = "--locked --all-features"; + NEXTEST_SHOW_PROGRESS = "none"; BITCOIND_EXE = nixpkgs.lib.getExe' pkgs.bitcoind "bitcoind"; nativeBuildInputs = [ nginxWithStream ]; } From 6b01d4d81f916635d953945238bf7085d416f9df Mon Sep 17 00:00:00 2001 From: Yuval Kogman Date: Mon, 15 Dec 2025 18:00:44 +0100 Subject: [PATCH 3/4] don't install cargo artifacts from nextest jobs --- flake.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/flake.nix b/flake.nix index 7d1348af0..1fe418d32 100644 --- a/flake.nix +++ b/flake.nix @@ -224,6 +224,7 @@ NEXTEST_SHOW_PROGRESS = "none"; BITCOIND_EXE = nixpkgs.lib.getExe' pkgs.bitcoind "bitcoind"; nativeBuildInputs = [ nginxWithStream ]; + doInstallCargoArtifacts = false; } ) From 238d849aa015c82a93f1a87139574049240f328d Mon Sep 17 00:00:00 2001 From: Yuval Kogman Date: Mon, 15 Dec 2025 18:12:20 +0100 Subject: [PATCH 4/4] fixup! flake: build dev profile instead of release --- Cargo.toml | 4 ++++ flake.nix | 3 +-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 0e16ea6c1..2fecb8718 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,3 +14,7 @@ ohttp-relay = { path = "ohttp-relay" } payjoin = { path = "payjoin" } payjoin-directory = { path = "payjoin-directory" } payjoin-test-utils = { path = "payjoin-test-utils" } + +[profile.crane] +inherits = "test" +debug = false diff --git a/flake.nix b/flake.nix index 1fe418d32..eb69c2573 100644 --- a/flake.nix +++ b/flake.nix @@ -98,7 +98,7 @@ # avoid release builds throughout for faster feedback from checks # note that this also affects the built packages - CARGO_PROFILE = "dev"; + CARGO_PROFILE = "crane"; # provide fallback name & version for workspace related derivations # this is mainly to silence warnings from crane about providing a stub @@ -226,7 +226,6 @@ nativeBuildInputs = [ nginxWithStream ]; doInstallCargoArtifacts = false; } - ) )) ) craneLibVersions