Merge pull request #68491 from roberth/fix-dontRecurseIntoAttrs

Fix dontRecurseIntoAttrs + add to lib + doc
This commit is contained in:
Robert Hensing
2020-03-01 11:05:34 +01:00
committed by GitHub
4 changed files with 62 additions and 5 deletions

View File

@@ -473,6 +473,20 @@ rec {
/* Pick the outputs of packages to place in buildInputs */
chooseDevOutputs = drvs: builtins.map getDev drvs;
/* Make various Nix tools consider the contents of the resulting
attribute set when looking for what to build, find, etc.
This function only affects a single attribute set; it does not
apply itself recursively for nested attribute sets.
*/
recurseIntoAttrs =
attrs: attrs // { recurseForDerivations = true; };
/* Undo the effect of recurseIntoAttrs.
*/
dontRecurseIntoAttrs =
attrs: attrs // { recurseForDerivations = false; };
/*** deprecated stuff ***/
zipWithNames = zipAttrsWithNames;

View File

@@ -73,7 +73,8 @@ let
genAttrs isDerivation toDerivation optionalAttrs
zipAttrsWithNames zipAttrsWith zipAttrs recursiveUpdateUntil
recursiveUpdate matchAttrs overrideExisting getOutput getBin
getLib getDev chooseDevOutputs zipWithNames zip;
getLib getDev chooseDevOutputs zipWithNames zip
recurseIntoAttrs dontRecurseIntoAttrs;
inherit (lists) singleton forEach foldr fold foldl foldl' imap0 imap1
concatMap flatten remove findSingle findFirst any all count
optional optionals toList range partition zipListsWith zipLists