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

Shared library binary package, SONAME changes and file conflicts



Silly question, but I need a quick sanity-check:

hiredis upstream has bumped their SONAME from 0.10 to 0.13. From what I understand, this means the libhiredis0.10 binary package needs to be renamed to libhiredis0.13.

By and large that's an easy & mostly mechanical change, but both libhiredis0.10 and libhiredis0.13 want to install the libhiredis.so.0 symlink (each pointing to one of libhiredis.so.0.{10,13}).

I *think* what I want to do based on https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces is to add the following to debian/control for libhiredis0.13:

Replaces: libhiredis0.10
Breaks: libhiredis0.10

If I'm reading correctly, when users upgrade from libhiredis0.10 to libhiredis0.13, this should replace the libhiredis.so.0 symlink in libhiredis0.10 with the symlink pointing to libhiredis0.13. So long as 0.13 is a good citizen & contains no backward-incompatible changes from 0.10 (which I have yet to verify), I feel like everything should continue to work fine.

Is this the right way to handle the situation, or is there a better way to do this?

Cheers,
Tom

--
Tom Lee http://tomlee.co / @tglee


Reply to: