On Fri, Jan 21, 2011 at 8:02 AM, Michael Snoyman <michael@snoyman.com> wrote:
Couldn't you depend on either version of mtl?

Point is that in this particular case two different versions of mtl are being pulled in the compilation by different dependencies. Plus, transformers 0.2.* is selected as well.

Cabal reasons along the following lines:
  one dependency is hledger 0.13, which is built against the mtl 1.x. Selecting both
  another dependency is Chart, which is built against transformers 0.2.x

  Now instances from transformers conflict with those from mtl 1.x, when you are building hledger-chart

  Plus, when you are rebuilding hledger-0.13 from scratch, they start to conflict as well.

  Add in the mix deficiency of 6.12.1 which is sometimes picks up wrong version of packages (or so I remember), and all the hell breaks loose.

  The only solution for me was to bump mtl to 2.x, rebuild everything depending on mtl, and something pulled in newer "process" in the process, which caused another wave of rebuilds. 

  With 6.12.3 or 7.0.1 everything is way easier (as expected) :)
 

On Fri, Jan 21, 2011 at 3:37 AM, Simon Michael <simon@joyful.com> wrote:
> You mean mtl 2.*, right ?
>
> Yes that is a problem. I'm nervous about requiring mtl 2 because when I
> bumped hledger 0.13's process dependency to 0.14 for similar reasons it made
> all kinds of trouble for folks who just want to install the hledger core in
> standard/older haskell environments.
>
> On Jan 20, 2011, at 5:11 PM, Dmitry Astapov wrote:
>>
>> Since hledger-chart depends on Chart, which in turn depends on
>> transformers 0.2.*, it will make a sense to bump all mtl dependencies in
>> hledger to 2.2
>>
>> When one does "make install" with older GHC (like 6.12.1, for example),
>> and mtl 1.x is available, it would be happily used for hledger-lib and
>> hledger, but compilation of hledger-chart will pull in transformers 0.2 (but
>> not the newer mtl) and will fail due to conflicting instances.
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>



--
Dmitry Astapov