Proposal to reduce anti-bundling requirements

Zdenek Kabelac zkabelac at redhat.com
Fri Sep 11 13:39:51 UTC 2015


Dne 11.9.2015 v 15:21 Neal Gompa napsal(a):
> On Fri, Sep 11, 2015 at 9:03 AM, Zdenek Kabelac <zkabelac at redhat.com
> <mailto:zkabelac at redhat.com>>wrote:
>
>     Dne 11.9.2015 v 14:46 Germano Massullo napsal(a):
>
>         I have read the whole discussion and I would like to share my opinion,
>         even if I think it could be a bit off-topic.
>         Given that Fedora community alone, cannot educate every upstream
>         developer about unbundling, and considering that it is a problem that
>         interests all main Linux distributions: I think that Fedora community
>         could (and should) propose to other Linux distribution communities to
>         make a general effort to kindly ask upstream devs to reconsider their
>         work, enforcing unbundling.
>         This will take years, but I think it is a way we should cover.
>
>
>     How Fedora wants to educate 'upstream' when it rather fails on many levels
>     when we talk about library handling.
>
>     Fault #1
>
>     Fedora badly supports multiple libraries of different version - i.e.
>     typically full rebuild of whole repo is made when new library is
>     introduced - which is typically quite bad idea (and this is not just
>     because of simple version change requires reload of many GB of packages)
>     (I've already complained that usage of rawhide & rpmfusion is getting silly)
>
>
>
>     Fault #2
>
>     Version of libraries is wrongly handled on packaging level as well as on
>     build level and many library packages are not correctly versioned - so if
>     someone believe there is some use of  libname.so.major.minor.patch - for
>     RPM it's mostly useless and if symbols are not properly version inside
>     library, dependency will simply not work -  and just adding 'constant'
>     version string to every symbol inside library will not make this work
>
>     Zdenek
>
>
> ​I get the feeling this is related to Fedora not aggressively using versioned
> package names for libraries, or at least enabling some kind parallel
> installing capability. SUSE used to follow a policy similar to our current
> one, but switched due to the insanity and impracticality. Mageia also uses a
> policy almost identical to SUSE's.
>
> For an example, here's SUSE's policy:
> https://en.opensuse.org/openSUSE:Shared_library_packaging_policy​
>
> ​I've been meaning to ask about why we don't do this for a while now, but it
> seems like now is a good of a time as any...​


I found the idea of making packages purely dependent on versioned symbols as 
not so ideal plan either - as this way you will not  be able handle any new 
flags supported by libraries which uses still same symbols -  UNLESS you 
expected developer to be 'versioning'-fanatic - to maintain versioning of 
symbols at low-level and update 'version' for every tiny upgrade he does for a 
symbol -  how many packages  does that ??
(i.e. your existing API function will handle new 'enum flag' - change its 
version string)

So while 'versioned' symbols do have some logic - it still should not be 
forgotten that  RPM should rather put in  package dependency on the library 
being at least as good as the one used for compilation. Depending purely on 
provided 'symbols' is not exactly what one would expect....

Zdenek




More information about the devel mailing list