Bug 167797 - perl-DBD-Pg package doesn't Provide: perl(DBD::Pg)
Summary: perl-DBD-Pg package doesn't Provide: perl(DBD::Pg)
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: perl-DBD-Pg
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Warren Togami
QA Contact:
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-09-08 10:31 UTC by Paul Howarth
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

(edit)
Clone Of:
(edit)
Last Closed: 2005-11-10 16:20:24 UTC


Attachments (Terms of Use)
Patch to reformat Pg.pm so that perl.prov can interpret it properly (211 bytes, patch)
2005-09-08 11:10 UTC, Paul Howarth
no flags Details | Diff

Description Paul Howarth 2005-09-08 10:31:42 UTC
Description of problem:
The update to 1.43 appears to have introduced an issue where rpm does not
autogenerate the perl(DBD::Pg) virtual. So modules requiring this have to depend
on perl-DBD-Pg rather than perl(DBD::Pg) (e.g. bugzilla #166191). The FC3 and
FC4 packages do provide perl(DBD::Pg).


Version-Release number of selected component (if applicable):
perl-DBD-Pg-1.43-1


How reproducible:
Easy

Steps to Reproduce:
rpm -q --provides perl-DBD-Pg
  
Actual results:
Pg.so
perl-DBD-Pg = 1.43-1

Expected results:
Pg.so
perl(DBD::Pg) = 1.43
perl-DBD-Pg = 1.43-1


Additional info:
Easy fix would just be to add the Provides: perl(DBD::Pg) = %{version} manually
in the spec file.

Comment 1 Warren Togami 2005-09-08 10:40:07 UTC
Well, the bigger question is figuring out *why* it no longer auto-provides.


Comment 2 Paul Howarth 2005-09-08 11:10:17 UTC
Created attachment 118587 [details]
Patch to reformat Pg.pm so that perl.prov can interpret it properly

(In reply to comment #1)
> Well, the bigger question is figuring out *why* it no longer auto-provides.

Good point. Patch fixes the formatting of Pg.pm so that auto-provides works
again. Ideal fix would be for perl.prov to be able to parse the code as-is.

Comment 3 Warren Togami 2005-09-08 11:29:06 UTC
Thanks.  Could you please submit this upstream too to make future maintenance
easier?

While I agree it would be ideal to fix perl.prov, that isn't a solution for
older distros unfortunately. =(

Comment 4 Paul Howarth 2005-09-08 12:17:00 UTC
Reported upstream:

http://rt.cpan.org/NoAuth/Bug.html?id=14509


Comment 5 Ville Skyttä 2005-09-08 14:47:54 UTC
One theoretical point worth noting: 
 
Even though providing perl(DBD::Pg) in this package is correct, one could 
argue that packages in general should not have manually added dependencies on 
perl(DBD::*) in their specfiles. 
 
In the vast majority of use cases, the DBD::* drivers are not explicitly 
loaded in Perl code, but DBI loads the appropriate driver based on the data 
source given in connect().  Therefore, manually adding dependencies on 
perl(DBD::*) is kind of hardcoding assumptions about DBI's internals into 
specfiles, and in that sense, using the corresponding perl-DBD-* package names 
in dependencies wouldn't be that bad an alternative. 

Comment 7 Florian La Roche 2005-11-03 16:04:52 UTC
I've added a Provides: for this, should show up tomorrow in the
FC-development release.

regards,

Florian La Roche


Comment 8 Warren Togami 2005-11-03 16:13:52 UTC
Ville, to clarify should we add the patch or a virtual provides?


Comment 9 Ville Skyttä 2005-11-03 17:02:56 UTC
As long as the package provides correct things, IMO the implementation is a 
matter of maintainer preference.  I would have personally opted for the 
Provides too.  (BTW, I don't see the change from comment 7 in CVS yet. ) 

Comment 10 Paul Howarth 2005-11-17 08:16:11 UTC
Upstream reports that this is now fixed in CVS and "will appear correctly
formatted in 1.44", so the manual Provides: should be removable when that
version is released.

http://rt.cpan.org/NoAuth/Bug.html?id=14509



Note You need to log in before you can comment on or make changes to this bug.