Fix(introspection): 'lazyAttrsOf' needs to get the same handling as 'attrsOf'

This commit is contained in:
Johannes Kirschbauer
2025-05-21 16:45:19 +02:00
parent 74ceb95eb7
commit b628b12b3e

View File

@@ -58,12 +58,15 @@ let
getPrios { options = submoduleEval.options; } getPrios { options = submoduleEval.options; }
else else
# Nested attrsOf # Nested attrsOf
(lib.optionalAttrs (type.nestedTypes.elemType.name == "attrsOf") ( (lib.optionalAttrs
(type.nestedTypes.elemType.name == "attrsOf" || type.nestedTypes.elemType.name == "lazyAttrsOf")
(
prioPerValue { prioPerValue {
type = type.nestedTypes.elemType; type = type.nestedTypes.elemType;
defs = zipDefs defs.${attrName}; defs = zipDefs defs.${attrName};
} prioSet.value } prioSet.value
)) )
)
) )
); );
@@ -79,7 +82,7 @@ let
in in
if opt ? type && opt.type.name == "submodule" then if opt ? type && opt.type.name == "submodule" then
(prio) // submodulePrios (prio) // submodulePrios
else if opt ? type && opt.type.name == "attrsOf" then else if opt ? type && (opt.type.name == "attrsOf" || opt.type.name == "lazyAttrsOf") then
prio prio
// (prioPerValue { // (prioPerValue {
type = opt.type; type = opt.type;