From 5cfdab8950f275a8d0370d75bcc7b7f41ce8ee19 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 31 Jan 2023 15:10:12 +0100 Subject: [PATCH 1/2] eval-release.nix: Tolerate null This will allow tests.pkg-config.defaultPkgConfigPackages to run on hydra without breaking the tarball job. Regarding the use of null, I'll quote 473ac96 which does lib.hydraJob. By allowing null, we allow code to avoid filterAttrs, improving laziness in real world use cases. Specifically, this strategy prevents infinite recursion errors, performance issues and possibly other errors that are unrelated to the user's code. --- maintainers/scripts/eval-release.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/maintainers/scripts/eval-release.nix b/maintainers/scripts/eval-release.nix index bb9572cbc795..4f0ca2465025 100644 --- a/maintainers/scripts/eval-release.nix +++ b/maintainers/scripts/eval-release.nix @@ -17,6 +17,7 @@ let if (builtins.tryEval attrs.drvPath).success then { inherit (attrs) name drvPath; } else { failed = true; } + else if attrs == null then {} else { recurseForDerivations = true; } // mapAttrs (n: v: let path' = path ++ [n]; in trace path' (recurse path' v)) attrs else { }; From 9520feaf765d232d7455b93c83e077edfd38f7af Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 31 Jan 2023 04:16:51 +0100 Subject: [PATCH 2/2] Revert "Revert "tests.defaultPkgConfigPackages: Add recurseIntoAttrs"" This reverts commit deed04ab81207cf769af23d6f31b62afc2df0ec8. --- pkgs/top-level/pkg-config/test-defaultPkgConfigPackages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/pkg-config/test-defaultPkgConfigPackages.nix b/pkgs/top-level/pkg-config/test-defaultPkgConfigPackages.nix index 1e53a02ec8a9..37687117987d 100644 --- a/pkgs/top-level/pkg-config/test-defaultPkgConfigPackages.nix +++ b/pkgs/top-level/pkg-config/test-defaultPkgConfigPackages.nix @@ -42,4 +42,4 @@ let else testers.hasPkgConfigModule { inherit moduleName; package = pkg; }; in - allTests // { inherit tests-combined; } + lib.recurseIntoAttrs allTests // { inherit tests-combined; }