[Haskell-cafe] hledger: mtl vs transformers

Simon Michael simon at joyful.com
Fri Feb 11 20:39:30 CET 2011

On Feb 11, 2011, at 11:20 AM, Peter Simons wrote:
> If hledger offers optional features by means of Cabal flags, then  
> users
> of the library need the ability to depend on hledger with a specific  
> set
> of features (flags) enabled or disabled, but unfortunately Cabal can't
> do that.
> The new approach remedies that problem by placing optional features in
> separate packages. That creates a different problem, however, because
> users may now install hledger and hledger-web separately, which --  
> as we
> know -- may create all kinds of version conflicts that are non-trivial
> to resolve.
> This is the problem you're now trying to solve by over-specifying the
> dependencies of hledger. Arguably, though, Cabal should solve that
> problem for the user, i.e. by offering to re-compile hledger to  
> resolve
> the conflict etc., but unfortunately Cabal can't do that either.

Hi Peter.. thanks for the follow-up. In case it wasn't clear, I do  
realise now that attempts to over-specify depedencies to avoid  
practical cabal install issues can backfire, and a package author  
should just accept that cabal install can't be made 100% reliable  
installation method for non-experts (for now - I know many people are  
thinking about this).

And, I've fixed/relaxed the process dependency in hledger head, and  
only laziness/business has prevented that from being released to  
hackage. I'll do that asap.

Cheers - Simon

More information about the Haskell-Cafe mailing list