Re: rawhide report: 20110219 changes - requires perl(Gtk2::
Le 19/02/2011 20:25, Rawhide Report a écrit : > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button) > gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport) I don't understand why this requires are detected in f15/rawhide (wasn't in f14) ? Should I filter them ? Shouldn't perl-Gtk2 provides them ? Any tips / idea ? -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/19/2011 09:10 PM, Remi Collet wrote: > Le 19/02/2011 20:25, Rawhide Report a écrit : > >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button) >> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport) > > I don't understand why this requires are detected in f15/rawhide (wasn't > in f14) ? > > Should I filter them ? > Shouldn't perl-Gtk2 provides them ? > > > Any tips / idea ? The huge number of perl requires is result of recent update to rpm-4.9. In rpm were fixed some bugs and our filtering macro doesn't work well now [1]. [1] https://bugzilla.redhat.com/show_bug.cgi?id=674765 Marcela -- Marcela Mašláňová BaseOS team Brno -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 11:23 AM, Marcela Mašláňová wrote: > On 02/19/2011 09:10 PM, Remi Collet wrote: >> Le 19/02/2011 20:25, Rawhide Report a écrit : >> >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button) >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport) >> >> I don't understand why this requires are detected in f15/rawhide (wasn't >> in f14) ? >> >> Should I filter them ? >> Shouldn't perl-Gtk2 provides them ? >> >> >> Any tips / idea ? > The huge number of perl requires is result of recent update to rpm-4.9. > In rpm were fixed some bugs and our filtering macro doesn't work well > now [1]. > > [1] https://bugzilla.redhat.com/show_bug.cgi?id=674765 The filtering macros work just like they always did, the issue of config(foo) dependencies when using external dependency generator (which the current Fedora-specific filter macros rely on) in bug 674765 is not new to 4.9.x. So 674765 is not really related here... A more likely candidate for new dependencies appearing is that rpm now collects dependencies from perl's "use base qw" syntax, which older versions did not. - Panu - -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
Le 21/02/2011 10:36, Panu Matilainen a écrit : > A more likely candidate for new dependencies appearing is that rpm now > collects dependencies from perl's "use base qw" syntax, which older > versions did not. So ? Should we fill a bug against perl-Gtk2 to Provides all usable class provided by Gtk2.so and not detected by RPM ? (a very long list which could probably be generated from *.pod or or man3/*) For now I have add a huge filter, which is really a poor workaround %filter_from_requires /perl(Gtk2::B/d %filter_from_requires /perl(Gtk2::C/d %filter_from_requires /perl(Gtk2::D/d %filter_from_requires /perl(Gtk2::E/d %filter_from_requires /perl(Gtk2::F/d %filter_from_requires /perl(Gtk2::H/d %filter_from_requires /perl(Gtk2::L/d %filter_from_requires /perl(Gtk2::Notebook)/d %filter_from_requires /perl(Gtk2::O/d %filter_from_requires /perl(Gtk2::ProgressBar)/d %filter_from_requires /perl(Gtk2::S/d %filter_from_requires /perl(Gtk2::ToggleButton)/d %filter_from_requires /perl(Gtk2::V/d %filter_from_requires /perl(Gtk2::W/d Remi. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On Mon, 21 Feb 2011 10:36:05 +0100, Panu Matilainen wrote: > A more likely candidate for new dependencies appearing is that rpm now > collects dependencies from perl's "use base qw" syntax, which older > versions did not. filed now as: https://bugzilla.redhat.com/show_bug.cgi?id=679014 /usr/bin/cvs2cl: package CVS::Utils::ChangeLog::EntrySet::Output::Text; use base qw( CVS::Utils::ChangeLog::EntrySet::Output ); package CVS::Utils::ChangeLog::EntrySet::Output; rpm (or which one) generates: rpm -q --requires cvs2cl perl(CVS::Utils::ChangeLog::EntrySet::Output) - this is incorrect BTW (this is correct): rpm -q --provides cvs2cl Regards, Jan -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 10:36 AM, Panu Matilainen wrote: > On 02/21/2011 11:23 AM, Marcela Mašláňová wrote: >> On 02/19/2011 09:10 PM, Remi Collet wrote: >>> Le 19/02/2011 20:25, Rawhide Report a écrit : >>> gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport) >>> >>> I don't understand why this requires are detected in f15/rawhide (wasn't >>> in f14) ? >>> >>> Should I filter them ? >>> Shouldn't perl-Gtk2 provides them ? >>> >>> >>> Any tips / idea ? >> The huge number of perl requires is result of recent update to rpm-4.9. >> In rpm were fixed some bugs and our filtering macro doesn't work well >> now [1]. >> >> [1] https://bugzilla.redhat.com/show_bug.cgi?id=674765 > > The filtering macros work just like they always did, the issue of > config(foo) dependencies when using external dependency generator (which > the current Fedora-specific filter macros rely on) in bug 674765 is not > new to 4.9.x. So 674765 is not really related here... > > A more likely candidate for new dependencies appearing is that rpm now > collects dependencies from perl's "use base qw" syntax, which older > versions did not. That's only one half of the issue. In case of the perl(Gtk2::*), rpm now collects "use base ..." requires, but misses to collect and provide the XS-symbols they are implicitly provided through. I.e. in a perfect world, rpm's deptracking needs to be extended to collect XS-symbols, A quick hack applicable to the perl-Gtk2-* packages would be to run some "nm -sD --undefined ..." based script to generate a list of these Provides: Rough uncooked example: nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \ | grep -E 'XS_Gtk2.*_new$' \ | sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),' Ralf -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 11:47 AM, Remi Collet wrote: > Le 21/02/2011 10:36, Panu Matilainen a écrit : >> A more likely candidate for new dependencies appearing is that rpm now >> collects dependencies from perl's "use base qw" syntax, which older >> versions did not. > > So ? Should we fill a bug against perl-Gtk2 to Provides all usable class > provided by Gtk2.so and not detected by RPM ? (a very long list which > could probably be generated from *.pod or or man3/*) Well, I dont know. Short term, if the use-base requires are causing more trouble than good, there's always the option of just reverting the patch. Longer term (something to investigate for F16 I suppose), language and other application specific dependency generation needs to move out of rpm into the hands of those who know their language, now that it's finally possible. The current situation is nothing short of ridiculous: I've close to zero chance at fixing bugs in scripts that are written in perl, about perl, which is a language I have absolutely no clue about. Heck, I don't even know what "use base" means, other than it apparently relates to using modules in one way or the other. - Panu - -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 11:39 AM, Panu Matilainen wrote: > On 02/21/2011 11:47 AM, Remi Collet wrote: >> Le 21/02/2011 10:36, Panu Matilainen a écrit : >>> A more likely candidate for new dependencies appearing is that rpm now >>> collects dependencies from perl's "use base qw" syntax, which older >>> versions did not. >> >> So ? Should we fill a bug against perl-Gtk2 to Provides all usable class >> provided by Gtk2.so and not detected by RPM ? (a very long list which >> could probably be generated from *.pod or or man3/*) > > Well, I dont know. Short term, if the use-base requires are causing more > trouble than good, I disagree - These are a significant improvement ... > there's always the option of just reverting the patch. ... except that the time they were introduced into Fedora was poorly chosen. Now it's too late too revert this change, because it would cause further troubles. In short: The current problems are a temporary churn which could easily be fixed (most of them already are fixed!) if QA would finally stop taking Fedora 15's packages hostage. Ralf -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 12:28 PM, Ralf Corsepius wrote: On 02/21/2011 10:36 AM, Panu Matilainen wrote: On 02/21/2011 11:23 AM, Marcela Mašláňová wrote: On 02/19/2011 09:10 PM, Remi Collet wrote: Le 19/02/2011 20:25, Rawhide Report a écrit : gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button) gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport) I don't understand why this requires are detected in f15/rawhide (wasn't in f14) ? Should I filter them ? Shouldn't perl-Gtk2 provides them ? Any tips / idea ? The huge number of perl requires is result of recent update to rpm-4.9. In rpm were fixed some bugs and our filtering macro doesn't work well now [1]. [1] https://bugzilla.redhat.com/show_bug.cgi?id=674765 The filtering macros work just like they always did, the issue of config(foo) dependencies when using external dependency generator (which the current Fedora-specific filter macros rely on) in bug 674765 is not new to 4.9.x. So 674765 is not really related here... A more likely candidate for new dependencies appearing is that rpm now collects dependencies from perl's "use base qw" syntax, which older versions did not. That's only one half of the issue. In case of the perl(Gtk2::*), rpm now collects "use base ..." requires, but misses to collect and provide the XS-symbols they are implicitly provided through. I.e. in a perfect world, rpm's deptracking needs to be extended to collect XS-symbols, A quick hack applicable to the perl-Gtk2-* packages would be to run some "nm -sD --undefined ..." based script to generate a list of these Provides: Rough uncooked example: nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \ | grep -E 'XS_Gtk2.*_new$' \ | sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),' Right, if it's possible to generalize that to work with other XS modules it's easy to add a separate rule for them. Meanwhile it's possible to override __elf_provides to a script which does the above (see attached patch perl-Gtk2 spec), BUT that only works when the internal dependency generator is used, and the fedora filtering macros disable it. So it's pretty much caught in the middle :-/ - Panu - diff --git a/perl-Gtk2.spec b/perl-Gtk2.spec index 61f1e86..544f2be 100644 --- a/perl-Gtk2.spec +++ b/perl-Gtk2.spec @@ -13,6 +13,7 @@ Group: Development/Libraries License:LGPLv2+ URL:http://search.cpan.org/dist/Gtk2/ Source0:http://www.cpan.org/authors/id/T/TS/TSCH/Gtk2-%{version}.tar.gz +Source100: xs-provides.sh BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: perl >= 2:5.8.0 @@ -26,7 +27,7 @@ Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $versi Requires: perl(Glib) >= 1.200 Requires: perl(Cairo) >= 1.00 -%{?perl_default_filter} +%define __elf_provides %{SOURCE100} %description This module allows you to write Gtk+ graphical user interfaces in a diff --git a/xs-provides.sh b/xs-provides.sh new file mode 100755 index 000..78070fa --- /dev/null +++ b/xs-provides.sh @@ -0,0 +1,5 @@ +#!/bin/sh +while read f; do +nm -sD "${f}" | grep -E 'XS_Gtk2.*_new$' \ +| sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),' +done -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 12:58 PM, Ralf Corsepius wrote: > On 02/21/2011 11:39 AM, Panu Matilainen wrote: >> On 02/21/2011 11:47 AM, Remi Collet wrote: >>> Le 21/02/2011 10:36, Panu Matilainen a écrit : A more likely candidate for new dependencies appearing is that rpm now collects dependencies from perl's "use base qw" syntax, which older versions did not. >>> >>> So ? Should we fill a bug against perl-Gtk2 to Provides all usable class >>> provided by Gtk2.so and not detected by RPM ? (a very long list which >>> could probably be generated from *.pod or or man3/*) >> >> Well, I dont know. Short term, if the use-base requires are causing more >> trouble than good, > I disagree - These are a significant improvement ... Like I said, I don't know. If it's a significant improvement, good :) >> there's always the option of just reverting the patch. > ... except that the time they were introduced into Fedora was poorly > chosen. > > Now it's too late too revert this change, because it would cause further > troubles. > > In short: The current problems are a temporary churn which could easily > be fixed (most of them already are fixed!) if QA would finally stop > taking Fedora 15's packages hostage. Nod, branching right after a mass-rebuild with such a huge number of broken dependencies in the package set (many of which existed before, many more brought in by the mass-rebuild) is causing unnecessary pain. I've been trying to watch over any regressions from the new dependency generator bits, but with half the world broken it's pretty hopeless to spot any individual issues. Rawhide's been certainly living up to its name recently... - Panu - -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On Mon, Feb 21, 2011 at 11:28 AM, Ralf Corsepius wrote: [snip] > > In case of the perl(Gtk2::*), rpm now collects "use base ..." requires, > but misses to collect and provide the XS-symbols they are implicitly > provided through. > > I.e. in a perfect world, rpm's deptracking needs to be extended to > collect XS-symbols, > > A quick hack applicable to the perl-Gtk2-* packages would be to run > some "nm -sD --undefined ..." based script to generate a list of these > Provides: > > Rough uncooked example: > > nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \ > | grep -E 'XS_Gtk2.*_new$' \ > | sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),' grep /and/ sed? What about simply: nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \ | sed -ne '/XS_Gtk2.*_new$/{s,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),;p}' Or a perlier way would be to grab the info from perl's symbol table: perl -MDevel::Symdump -MGtk2 -E 'say "perl($_)" for sort Devel::Symdump->rnew("Gtk2")->packages' -- Iain. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 02:47 PM, Iain Arnell wrote: > On Mon, Feb 21, 2011 at 11:28 AM, Ralf Corsepius wrote: > [snip] >> >> In case of the perl(Gtk2::*), rpm now collects "use base ..." requires, >> but misses to collect and provide the XS-symbols they are implicitly >> provided through. >> >> I.e. in a perfect world, rpm's deptracking needs to be extended to >> collect XS-symbols, >> >> A quick hack applicable to the perl-Gtk2-* packages would be to run >> some "nm -sD --undefined ..." based script to generate a list of these >> Provides: >> >> Rough uncooked example: >> >> nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \ >> | grep -E 'XS_Gtk2.*_new$' \ >> | sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),' > > grep /and/ sed? Please note, I said "uncooked" - It wasn't meant to be more than just a "demo of concept". On a second thought - May-be it would be more suitable for perl to parse the *.pods, such XS-modules normally are accompanied with? I am not sure. Ralf -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On Mon, 21 Feb 2011 15:22:48 +0100, Ralf Corsepius wrote: > On a second thought - May-be it would be more suitable for perl to parse > the *.pods, such XS-modules normally are accompanied with? As discussed in [Bug 679014] rpmbuild: Perl excessive auto-Requires https://bugzilla.redhat.com/show_bug.cgi?id=679014 there is no need for autodetection. CPAN packages already provide their "requires" list: Gtk2-GladeXML-1.007/META.yml: requires: ExtUtils::Depends: 0.300 ExtUtils::PkgConfig: 1.000 Glib: 1.020 Gtk2: 1.000 which is IIRC generated from Makefile.PL, where one can also find the "provides" list using ExtUtils::MakeMaker. This should be resolved by perl maintainers. Regards, Jan -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On Mon, Feb 21, 2011 at 06:45:03PM +0100, Jan Kratochvil wrote: > On Mon, 21 Feb 2011 15:22:48 +0100, Ralf Corsepius wrote: > > On a second thought - May-be it would be more suitable for perl to parse > > the *.pods, such XS-modules normally are accompanied with? > > As discussed in > [Bug 679014] rpmbuild: Perl excessive auto-Requires > https://bugzilla.redhat.com/show_bug.cgi?id=679014 > > there is no need for autodetection. CPAN packages already provide their > "requires" list: > Gtk2-GladeXML-1.007/META.yml: > requires: > ExtUtils::Depends: 0.300 > ExtUtils::PkgConfig: 1.000 > Glib: 1.020 > Gtk2: 1.000 > > which is IIRC generated from Makefile.PL, where one can also find the > "provides" list using ExtUtils::MakeMaker. This should be resolved by perl > maintainers. This assume the upstream maintainers fill out the META.yml accurately which is often not the case :( One of the tests in Module::CPANTS::Analyse is to run the package through Module::ExtractUse and report all the things that the maintainer forgot. Unfortunately the CPANTS website is offline right now so I can't point to the stats showing how many Perl package fail this test. I've in fact got an open RFE against cpanspec[1] for it to use Module::ExtractUse to fill in the BuildRequires properly because its current scanning of Makefile.PL / META.yml is insufficient in many cases. Regards, Daniel [1] https://bugzilla.redhat.com/show_bug.cgi?id=461350 -- |: http://berrange.com -o-http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 11:36 AM, Panu Matilainen wrote: > A more likely candidate for new dependencies appearing is that rpm now > collects dependencies from perl's "use base qw" syntax, which older > versions did not. Another one which will result in more dependencies than before is a here-doc related fix; previously there were more cases where the dep extractor got the start/end of a here-doc wrong, possibly resulting in it missing dependencies for the rest of that file and in some cases even the rest of all the remaining perl files in the build. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/21/2011 07:27 PM, Daniel P. Berrange wrote: > On Mon, Feb 21, 2011 at 06:45:03PM +0100, Jan Kratochvil wrote: >> On Mon, 21 Feb 2011 15:22:48 +0100, Ralf Corsepius wrote: >>> On a second thought - May-be it would be more suitable for perl to parse >>> the *.pods, such XS-modules normally are accompanied with? >> As discussed in >> [Bug 679014] rpmbuild: Perl excessive auto-Requires >> https://bugzilla.redhat.com/show_bug.cgi?id=679014 >> >> there is no need for autodetection. CPAN packages already provide their >> "requires" list: >> Gtk2-GladeXML-1.007/META.yml: >> requires: >> ExtUtils::Depends: 0.300 >> ExtUtils::PkgConfig: 1.000 >> Glib: 1.020 >> Gtk2: 1.000 >> >> which is IIRC generated from Makefile.PL, where one can also find the >> "provides" list using ExtUtils::MakeMaker. This should be resolved by perl >> maintainers. I guess, you didn't realize that the people involved in this thread are the perl maintainers. It's probably only thanks to the fact that the OP who raised this thread isn't subscribed to Fedora's perl-list, we raised this thread here and due to the effects of Fedora's QA's package blockage (otherwise his issues would have likely already been shipped), he rose this question, here. > This assume the upstream maintainers fill out the META.yml accurately > which is often not the case Exactly. Also consider there are many perl-packages (esp. those out of CPAN) for which the META.yml-machinery is not available. On a more abstract level one may consider perl's META.yml-machinery to be a package dependency tracking machinery of its own, in parallel to rpm's dependency tracking machinery, with the essentially the same issues, problems and imperfections as rpm/rpm.specs itself. Ralf -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On Tue, 22 Feb 2011 06:57:20 +0100, Ralf Corsepius wrote: > On a more abstract level one may consider perl's META.yml-machinery to > be a package dependency tracking machinery of its own, in parallel to > rpm's dependency tracking machinery, with the essentially the same > issues, problems and imperfections as rpm/rpm.specs itself. In such case aren't such missing dependencies a normal upstream bug which should be fixed first as a Fedora patch (of META.yml) and pushed upstream, as usual? Thanks, Jan -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel
Re: rawhide report: 20110219 changes - requires perl(Gtk2::
On 02/22/2011 10:45 AM, Jan Kratochvil wrote: > On Tue, 22 Feb 2011 06:57:20 +0100, Ralf Corsepius wrote: >> On a more abstract level one may consider perl's META.yml-machinery to >> be a package dependency tracking machinery of its own, in parallel to >> rpm's dependency tracking machinery, with the essentially the same >> issues, problems and imperfections as rpm/rpm.specs itself. > > In such case aren't such missing dependencies a normal upstream bug which > should be fixed first as a Fedora patch (of META.yml) and pushed upstream, > as usual? > > > Thanks, > Jan Great idea, you can start with your package... Seriously, it's hundred of packages, you can hardly fix all of them and you can't be sure that there won't be any missing requires during updates. It would be nice if we have possibility to check it automatically. Rpm changed few things and it's now finding more requires. That's a start ;-) But it shouldn't happened few days before freeze. Regards, Marcela -- Marcela Mašláňová BaseOS team Brno -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel