[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

It happened again: Upgrades that are inconsistent with the rest



Hi,

my mass-building stopped with all remaining packages uninstallable, so I
investigated, and indeed it happened again:

haskell-crypto-pubkey-types-0.4.0 was uploaded without its reverse
dependencies upgraded to support that version. What is worse is that
there seems to be no released version of haskell-certficiate that
supports 0.4 yet (the latest, 1.3.7, explicitly disallows 0.4:
http://hdiff.luite.com/cgit/certificate/commit/?id=7b9eae9ed933b259f55b2d3de09a952776e2fa6d
)

So now we are stuck with a bunch of haskell packages in unstable
uninstallable and have to wait for upstream to act:
https://github.com/vincenthz/hs-certificate/issues/20

This is precisely why we have introduced the all-packages.cabal file: So
that, _before uploading_, you can plan your upgrades and see if hackage
provides a consistent set. If, before uploading crypto-pubkey-types-0.4
and crypto-pubkey-0.1.4 one would have applied that change to
all-packages.cabal and ran "cabal install --dry-run --force-reinstall"
it would have told you:

Resolving dependencies...
cabal: Could not resolve dependencies:
trying: all-packages-0
trying: crypto-pubkey-types-0.4.0
rejecting: cryptocipher-0.5.0, 0.4.0, 0.3.7 (conflict: all-packages => cryptocipher(==0.3.6))
rejecting: cryptocipher-0.3.6 (conflict: crypto-pubkey-types==0.4.0, cryptocipher => crypto-pubkey-types>=0.2 && <0.3)
rejecting: cryptocipher-0.3.5, 0.3.4, 0.3.3, 0.3.2, 0.3.1, 0.3.0, 0.2.14, 0.2.13, 0.2.12, 0.2.11, 0.2.10, 0.2.9, 0.2.8, 0.2.7, 0.2.6, 0.2.5, 0.2.4, 0.2.3, 0.2.2, 0.2.1, 0.2, 0.1 (conflict: all-packages => cryptocipher(==0.3.6))

i.e. that cryptocipher would have to be updated as well. Then one can
review the new versions of that on
http://hdiff.luite.com/cgit/cryptocipher/ and notice that 0.5.0 is the
first version that is compatible with crypto-pubkey-types (simply
because the dependency is dropped). So you change the entry of
cryptocipher in all-packages.cabal as well and continue, until you
either have a consistent set that you can _then_ upload, or notice that
the upgrade you started with is not possible yet.


Greetings,
Joachim

-- 
Joachim "nomeata" Breitner
Debian Developer
  nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
  JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: