I have got a minor transition coming up: gnutls 2.12.0.
GnuTLS contains 4 libraries, some of these broke, but not the
libgnutls. The main library, some new symbols but no incompatible
changes. shlibs will be bumped, soname does not change. (Shipped in
libgnutls-extra. non-LGPL code. shlibs bump but also no soname change.
(Shipped in package libgnutls26)
libgnutls-openssl. ABI breakage (changed public struct), but no API
breakage. soname bumped. This library used to be shipped in the
libgnutls26 package but I have moved it to a separate package, because
the soname version changed.
GnuTLS C++ wrapper. ABI breakage, soname bumped. No reverse
dependencies. (libgnutlsxx26 and libgnutlsxx27).
1. Find all packages linking against the OpenSSL wrapper library (extract
everything depending on libgnutls26, use objdump -p | grep NEEDED to
find linking binaries/librarires.) Last time I checked there were iirc
about 8 packages involved.
2. Doublecheck whether they build against the new version.
2. Add versioned Breaks for all packages linking against libgnutls-openssl
to the libgnutls26 package. I would use <= current-version-in-sid.
3. Upload to sid.
4. Trigger binNMUs for the packages found in 1.
Does this plan look ok? Any improvements?
I will follow up once I have uploaded 2.12.0 to experimental (2.11.7 is
available and should be basically identical.) and run through 1 and 2
of the transition plan.
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'