Bug 502403

Summary: RFE: add %{?perl_default_filter} to the perl spec template
Product: [Fedora] Fedora Reporter: Chris Weyl <cweyl>
Component: rpmdevtoolsAssignee: Ville Skyttä <ville.skytta>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: n3npq, perl-devel, ville.skytta
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 7.5-1.fc11 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-10-06 09:57:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Chris Weyl 2009-05-24 21:17:23 UTC
arch-specific perl-* packages often have library provides picked up and exposed vi rpm's autoprov system, where it shouldn't; that is, these provides are useless, not in the system lib path, and will never be used for proper perl dependency resolution.  e.g. perl-YAML-Syck.i386 provides Syck.so(), mod_perl provides a slew of them, etc.

We're working on bundling a set of new macros with the perl package; these macros will allow us to sensibly filter useless provides out.

http://fedorapeople.org/~cweyl/macros.perl

Please update the perl spec template to conditionally invoke the default perl filtering macro, by inserting "%{?perl_default_filter} before %description.

Thanks!

Comment 1 Jeff Johnson 2009-05-24 22:01:36 UTC
Note that PLD has a general filtering mechanism for _ALL_ dependencies,
not just perl.

Library provides from loadable ELF binaries can be dealt with by doing chmod -x
when packaging.

Comment 2 Jeff Johnson 2009-05-24 22:05:35 UTC
re the macros.patch: Ick:

%global _use_internal_dependency_generator 0 \

You really ought to override just the perl, not all, dependencies for filtering.
It really isn't _THAT_ hard to override

    %__perl_requires

instead.

Comment 3 Ville Skyttä 2009-08-06 19:21:38 UTC
Just a note, I haven't ignored this report but am waiting to see what happens to http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering and whether it has any effect on this.

Comment 4 Jeff Johnson 2009-08-06 19:28:12 UTC
Would you like to wager whether dependency filtering is
available for packaging use by, say, Fedorable 14?

I will give you odds ...

Comment 5 Chris Weyl 2009-08-06 20:36:30 UTC
(In reply to comment #3)
> Just a note, I haven't ignored this report but am waiting to see what happens
> to
> http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering
> and whether it has any effect on this.  

Excellent.  It looks like that draft made it through FPC and FESCo, though I'm not entirely sure what the next step is after that: wait and see what happens, nudge someone to do something, or just go do it myself.  (If I get 10 min to spare this afternoon, I'll open a bug against redhat-rpm-config to ask them to add it.)

The FPC split off %perl_default_filter as being, well, "Perl specific", so I have bug 502402 open to deliver it via /etc/rpm/macros.perl.

Comment 6 Jeff Johnson 2009-08-06 21:47:32 UTC
From
    http://fedorapeople.org/~cweyl/macros.filtering
you still have
     %global _use_internal_dependency_generator 0 \

Disabling the internal dependency generator breaks multilib
for any per-arch package that uses your filtering.

Have fun!

Comment 7 Jason Tibbitts 2009-08-06 22:14:01 UTC
The guidelines that FPC passed explicitly address that (by limiting application of the filters to packages where that's not an issue).

Comment 8 Chris Weyl 2009-08-08 16:08:38 UTC
Alright, bug 516240 is open against redhat-rpm-config to implement the filtering system as approved by FPC/FESCo.

Comment 9 Ville Skyttä 2009-09-04 17:23:52 UTC
Added upstream, please confirm it was done as intended:
https://fedorahosted.org/rpmdevtools/changeset/6864c01

Please also remember to submit this stuff as an update to http://fedoraproject.org/wiki/Packaging:Perl#Filtering_Requires:_and_Provides

Comment 10 Chris Weyl 2009-09-04 19:12:48 UTC
The update looks good to me; right place, right macro, right conditionalization.

Thanks :)

Comment 11 Fedora Update System 2009-09-17 21:45:21 UTC
rpmdevtools-7.5-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/rpmdevtools-7.5-1.fc11?_csrf_token=018644e6f79eac4e110aeac47d19804d64593771

Comment 12 Fedora Update System 2009-09-19 00:16:17 UTC
rpmdevtools-7.5-1.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update rpmdevtools'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-9779

Comment 13 Fedora Update System 2009-10-06 09:57:37 UTC
rpmdevtools-7.5-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.