Bug 454102 - Review Request: perl-Catalyst-Model-XMLRPC - XMLRPC model class for Catalyst
Review Request: perl-Catalyst-Model-XMLRPC - XMLRPC model class for Catalyst
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Miroslav Suchý
Fedora Extras Quality Assurance
http://search.cpan.org/dist/Catalyst-...
:
Depends On: 435835 perl-RPC-XML
Blocks:
  Show dependency treegraph
 
Reported: 2008-07-04 12:40 EDT by Chris Weyl
Modified: 2008-10-23 10:52 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-10-23 10:52:33 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
msuchy: fedora‑review+
huzaifas: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Chris Weyl 2008-07-04 12:40:36 EDT
SRPM URL: http://fedora.biggerontheinside.net/review/perl-Catalyst-Model-XMLRPC-0.04-1.fc9.src.rpm
SPEC URL: http://fedora.biggerontheinside.net/review/perl-Catalyst-Model-XMLRPC.spec

Description:
This model class uses RPC::XML::Client to invoke remote procedure calls
using XML-RPC.
Comment 1 Marcela Mašláňová 2008-07-25 05:58:04 EDT
Here is also problem with bz#455151.

rpmlint srpm:
perl-Catalyst-Model-XMLRPC.src:39: W: rpm-buildroot-usage %prep FOO=`perl -p -e
's|%{buildroot}%{_docdir}/%{name}-%{version}\S+||'`
Comment 2 Jason Tibbitts 2008-08-21 15:25:16 EDT
Since the perl-RPC-XML review ticket has been closed after ages of no response, perhaps you'd like to submit it so that this review can move forward.
Comment 3 Chris Weyl 2008-08-21 21:46:49 EDT
I have one I've been using; I'll post it for review once the infrastructure comes back online.
Comment 4 Jason Tibbitts 2008-08-21 21:53:30 EDT
There's no need to wait for my sake; I can review packages fine with the parts of the infrastructure that are currently running.
Comment 5 Chris Weyl 2008-08-24 16:25:56 EDT
Submitted bug 459933 for RPC::XML review; updating as blocking this bug.
Comment 6 Miroslav Suchý 2008-09-10 10:05:38 EDT
Review:
+ package builds in mock (rawhide i386).
koji Build => http://koji.fedoraproject.org/koji/taskinfo?taskID=817494
+ rpmlint is silent for SRPM and for RPM.
FAIL [1]
+ source files match upstream url
62db4b24d66a56b4f22187452e8ab9a6  Catalyst-Model-XMLRPC-0.04.tar.gz
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
FAIL [2]
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ build root is correct.
+ license is open source-compatible.
+ License text is included in package.
+ %doc is present.
+ BuildRequires are proper.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no headers or static libraries.
+ no .pc file present.
+ no -devel subpackage
+ no .la files.
+ no translations are available
+ Does owns the directories it creates.
+ no scriptlets present.
+ no duplicates in %files.
+ file permissions are appropriate.
+ make test gave
All tests successful!
+ Package perl-Filesys-Df-0.92-2.fc10 =>
Provides: perl(Catalyst::Helper::Model::XMLRPC)
perl(Catalyst::Model::XMLRPC) = 0.04
perl-Catalyst-Model-XMLRPC = 0.04-1.fc10
Requires: perl(:MODULE_COMPAT_5.10.0)
perl(Carp)
perl(Catalyst::Model)
perl(NEXT)
perl(RPC::XML)
perl(RPC::XML::Client)
perl(base)
perl(strict)
perl(warnings)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(VersionedDependencies) <= 3.0.3-1


[1] rpmlint  -i perl-Catalyst-Model-XMLRPC-0.04-1.fc9.src.rpm
perl-Catalyst-Model-XMLRPC.src:39: W: rpm-buildroot-usage %prep FOO=`perl -p -e 's|%{buildroot}%{_docdir}/%{name}-%{version}\S+||'`
$RPM_BUILD_ROOT should not be touched during %build or %prep stage, as it will
break short circuiting.

