Bug 148847
Summary: | Packing fault with perl and FCGI | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Rob Kearey <rkearey> | ||||||
Component: | perl | Assignee: | Chip Turner <cturner> | ||||||
Status: | CLOSED ERRATA | QA Contact: | David Lawrence <dkl> | ||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | 3 | CC: | cturner, jose.p.oliveira.oss, scop, wtogami | ||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | i386 | ||||||||
OS: | Linux | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | 5.8.5-12.FC3 | Doc Type: | Bug Fix | ||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2005-05-04 21:04:18 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: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 136452 | ||||||||
Attachments: |
|
Description
Rob Kearey
2005-02-16 07:16:49 UTC
Still occurs in latest FC3 update, perl-5.8.5-11.FC3 This appears to be the method used to avoid the FCGI requirement of CGI::Fast. This perl module uses FCGI. I believe the correct method to handle this problem would be to delete the following two lines from the perl specfile # XXX needed by perl-CGI Provides: perl(FCGI) and filter the FCGI requirement (we just need to add "grep -v 'perl(FCGI)'" to the file filter-depends.sh). Patches: perl.spec -------------------- --- perl.spec.orig 2005-03-17 18:07:17.000000000 +0000 +++ perl.spec 2005-04-13 19:53:57.000000000 +0100 @@ -124,9 +124,6 @@ # XXX needed by perl-libnet Provides: perl(Mac::Files) -# XXX needed by perl-CGI -Provides: perl(FCGI) - Provides: perl(abbrev.pl) Provides: perl(assert.pl) Provides: perl(bigfloat.pl) -------------------- filter-depends.sh -------------------- --- filter-depends.sh.orig 2004-09-09 11:07:13.000000000 +0100 +++ filter-depends.sh 2005-04-13 19:09:57.000000000 +0100 @@ -1,4 +1,4 @@ #!/bin/sh -/usr/lib/rpm/perl.req $* | grep -v NDBM | grep -v 'perl(v5.6.0)' | grep -v 'perl(Mac::' | grep -v 'perl(Tk' | grep -v 'perl(Tie::RangeHash)' +/usr/lib/rpm/perl.req $* | grep -v NDBM | grep -v 'perl(v5.6.0)' | grep -v 'perl(Mac::' | grep -v 'perl(Tk' | grep -v 'perl(Tie::RangeHash)' | grep -v 'perl(FCGI)' -------------------- Looks good to me. And the perl(Mac::Files) provision visible in the first hunk of Jose's patch seems to be a strong candidate for removal too. filter-depends.sh already matches it. Ville, do you consider this serious enough to issue a perl update for FC3? If so let us identify other things we can fix or backport in order to make this update more meaningful. the change should be okay. I would check the annotation from cvs on that line and see exactly why it was added; I imagine it was when perl-CGI was split out from the main rpm. I believe around RHL8 or 9 when RPM was given a much better dependency checker, a number of those provides were added so that perl itself could install. you can either add them as Provides or filter them out. given the annoyance of the filter scripts, I believe I used Provides for some of them, but if you want to change them over, it should be suitable; just do a diff on --requires and --provides before and after the change to make sure there are no surprises. (periodically I pester jeff to give dependency whiteout, but for four years now he has refused; this is the kind of junk you have to do because of that refusal) I don't think this warrants a FC3 perl update alone. But in case FC3 perl ever gets updated, it'd be nice to get this in, too. Agreed with Chip, dep filtering is sucky and one is easily tempted to use more or less fake Provides instead. Those tend to bitrot though, and may cause problems sooner or later. "Dependency whiteout"? yeah basically being able to say: UnRequire: perl-Busted-Package and having rpm remove the dependency, instead of having to filter with a script. Created attachment 113446 [details]
perl specfile: removes the FCGI and Mac::Files provides; removes perl-suidperl suffix
This patches removes the following:
- Provides(Mac::Files) - already being filtered
- Provides(FCGI) - needs to filtered (see next comment/patch)
- drops the '.1' suffix from perl-suidperl
Created attachment 113447 [details]
Filters the FCGI requirement
Warren, Could you apply the above pages? TIA, jpo Thanks, added to FC4. Keeping bug open in preparation for an eventual FC3 perl update after we find more stuff worth fixing. Problem still occurs in perl-5.8.5-12.FC3 [robk@custard ~]$ perl -e "use CGI::Fast;" Can't locate FCGI.pm in @INC (etc) That's expected, FCGI was not added to the perl package, but the package was fixed to reflect the actual state of affairs as suggested in the initial comment: the fake "Provides: perl(FCGI)" was removed. Even folding FCGI in the perl package wouldn't seemingly really suffice to make CGI::Fast useful. If I understand correctly, scripts using it beyond a simple load of the module need a FastCGI enabled web server, such as Apache with the mod_fastcgi module; and that module is not included in FC. Ah, that makes sense then. Sorry for the confusion, had my brain in backwards. Fixed in 5.8.5-12.FC3 and 5.8.6-6. |