/*Nikos Mavrogiannopoulos <n...@redhat.com>*/ wrote on Fri, 13 Feb 2015
14:11:49 +0100:
On Fri, 2015-02-13 at 15:21 +0330, Hedayat Vatankhah wrote:
Dear all,
I don't know if this has been discussed before, but I didn't find any.
Summary: I have a proposal to make it easier for maintainers to have
multiple versions of the same library in distro (by making it
*naturally* possible) (and with minimal maintenance overhead), and for
users/developers to get their desired version(s) installed. Proposal
in brief: instead of packaging libfoo as libfoo, the maintainer *can*
package it as libfooVER (e.g. libfoo2) and create libfoo/libfoo-devel
package which depends on libfoo2/libfoo2-devel. Now, libfoo-3 package
can be packaged as libfoo3, and both can be installed simultaneously
(assuming that they provide different .so versions, otherwise it could
be provided as an update to libfoo2). Notice that once libfoo2 is in
the repos, newer versions (libfoo3/libfoo4) should not require a
package review.
I'm not against it, for the libraries which provide proper symbol
versioning. Otherwise, if you only rely on the soname, you may end up in
a situation where a program crashes because of inter-dependencies which
make it link with both libfoo1 and libfoo2 which provide the same (but
most likely incompatible) symbols.
I wonder if it should be taken care of by packages, rather than
libraries themselves. I'm not sure, but probably most of the libraries
doesn't have such symbol versioning in place.
Also, note that all packages must be linked to the 'default' version,
unless strictly needed. And probably linking to libfoo1 and libfoo2
simultaneously should be checked automatically (e.g. AutoQA) and
forbidden completely.
Thanks,
Hedayat
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct