Sorry to jump into this thread at a random point.

There's another aspect to this discussion that hasn't been brought up. Imagine that I release a package bar-1.0.0.0, that depends on:

    build-depends: base, foo >= 1.1

Then, suppose foo-1.2 is released and bar-1.0.0.0 is incompatible. If you simply release a new version of bar with a stricter upper bound, cabal may decide to install the original bar-1.0.0.0 together with foo-1.2, which will lead to a broken build. Blackling the package is the theoretical solution to this problem, but may not work correctly[1]. However, by overwriting the original cabal file with a tweaked one, cabal will be able to make a more sensible decision.

I'm not trying to advocate anything in particular here, just point out an aspect of the discussion that I think has been missed.

[1] https://github.com/haskell/cabal/issues/1792

On Fri, Oct 31, 2014 at 11:56 AM, Peter Simons <simons@cryp.to> wrote:
Hi Lennart,

 > Bumping [the (n+1)th digit] is not safe, as the maintainer might
 > decide to publish a new version that adds a new component.)

Suppose I publish foo-1.0. Then a sequence of edits would produce
versions 1.0.1, 1.0.1.1, 1.0.1.1.1, and so on.

Why would there be any problem?

Best regards,
Peter

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe