Skip to content

Commit

Permalink
fix(core): recover the unbound freeformType contract per module system (
Browse files Browse the repository at this point in the history
  • Loading branch information
blaggacao committed Jun 20, 2022
1 parent 59843d3 commit 1640dd9
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions lib/make.nix
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,19 @@ request:
let
requestLocation = (builtins.unsafeGetAttrPos "configData" request).file or null;

# Defunctor the request, because the module system can't deal with a functor-type module
# as an upstream contract, upstream should implement corresponding validators / sanators
# instead, upstream just "explodes"
defunctoredRequest = builtins.removeAttrs request [ "__functor" ];

# Compile the request into its module equivalent
userRequest =
let
maybeLocatedRequest =
if requestLocation == null then
request
defunctoredRequest
else
setDefaultModuleLocation requestLocation request;
setDefaultModuleLocation requestLocation defunctoredRequest;
in
lib.mkRequest [ maybeLocatedRequest ];

Expand Down

0 comments on commit 1640dd9

Please sign in to comment.