diff options
| author | Joey Hess <joeyh@joeyh.name> | 2016-09-20 11:36:44 -0400 |
|---|---|---|
| committer | Joey Hess <joeyh@joeyh.name> | 2016-09-20 11:36:44 -0400 |
| commit | 00e2f1aa16b4f569bef06d7c229f0d358dfce741 (patch) | |
| tree | e75a7c9dba7172f7c458823802fd8b37763c6001 /doc | |
| parent | e919b21b83e4d9797aa174afdb89fb86a76d4f66 (diff) | |
response
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/forum/Modules_with_Multiple_cmdProperty_causing_build_failures/comment_1_38050ca3503a6286b60f4bfc640f008e._comment | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/doc/forum/Modules_with_Multiple_cmdProperty_causing_build_failures/comment_1_38050ca3503a6286b60f4bfc640f008e._comment b/doc/forum/Modules_with_Multiple_cmdProperty_causing_build_failures/comment_1_38050ca3503a6286b60f4bfc640f008e._comment new file mode 100644 index 00000000..fd6005a1 --- /dev/null +++ b/doc/forum/Modules_with_Multiple_cmdProperty_causing_build_failures/comment_1_38050ca3503a6286b60f4bfc640f008e._comment @@ -0,0 +1,36 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 1""" + date="2016-09-20T15:14:19Z" + content=""" +The compiler error message here is not nice; if +[[todo/use_ghc_8.0_custom_compile_errors]] is able to be implemented some +time, I'd hope for a error message more like: + + Couldn't match Property DebianLike with UncheckedProperty UnixLike + Perhaps you forgot to use `changesFile` or `assume MadeChange`? + +Instead of the current mess which has a lot of bloat from type families. +The meat of the error is here: + + src/Propellor/Property/SiteSpecific/Pebble.hs:29:5: + Couldn't match type ‘Propellor.PropAccum.GetMetaTypes + (CombinedType (UncheckedProperty UnixLike) (Property UnixLike))’ + with ‘Propellor.Types.Singletons.Sing y0’ + The type variable ‘y0’ is ambiguous + Expected type: Propellor.PropAccum.GetMetaTypes + (CombinedType (UncheckedProperty UnixLike) (Property UnixLike)) + Actual type: Propellor.Types.MetaTypes.MetaTypes y0 + +cmdProperty has type UncheckedProperty UnixLike; in order to get +a Property that runs a command, you have to provide some way of checking +if the command made a change to the system. + +Since running tar certianly changes the system, adding `assume MadeChange` +after it should do. + +Running pip install may not alwways change the system; it's up to you if +you want to do a real check for change there or again `assume MadeChange`. + +I think those two changes are all you'll need to get it to compile. +"""]] |
