Multiple versions [Was: "In Fedora" or "For Fedora"...]

Bryan Kearney bkearney at redhat.com
Wed Sep 17 14:55:27 UTC 2008


Fernando Nasser wrote:
> Bryan Kearney wrote:
> (..)
>>
>> This may be a big can-o-worms.. and if so I apologize, but is there a 
>> thought to support multi-versions jars? I could see a scenario where 
>> xerces 2.8.X is a stream (2.8.1 and 2.8.2) installed at the same time 
>> as xerces 2.9. The value being that I guess the issue is over major 
>> releases, not minor ones. The downside being I am sure this is 
>> verbotes in some fedora packaging way.
>>
> 
> Hi Bryan,
> 
> This is an old discussion, so that can of worms has been opened many 
> years ago, don't worry.
> 
> The whole purpose of a "distribution" (like RHEL, Fedora, Suse, Debian, 
> JPackage, etc.) is to find a set of packages that interoperates, ideally 
> resulting in one version of each.  The single version facilitates 
> maintaining, specially security fixing.  It also prevents conflicts by 
> accidentally loading two different versions, compiling with one and 
> running with another etc.
> 
> This said, sometimes exceptions have to be made.  Sometimes you'll see a 
> "compatible" library in Linux.  Similarly, sometimes JPackage (or RHEL, 
> or Fedora) releases a versioned package to cope with some unsolvable 
> situation.  This is treated as exceptional cases and usually done for a 
> limited time (until the dependencies can be moved to the same version).
> 
> I call these packages "legacy" and "progressive".  For instance, if the 
> maistream version of xerces is 4.7.1, our xerces-j2 RPM will be at 2.7.1 
> and we'd produce a "progressive" xerces-j282 package as a last resource. 
>  Please note the "last resource" ;-)
> 
> In a few cases we have packages that are meant to be installed in 
> parallel, like the tomcat ones as people need to migrate applications 
> between major versions and usually do it a few at a time.  So we have 
> "tomcat5" and "tomcat6" at the moment.  But this is a service, not a 
> library.

I figured as much.. but there are always valid cases (e.g. the kernel 
supports this). It seems like one instance of a library is better then 
many applications packaging the library. Perhaps the history of Java 
(and ruby) would warrant a pattern for distributing various versions.

-- bk




More information about the Fedora-isv-sig-list mailing list