Bug 684407

Summary: Review Request: perl-Monotone-AutomateStdio - Perl interface to Monotone via automate stdio
Product: [Fedora] Fedora Reporter: Thomas Moschny <thomas.moschny>
Component: Package ReviewAssignee: Marcela Mašláňová <mmaslano>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting
Target Milestone: ---Flags: mmaslano: fedora-review+
j: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: perl-Monotone-AutomateStdio-0.12-1.fc13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-04-05 21:31:22 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 684433    

Description Thomas Moschny 2011-03-12 11:08:32 UTC
Spec URL: http://thm.fedorapeople.org/perl-Monotone-AutomateStdio/perl-Monotone-AutomateStdio.spec
SRPM URL: http://thm.fedorapeople.org/perl-Monotone-AutomateStdio/perl-Monotone-AutomateStdio-0.12-1.fc16.src.rpm

Description:
The Monotone::AutomateStdio class gives a Perl developer access to
Monotone's automate stdio facility via an easy to use interface. All
command, option and output formats are handled internally by this
class. Any structured information returned by Monotone is parsed and
returned back to the caller as lists of records for ease of access
(detailed below). One also has the option of accessing Monotone's
output as one large string should you prefer.

Comment 1 Marcela Mašláňová 2011-03-31 12:23:22 UTC
- rpmlint OK
- package must be named according to Guidelines OK
- spec file name must match the base package %{name} OK
- package must meet the Packaging Guidelines OK
- package must be licensed with Fedora approved license OK
- license field must match actual license OK
- text of the license in its own file must be included in %doc OK
- sources must match the upstream source OK
 3f0984cb465867071042c156c2f5c316
- package MUST successfully compile and build OK
 http://koji.fedoraproject.org/koji/taskinfo?taskID=2963286
- architecture listed in ExcludeArch MUST have a bug filed in bugzilla OK
- build dependencies must be listed in BuildRequires OK
- handle locales properly with %find_lang macro OK
- shared library files must call ldconfig in %post(un) OK
- packages must NOT bundle system libraries OK
- package must own all directories that it creates OK
- permissions on files must be set properly OK
- package must consistently use macros OK
- package must contain code, or permissable content OK
- large documentation must go in a -doc OK
- %doc must not affect the runtime of the application OK
- header files must be in a -devel package OK
- static libraries must be in a -static package OK
- library files that end in .so (without suffix) must go in a -devel OK
- devel package usually require base package OK
- packages must NOT contain any .la libtool archives OK
- GUI applications must include a %{name}.desktop file OK
- packages must not own files or directories already owned by other packages OK

rpm -qp --provides ~/Downloads/perl-Monotone-AutomateStdio-0.12-1.fc16.noarch.rpm 
perl(Monotone::AutomateStdio) = 0.12
perl-Monotone-AutomateStdio = 0.12-1.fc16

rpm -qp -requires ~/Downloads/perl-Monotone-AutomateStdio-0.12-1.fc16.noarch.rpm  | sort
perl >= 0:5.008005
perl(base)  
perl(Carp)  
perl(constant)  
perl(Cwd)  
perl(Encode)  
perl(Exporter)  
perl(File::Basename)  
perl(File::Spec)  
perl(IO::File)  
perl(IO::Handle)  
perl(IO::Poll)  
perl(IPC::Open3)  
perl(:MODULE_COMPAT_5.12.3)  
perl(POSIX)  
perl(Socket)  
perl(strict)  
perl(Symbol)  
perl(warnings)  
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

I have few comments on packaging. Shouldn't be mtn-tester also installed or run as test?
Also upstream created strange pod file. Usually are pods created from pm files, but that's not blocker.
NOT APPROVED

