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

How to handle breakages when the size of a class in a shared lib increases?



Dear Mentors,

I maintain a package that builds a shared library. I uploaded a new upstream version of it to Debian, with no removed symbols, no ABI change... Fine.

Unfortunately, it turns out fields were added to some class (of which size thus increased) in the shared library, so that binaries built against a previous version of it now segfault as they are not allocating enough space.

Of course, rebuilding the reverse dependencies fixes the segfaults.
How should we handle such situation in Debian? Quoting Policy 8.1:

  The SONAME and binary package name need not, and indeed normally
  should not, change if new interfaces are added but none are removed or
  changed, since this will not break binaries linked against the old
  shared library. Correct versioning of dependencies on the newer shared
  library by binaries that use the new interfaces is handled via the
  symbols or shlibs system.

So my understanding is that no SONAME change and no transition are needed, although the rdeps indeed have to be rebuilt as their binaries _are_ broken by the new version of the library.

Thanks for your attention,

--
Pierre

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


Reply to: