
5 Sep
2012
5 Sep
'12
9:07 p.m.
On Wed, Sep 05, 2012 at 05:43:04PM -0700, Michael Sloan wrote:
While I suppose it could break proper dependency resolution, a big reason for upper bounds is preventing a cascade of confusing errors. With orphan instances the errors are very finite.
I don't think the type of errors was a factor in designing the PvP. The primary (perhaps even only) goal was to design packages in such a way that if "cabal install foo" would have worked yesterday, then it will also work today. That means that if foo depends on bar, and there is a suitable newer version of bar available today, then foo had better work with that version too. The person installing foo isn't interested in developing foo or bar, so doesn't want any error at all! Thanks Ian