[2]
perl -pi -e \
    's|\$self->config\(\$config\)|\$self->config\(\$config\) if defined \$config|' \
    lib/Catalyst/Model/XMLRPC.pm
This is not propper way of patching source. Create patch and include load it using Patch1: pragma. I encourage you to send this patch to upstream as well.

Please fix this two issues and then the review can be finished.
Comment 8 Miroslav Suchý 2008-09-23 05:28:28 EDT
You point to wrong src.rpm (-1 release) so I tried to download 
http://fedora.biggerontheinside.net/review/perl-Catalyst-Model-XMLRPC-0.04-2.fc9.src.rpm
and it was there. So I'm using this in this comments.

The [2] is ok. You are now using Patch0:

But the [1] is still problem, you just mask the problem so rpmlint do not detect it. I do not understand why do you have this part there at all:
# note we first filter out the bits in _docdir...
cat << \EOF > %{name}-prov
#!/bin/sh
FOO=`perl -p -e 's|%{broot}%{_docdir}/%{name}-%{version}\S+||'`
%{__perl_provides} $FOO
EOF

%define __perl_provides %{_builddir}/Catalyst-Model-XMLRPC-%{version}/%{name}-prov
chmod +x %{__perl_provides}

If I delete this lines and this one from %files:
%doc Changes README t/
will replace with
%doc Changes README
I got the same output (with same provides).

You should not install content of t/ dir anyway.
Comment 9 Chris Weyl 2008-09-23 11:43:33 EDT
(In reply to comment #8)
> But the [1] is still problem, you just mask the problem so rpmlint do not
> detect it. I do not understand why do you have this part there at all:

[1] was a false positive by rpmlint.  %{buildroot} isn't being "used" in %prep so much as embedded into the provides filtering script...  This is not an error.  Swizzling the value into %{broot} simply keeps rpmlint from wearning about an error that isn't.

So long as rpm insists on doing provides/requires detection in %{_docdir}, it's going to be easier and more consistent to prevent the content of that directory from being scanned to begin with.

(As a side note, I didn't realize a RFE to remove %{_docdir} scannning from autoprov/req hadn't been filed...   filed now as bug 463461.)
Comment 10 Miroslav Suchý 2008-09-24 05:07:04 EDT
But why you include t/ in %doc in first place? There is no documentation in that test. And test alone should not be packed (however no policy define it - it is just common habit). 
And if you do not include t/ => you will not get the false provides => you must not do that magic with %{__perl_provides} => you will get rid of that warning propper way.
Comment 11 Chris Weyl 2008-10-02 01:32:02 EDT
I try to consistently include the tests in %doc for a number of reasons -- one, I don't know what someone else might find useful, two even if there's no explicit documentation example usage is never a bad things, and finally, even if the the test suite comprises one test (say a use test), then at least the person looking under %_docdir can see that.

RPM shouldn't be generating requires/provides on files under %_docdir, but it does, so until then the filtering magic is necessary. ...and I suspect it's commonplace enough that we can call it "science" now :)
Comment 12 Miroslav Suchý 2008-10-21 11:07:48 EDT
I consult this issue with my sponsor and he said that the it is ok.
APPROVED.
Comment 13 Chris Weyl 2008-10-21 12:14:57 EDT
New Package CVS Request
=======================
Package Name: perl-Catalyst-Model-XMLRPC
Short Description: XMLRPC model class for Catalyst
Owners: cweyl
Branches: F-8, F-9, devel
InitialCC: perl-sig
Comment 14 Huzaifa S. Sidhpurwala 2008-10-22 06:23:42 EDT
cvs done
Comment 15 Chris Weyl 2008-10-23 10:52:33 EDT
Imported and built in devel.  Thanks for the review! :)

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