Daily report for head

Simon Marlow marlowsd at gmail.com
Tue Aug 26 09:45:15 EDT 2008


Duncan Coutts wrote:
> On Tue, 2008-08-26 at 09:40 +0100, Simon Marlow wrote:
>> Claus Reinke wrote:
>>
>>> Of course, warnings like
>>>    Configuring html-1.0.1.1...
>>>    Warning: This package indirectly depends on multiple versions of the 
>>> same
>>>    package. This is highly likely to cause a compile failure.
>>>    package html-1.0.1.1 requires base-3.0.3.0
>>>    package unique-0.1 requires base-4.0
>>>    package timeout-0.1 requires base-4.0
>>>    package st-0.1 requires base-4.0
>>>    package getopt-0.1 requires base-4.0
>>>    package concurrent-0.1 requires base-4.0
>>>    package base-3.0.3.0 requires base-4.0
>>>
>>> aren't really confidence-inspiring wrt to the base-compat solution,
>> These warnings are harmless when they refer to base-3 vs. base-4, as you 
>> probably realised.  We should make sure that the Cabal we ship with GHC 
>> 6.10.1 doesn't emit these warnings though - Duncan, is that doable?
> 
> We can hack it for the special case of base, or try and be slightly more
> general and not complain when the two versions that get pulled in
> directly depend on each other. In general there's no simple way for
> Cabal to know if using multiple versions of a package is going to work
> on not. It's quite unsatisfactory.

If there's a dependency, direct or indirect, between the two versions of 
the package then it is ok to include them in the same program.  The only 
way this could occur is if the two versions are intended to be used 
together, otherwise it would be a dependency loop.  (you could approximate 
this by checking for direct dependencies only, which will cover all cases 
we're likely to see in the near future).

> It's going to be even worse for the dep planning. I'm not sure how to
> solve it yet.

So if you establish that base-3 and base-4 can coexist using the above 
rule, can you then use that information when deciding whether two packages 
can both be present in the plan?

Cheers,
	Simon




More information about the Cvs-ghc mailing list