Proposal to (formally/easily) allowing multiple versions of the same library installable
kevin at scrye.com
Fri Feb 13 18:36:47 UTC 2015
On Fri, 13 Feb 2015 15:21:17 +0330
Hedayat Vatankhah <hedayat.fwd at gmail.com> wrote:
> Dear all,
> I don't know if this has been discussed before, but I didn't find any.
> Proposal: let's make it possible to have multiple versions of the
> same library installed, as far as their .so version permits that.
> 1. Include the base version of the library into its package name. So,
> instead of libfoo we can have libfoo2, libfoo3, libfoo4.
> 2. No reviews are required for new libfooX packages (as it is not
> required right now when you update your libfoo package).
But the thing is, it's really difficult to get right details about the
new package. Forget to change a name somewhere or a provides or
obsoletes. People mess this up all the time.
Also, this would vary library to library. Some things change slowly and
only support 1 release, some things (cough *ffmpeg*) change version
every release. So in some cases 3 is too many, and in others not
> 3. For each Fedora release, there is libfoo/libfoo-devel packages
> which Require the "default" version of libfoo packages for that
> release. For example, libfoo.fc20/libfoo-devel.fc20 will Require
> libfoo2/libfoo2-devel; for F21 libfoo3/libfoo3-devel and for
> F22/Rawhide libfoo4/libfoo4-devel.
So, you would need t move these 'default' provides to different
versions on different branches? Doable, but again, someone could merge
back a change and mess up this, so it sounds pretty delicate.
> For -devel packages, two methods can be allowed:
> 1. Simple: -devel packages conflict with each other, so while you can
> have multiple versions of libfoo installed, you can have only a
> single version of libfoo-devel installed
Bad idea. Conflicts are horrible and to be avoided.
> 2. Flexible: Provide the possibility of installing multiple -devel
> versions, and a method to select the "default" one, like the
> alternatives system.
More complexity... but also there is:
3. What we do today: make sure all versions are parallel installable.
> More details can be discussed, but I think it's enough for now. I
> want to see what others think about the whole idea. Details can be
> worked out if the idea seems interesting.
> Q: Can't a packager do it already? Why propose it as a 'proposal'?
> A: Yes, he can, but it'll be hard; mainly because he'll need to put
> new versions of the library for review. Also, I suggest it as a
> 'recommended practice' for packaging libraries.
So, the gist of the proposal is to avoid reviewing new compat packages?
Is this really such a burden?
> IMHO, this method will have many advantages, and can make it much
> easier to provide COPR repositories or similar to experiment with new
> things on a stable Fedora release without affecting other installed
> software. Also, it might make it possible to install and experiment
> with some packages from Rawhide/next Fedora release directly on your
> current release. As a developer, it makes the version of available
> libraries for development less bounded to Fedora version.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 819 bytes
Desc: OpenPGP digital signature
More information about the devel