Bug 672764 - Review Request: perl-JSON-PP - JSON::XS compatible pure-Perl module
Summary: Review Request: perl-JSON-PP - JSON::XS compatible pure-Perl module
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Iain Arnell
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 665621
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-01-26 09:50 UTC by Paul Howarth
Modified: 2011-02-14 10:19 UTC (History)
3 users (show)

Fixed In Version: perl-JSON-PP-2.27104-3.fc15
Clone Of:
Environment:
Last Closed: 2011-02-14 10:19:53 UTC
Type: ---
Embargoed:
iarnell: fedora-review+
j: fedora-cvs+


Attachments (Terms of Use)

Description Paul Howarth 2011-01-26 09:50:34 UTC
Spec URL:
http://subversion.city-fan.org/repos/cfo-repo/perl-JSON-PP/branches/fedora/perl-JSON-PP.spec
SRPM URL:
http://www.city-fan.org/~paul/extras/perl-JSON-PP/perl-JSON-PP-2.27104-2.fc15.src.rpm

Description:
JSON::XS is the fastest and most proper JSON module on CPAN. It is written by
Marc Lehmann in C, so must be compiled and installed in the used environment.

JSON::PP is a pure-Perl module and is compatible with JSON::XS.


The package builds and runs cleanly on all current Fedora and EPEL releases.

Comment 1 Iain Arnell 2011-01-27 04:59:11 UTC
+ source files match upstream.  
    45094c4030d67701b1af513b06913ead  JSON-PP-2.27104.tar.gz

+ package meets naming and versioning guidelines.
+ specfile is properly named, is cleanly written and uses macros consistently.
+ summary is OK.
+ description is OK.
+ dist tag is present.
+ build root is OK.
+ license field matches the actual license.
    GPL+ or Artistic

+ license is open source-compatible.
+ license text not included upstream.
+ latest version is being packaged.
+ BuildRequires are proper.
+ compiler flags are appropriate.
+ %clean is present.
+ package builds in mock
    http://koji.fedoraproject.org/koji/taskinfo?taskID=2744926

+ package installs properly.
+ rpmlint has no complaints:
    2 packages and 0 specfiles checked; 0 errors, 0 warnings.

+ final provides and requires are sane:
    perl(JSON::PP) = 2.27104
    perl-JSON-PP = 2.27104-2.fc15
    perl(JSON::PP::Boolean)  
    perl(JSON::PP::IncrParser) = 1.01
=
    perl >= 0:5.005
    perl(B)  
    perl(base)  
    perl(bytes)  
    perl(Carp)  
    perl(constant)  
    perl(Exporter)  
    perl(Getopt::Long)  
    perl(JSON::PP)  
    perl(:MODULE_COMPAT_5.12.3)  
    perl(overload)  
    perl(strict)  

+ %check is present and all tests pass.
    PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
    t/000_load.t ............... ok
    t/001_utf8.t ............... ok
    t/002_error.t .............. ok
    t/003_types.t .............. ok
    t/006_pc_pretty.t .......... ok
    t/007_pc_esc.t ............. ok
    t/008_pc_base.t ............ ok
    t/009_pc_extra_number.t .... ok
    t/010_pc_keysort.t ......... ok
    t/011_pc_expo.t ............ ok
    t/012_blessed.t ............ ok
    t/013_limit.t .............. ok
    t/014_latin1.t ............. ok
    t/015_prefix.t ............. ok
    t/016_tied.t ............... ok
    t/017_relaxed.t ............ ok
    t/018_json_checker.t ....... ok
    t/019_incr.t ............... ok
    t/020_unknown.t ............ ok
    t/021_evans_bugrep.t ....... ok
    t/022_comment_at_eof.t ..... ok
    t/099_binary.t ............. ok
    t/104_sortby.t ............. ok
    t/105_esc_slash.t .......... ok
    t/106_allow_barekey.t ...... ok
    t/107_allow_singlequote.t .. ok
    t/108_decode.t ............. ok
    t/109_encode.t ............. ok
    t/110_bignum.t ............. ok
    t/112_upgrade.t ............ ok
    t/113_overloaded_eq.t ...... ok
    t/114_decode_prefix.t ...... ok
    t/115_tie_ixhash.t ......... ok
    t/900_pod.t ................ ok
    All tests successful.
    Files=34, Tests=3470,  4 wallclock secs ( 0.38 usr  0.05 sys +  4.00 cusr  0.14 csys =  4.57 CPU)
    Result: PASS

+ no shared libraries are added to the regular linker search paths.
+ owns the directories it creates.
+ doesn't own any directories it shouldn't.
+ no duplicates in %files.
+ file permissions are appropriate.
+ no generically named files
+ code, not content.
+ documentation is small, so no -doc subpackage is necessary.
+ %docs are not necessary for the proper functioning of the package.

To avoid implicit file conflicts, perl-JSON needs to be updated to 2.50 (with tweaks to the filtering to hide or provide JSON::backportPP) and this package should explicitly Conflicts: perl-JSON < 2.50.

APPROVED.

Comment 2 Paul Howarth 2011-01-27 12:22:00 UTC
I've attached suggested changes to perl-JSON in Bug #665621; if you think they look right I can get that pushed and built to avoid conflicts when this package appears.

I've updated the perl-JSON-PP spec to add the versioned conflict.

Comment 3 Iain Arnell 2011-01-27 12:57:01 UTC
The perl-JSON changes look good to me. And the Conflict is good.

Comment 4 Paul Howarth 2011-01-27 13:19:52 UTC
Thanks for the review; I'll not request branches for older releases due to the perl-JSON conflict.

New Package SCM Request
=======================
Package Name: perl-JSON-PP
Short Description: JSON::XS compatible pure-Perl module
Owners: pghmcfc
InitialCC: perl-sig

Comment 5 Jason Tibbitts 2011-01-27 15:06:03 UTC
Git done (by process-git-requests).


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