Comment 2 Thomas Moschny 2011-03-31 13:01:18 UTC
(In reply to comment #1)
> I have few comments on packaging.
> Shouldn't be mtn-tester also installed or run as test?

From the README:

 "Please note that automated testing of this library module is still `work in
  progress'. There is a test harness called mtn-tester that can be used to test
  most important features of this library. However, it does require not only the
  installation of Monotone, as you would expect, but also a test database with
  certain revisions and files in it. At the moment this is done by using a
  dedicated branch in the main Monotone database found at monotone.ca. The test
  branch is called net.venge.monotone.contrib.lib.automate-stdio.test.

  In time I hope to write a Monotone emulator that generates the required output
  to test the library, or perhaps just have a smaller database generated on the
  fly."

So I'd say mtn-tester should neither be run nor installed.

In theory, I could create a Monotone database with that branch in it and include it in the package, and generate a temporary key on the fly, but that's a lot of effort for little gain.

> Also upstream created strange pod file. Usually are pods created from pm files,

In what way is it "strange"?

What do you suggest? I could talk to upstream and ask him to include the docs in the .pm and generate the .pod from that.

> but that's not blocker.
> NOT APPROVED

So, what is the blocker then?

Comment 3 Marcela Mašláňová 2011-03-31 13:21:12 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > I have few comments on packaging.
> > Shouldn't be mtn-tester also installed or run as test?
> 
> From the README:
> 
>  "Please note that automated testing of this library module is still `work in
>   progress'. There is a test harness called mtn-tester that can be used to test
>   most important features of this library. However, it does require not only
> the
>   installation of Monotone, as you would expect, but also a test database with
>   certain revisions and files in it. At the moment this is done by using a
>   dedicated branch in the main Monotone database found at monotone.ca. The test
>   branch is called net.venge.monotone.contrib.lib.automate-stdio.test.
> 
>   In time I hope to write a Monotone emulator that generates the required
> output
>   to test the library, or perhaps just have a smaller database generated on the
>   fly."
> 
> So I'd say mtn-tester should neither be run nor installed.
> 
> In theory, I could create a Monotone database with that branch in it and
> include it in the package, and generate a temporary key on the fly, but that's
> a lot of effort for little gain.
>
I agree, hopefully tests will be better in future.
 
> > Also upstream created strange pod file. Usually are pods created from pm files,
> 
> In what way is it "strange"?
> 
> What do you suggest? I could talk to upstream and ask him to include the docs
> in the .pm and generate the .pod from that.
That would be nice.
 
> > but that's not blocker.
> > NOT APPROVED
> 
> So, what is the blocker then?

APPROVED

Comment 4 Thomas Moschny 2011-03-31 21:50:39 UTC
Many thanks for this review!

New Package SCM Request
=======================
Package Name: perl-Monotone-AutomateStdio
Short Description: Perl interface to Monotone via automate stdio
Owners: thm
Branches: f13 f14 f15

Comment 5 Jason Tibbitts 2011-03-31 23:04:10 UTC
Git done (by process-git-requests).

Comment 6 Fedora Update System 2011-04-01 10:57:36 UTC
perl-Monotone-AutomateStdio-0.12-1.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/perl-Monotone-AutomateStdio-0.12-1.fc14

Comment 7 Fedora Update System 2011-04-01 10:57:43 UTC
perl-Monotone-AutomateStdio-0.12-1.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/perl-Monotone-AutomateStdio-0.12-1.fc13

Comment 8 Fedora Update System 2011-04-01 10:57:51 UTC
perl-Monotone-AutomateStdio-0.12-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/perl-Monotone-AutomateStdio-0.12-1.fc15

Comment 9 Fedora Update System 2011-04-01 18:21:12 UTC
perl-Monotone-AutomateStdio-0.12-1.fc14 has been pushed to the Fedora 14 testing repository.

Comment 10 Fedora Update System 2011-04-05 21:31:17 UTC
perl-Monotone-AutomateStdio-0.12-1.fc15 has been pushed to the Fedora 15 stable repository.

Comment 11 Fedora Update System 2011-04-09 21:17:42 UTC
perl-Monotone-AutomateStdio-0.12-1.fc14 has been pushed to the Fedora 14 stable repository.

Comment 12 Fedora Update System 2011-04-09 21:18:41 UTC
perl-Monotone-AutomateStdio-0.12-1.fc13 has been pushed to the Fedora 13 stable repository.