[Fedora-packaging] private-shared-object-provides in python packages

Thomas Spura tomspur at fedoraproject.org
Mon Sep 27 08:57:57 UTC 2010


On Sun, 26 Sep 2010 13:01:54 -0400
Toshio Kuratomi wrote:

> On Sun, Sep 26, 2010 at 07:33:40PM +0530, Parag N(पराग़) wrote:
> > Hi,
> >    Do .so files installed in %{python_sitearch} MUST be filtered? I
> > see one reference at
> > https://fedoraproject.org/wiki/Common_Rpmlint_issues#private-shared-object-provides
> > but the filtering policy is not added to Python packaging
> > guidelines. Also, why rpmlint complains it as warning and not an
> > error? e.g. one case I see is
> > pyorbit.x86_64: W: private-shared-object-provides
> > /usr/lib64/python2.6/site-packages/ORBit.so ORBit.so()(64bit)
> > A shared object soname provides is provided by a file in a path
> > from which other packages should not directly load shared objects
> > from.  Such shared objects should thus not be depended on and they
> > should not result in provides in the containing package.  Get rid
> > of the provides if appropriate, for example by filtering it out
> > during build.  Note that in some cases this may require disabling
> > rpmbuild's internal dependency generator.
> > 
> Thanks for bringing this up!
> 
> I was looking at this for a package a few weeks ago and found that
> this guideline was in the normal packaging guidelines:
> 
> https://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering
> 
> but I did not remember approving it.  It was moved into the main
> packaging Guidelines when spot made the changes that moved the
> backlog of approved guidelines from the Todo list into the main
> guidelines.  I found where we had discussed it the first time:
> https://fedoraproject.org/wiki/Packaging:Minutes/20090602#t12:39
> 
> but after that meeting we (FPC) didn't meet for a while due to
> different people being on vacation and thus not being able to make
> quorum.  Meeting logs are not present during this time so I can't
> tell if I was on vacation and it was approved or if it got moved into
> the main Guidelines by mistake.
> 
> This guideline would impact what we do for filtering private python
> provides as it specifies:
> 
> """
> MUST: Packages must not provide RPM dependency information when that
> information is not global in nature, [...]
> MUST: When filtering automatically generated RPM dependency
> information, the filtering system implemented by Fedora must be used
> [...] """

Would it be possible to first make the macros.filtering linked from the
wiki page from above available by default?
http://fedorapeople.org/~cweyl/macros.filtering

Then it would be far easier to filter unwanted provides out, than
currently possible.

Thanks,
  Thomas


More information about the packaging mailing list