Package: haskell-devscripts
Version: 0.6.15+nmu6
Severity: normal

As an example, currently, libghc6-parsec-dev has
Depends: ghc6 (>= 6.10.1+dfsg1-13), ghc6 (<< 6.10.1+dfsg1+),
 libghc6-mtl-dev (>= 1.1.0.2-6), libghc6-mtl-dev (<< 1.1.0.2+)

And libghc6-network-dev has
Depends: ghc6 (>= 6.10.1+dfsg1-13), ghc6 (<< 6.10.1+dfsg1+),
 libghc6-parsec-dev (>= 3.0.0-4), libghc6-parsec-dev (<< 3.0.0+)

This may cause problems if mtl ever gets updated to a new upstream
version.  Its ABI has likely changed (along with the cabal version)
and this change may or may not propagate to parsec's interface,
affecting network.

To play it safe, both parsec and network should be uninstallable
together with the new mtl.  BinNMUing parsec will fix its ABI, but
then nothing in network's dependencies will prevent it from being
installed together with the new mtl and new parsec.

Taking the transitive closure of dependencies for network would solve
this issue, ie. make it have
Depends: ghc6 (>= 6.10.1+dfsg1-13), ghc6 (<< 6.10.1+dfsg1+),
 libghc6-parsec-dev (>= 3.0.0-4), libghc6-parsec-dev (<< 3.0.0+),
 libghc6-mtl-dev (<< 1.1.0.2+)

I see no need to include libghc6-mtl-dev (>= 1.1.0.2-6) in
libghc6-network-dev's dependencies, since that part won't play role in
ABI changes and depending on libghc6-parsec-dev will already get the
correct lower bound.



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to