okay, but you could help the package user to interpret the compiler error messages, as outlined above.
That does seem pretty hard.
it isn't nice, and it will never cover all cases. but the issues are out there now, and offering the innocent package builder some help shouldn't be that hard. a quick hack with a couple of examples is attached - needs work, but doesn't look "hard" in principle. it is probably easy to get wrong, like all such things, but as long as the current partially-broken state of doing things is still available, offering a helpful command wrapper could help to reduce the impact of those package issues. and the second release of a new ghc version tends to live a lot longer than the first.. you could probably scrape the most relevant message patterns right from your hackage survey, hackage build logs and recent haskell-cafe build failure emails. claus begin 666 cabal.hs M:6UP;W)T(%-Y<W1E;2Y0<F]C97-S#0II;7!O<G0@4WES=&5M+DE/#0II;7!O M<G0@5&5X="Y296=E> T*:6UP;W)T($1A=&$N0VAA<@T*:6UP;W)T($1A=&$N M3&ES= T*:6UP;W)T(%-Y<W1E;0T*:6UP;W)T($-O;G1R;VPN36]N860-"@T* M<G5N:&%S:V5L;" ](")C.B]G:&,O9VAC+38N.2XR,# W,3$S,"]B:6XO<G5N M:&%S:V5L;"YE>&4B#0H-"FUA:6X@/2!D;PT*("!S=&%G92 B8V]N9FEG=7)E M(@T*("!S=&%G92 B8G5I;&0B#0H-"G-T86=E(',@/2!D;PT*("!P=713='), M;B D(")<;BTM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T@<W1A9V4Z M("(K*W,-"B @*&DL;RQE+' I(#PM(')U;DEN=&5R86-T:79E4')O8V5S<R!R M=6YH87-K96QL(%LB4V5T=7 B+'-=($YO=&AI;F<@3F]T:&EN9PT*("!P=713 M='),;B B+2T@<W1D;W5T(@T*("!H1V5T0V]N=&5N=',@;R ^/CT@<'5T4W1R M3&X@#0H@('!U=%-T<DQN("(M+2!S=&1E<G(B#0H@(&5R<F]R<R \+2!H1V5T M0V]N=&5N=',@90T*("!P=713='),;B!E<G)O<G,-"B @<'5T4W1R3&X@(BTM M(&AI;G1S(@T*("!H:6YT<R!R=6QE<R D('-Q=6%S:%-P86-E<R!E<G)O<G,- M"B @<W1A='5S(#PM('=A:71&;W)0<F]C97-S(' -"B @8V%S92!S=&%T=7,@ M;V8@>R!%>&ET4W5C8V5S<R M/B!R971U<FX@*"D[(%\@+3X@97)R;W(@)" B M6V9A:6QU<F4@:6X@<W1A9V4@(BLK<RLK(ETB('T-"@T*+2T@<V]M92!E>&%M M<&QE(')U;&5S#0H-"G)U;&5S(#T@#0H@(%LH8V]N9DAO;VLL#0H@(" @7%\M M/F1O('!U=%-T<DQN(")T:&4@='EP92!O9B!C;VYF:6=U<F4@:&]O:W,@:&%S M(&-H86YG960@*#QU<FP^*2XB#0H@(" @(" @(" @('!U=%-T<DQN("(@('!L M96%S92!A<VL@<&%C:V%G92!M86EN=&%I;F5R(#QE;6%I;#X@=&\@=7!D871E M(%-E='5P+FAS(BD-"B @+"AM:7-S:6YG1&5P96YD96YC>2P-"B @("!<6W L M=ETM/FEF("AP(&!E;&5M8"!O;&1?8F%S92D@#0H@(" @(" @(" @("!T:&5N M(&1O#0H@(" @(" @(" @(" @('!U=%-T<DQN("0@(G1H92!B87-E('!A8VMA M9V4@:&%S(&)E96X@<W!L:70@=7 @*#QU<FP^*2XB#0H@(" @(" @(" @(" @ M('!U=%-T<DQN("0@(B @<&QE87-E(&-O;G1A8W0@<&%C:V%G92!M86EN=&%I M;F5R.B \96UA:6P^("(-"B @(" @(" @(" @(" @<'5T4W1R3&X@)" B("!M M96%N=VAI;&4L(&%D9"!D97!E;F1E;F-Y.B B*RMP*RMV#0H@(" @(" @(" @ M("!E;'-E(&1O#0H@(" @(" @(" @(" @('!U=%-T<DQN("0@(G1H92!P86-K M86=E(&1E<&5N9&5N8VEE<R!S965M(&EN8V]M<&QE=&4N(@T*(" @(" @(" @ M(" @("!P=713='),;B D("(@('!L96%S92!C;VYT86-T('!A8VMA9V4@;6%I M;G1A:6YE<CH@/&5M86EL/B B#0H@(" @(" @(" @(" @('!U=%-T<DQN("0@ M(B @;65A;G=H:6QE+"!T<GD@861D:6YG(&1E<&5N9&5N8WDZ("(K*W K*W8I M#0H@(%T-"B @=VAE<F4@;VQD7V)A<V4@/2!;(F%R<F%Y(BPB8GET97-T<FEN M9R(L(G!A8VME9'-T<FEN9R(L(F-O;G1A:6YE<G,B#0H@(" @(" @(" @(" @ M(" @(" @+")R86YD;VTB+")P<F5T='DB+")P<F]C97-S(BPB9&ER96-T;W)Y M(BPB;VQD+71I;64B#0H@(" @(" @(" @(" @(" @(" @+")O;&0M;&]C86QE M(B#;W5L M9&XG="!M871C:"!E>'!E8W1E9"!T>7!E(& B*RMA*RLB)R!A9V%I;G-T(&EN M9F5R<F5D('1Y<&4@8"(K*V(K*R(G(@T*#0IC;VYF2&]O:R ](&UK4F5G97@@ M)"!E<V-A<&4@)"!T>7!E;6ES;6%T8V@@#0H@("(H16ET:&5R($=E;F5R:6-0 M86-K86=E1&5S8W)I<'1I;VX@4&%C:V%G941E<V-R:7!T:6]N+"!(;V]K961" M=6EL9$EN9F\I(@T*(" B4&%C:V%G941E<V-R:7!T:6]N(@T*#0IM:7-S:6YG M1&5P96YD96YC>2 ](&UK4F5G97@@)" -"B @(D-O=6QD(&YO="!F:6YD(&UO M9'5L92!@6UXG72HG.B!I="!I<R!A(&UE;6)E<B!O9B!P86-K86=E("A;7C M M.5TJ*2@M6S M.2Y=*BDL('=H:6-H(&ES(&AI9&1E;B(-"@T*+2T@875X:6QI M87)I97,-"@T*:&EN=',@6UT@=&5X=" @(" @(" @(" @(" @/2!P=713='), M;B B(@T*:&EN=',@*"AP870L:&EN="DZ:',I('1E>'0@/2!M87EB92 H:&EN M=',@:',@=&5X="D@#0H@(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @ M(" @("A<;"T^:&EN="!L/CYH:6YT<R!H<R!T97AT*0T*(" @(" @(" @(" @ M(" @(" @(" @(" @(" @(" @(" @(" H;6%T8VA296=E>"!P870@=&5X="D- M"@T*<W%U87-H4W!A8V5S("(B(" ]("(B#0IS<75A<VA3<&%C97,@*&$Z8BD@ M#0H@('P@;F]T("AI<U-P86-E(&$I(#T@83IS<75A<VA3<&%C97,@8@T*<W%U M87-H4W!A8V5S('-T<B @(" ](&-A<V4@<W!A;B!I<U-P86-E('-T<B!O9B - M"B @(" @(" @(" @(" @(" @(" @(" @("AA+&(I("T^(%LG("=\;F]T("AN M=6QL(&$I72LK<W%U87-H4W!A8V5S(&(-"@T*97-C87!E("(B(" @(" ]("(B M#0IE<V-A<&4@*&,Z8W,I(#T@6R=<7"=\(&,@8&5L96U@("(H*2(@72 K*R H .8SIE<V-A<&4@8W,I#0H` ` end