Skip Menu |

This queue is for tickets about the Parse-CPAN-Meta CPAN distribution.

Report information
The Basics
Id: 68047
Status: rejected
Priority: 0/
Queue: Parse-CPAN-Meta

People
Owner: Nobody in particular
Requestors: APOCAL [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Error parsing JSON-DWIW 0.47 META.json
While installing some modules I saw this error pop up and wondered what happened. Digging into the error it looks like the author hand-rolled the META.json and it is "invalid" but to me it's a harmless error? I don't know the META.json spec well but spurious newlines should be forgiven, eh? :) Attached is the log - you can reproduce it by: Perl-5.10.1 ( Ubuntu 11.04 version ) Parse::CPAN::Meta v1.4401 $JSON::PP::VERSION = '2.27105'; $JSON::VERSION = '2.51'; And just try to load the META.json included in JSON-DWIW v0.47 Thanks! -- ~Apocalypse
Subject: parse-cpan-meta.txt
root@blackhole:/home/apoc# cpanp z JSON-DWIW [MSG] Checking if source files are up to date [MSG] Retrieving /root/.cpanplus/sourcefiles.s2.25.c0.9105.stored [MSG] Using cached file '/root/.cpanplus/authors/id/D/DO/DOWENS/CHECKSUMS' on disk; ttl (3600s) is not exceeded [MSG] Checksum matches for 'JSON-DWIW-0.47.tar.gz' [MSG] Extracted 'JSON-DWIW-0.47/' [MSG] Extracted 'JSON-DWIW-0.47/t/' [MSG] Extracted 'JSON-DWIW-0.47/t/deser01.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser04_exceptions.t' [MSG] Extracted 'JSON-DWIW-0.47/t/16to_xml.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser02_constants.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser11_file.t' [MSG] Extracted 'JSON-DWIW-0.47/t/01encode.t' [MSG] Extracted 'JSON-DWIW-0.47/t/05exceptions.t' [MSG] Extracted 'JSON-DWIW-0.47/t/tickets.t' [MSG] Extracted 'JSON-DWIW-0.47/t/04extras.t' [MSG] Extracted 'JSON-DWIW-0.47/t/encode01.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser08_stats.t' [MSG] Extracted 'JSON-DWIW-0.47/t/06big_numbers.t' [MSG] Extracted 'JSON-DWIW-0.47/t/13stats.t' [MSG] Extracted 'JSON-DWIW-0.47/t/02decode.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser14_depth.t' [MSG] Extracted 'JSON-DWIW-0.47/t/14nonoo.t' [MSG] Extracted 'JSON-DWIW-0.47/t/from_json01_escapes.t' [MSG] Extracted 'JSON-DWIW-0.47/t/08pvxv.t' [MSG] Extracted 'JSON-DWIW-0.47/t/09bool.t' [MSG] Extracted 'JSON-DWIW-0.47/t/10unicode.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser13_escapes.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser12_unicode.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser05_big_numbers.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser06_bool.t' [MSG] Extracted 'JSON-DWIW-0.47/t/11parse_file.t' [MSG] Extracted 'JSON-DWIW-0.47/t/17callbacks.t' [MSG] Extracted 'JSON-DWIW-0.47/t/03parse_constants.t' [MSG] Extracted 'JSON-DWIW-0.47/t/15bom.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser07_error.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser03_extras.t' [MSG] Extracted 'JSON-DWIW-0.47/t/07magic.t' [MSG] Extracted 'JSON-DWIW-0.47/t/compat01.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser09_edge.t' [MSG] Extracted 'JSON-DWIW-0.47/t/deser10_bom.t' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail7.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail11.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail33.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail16.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/pass1.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail14.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail2.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail10.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/pass10.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail8.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail32.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail12.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail19.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail31.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/pass2.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/pass0.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail20.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail22.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/pass3.json' [MSG] Extracted 'JSON-DWIW-0.47/t/parse_file/fail21.json' [MSG] Extracted 'JSON-DWIW-0.47/t/12error.t' [MSG] Extracted 'JSON-DWIW-0.47/t/00use.t' [MSG] Extracted 'JSON-DWIW-0.47/evt.h' [MSG] Extracted 'JSON-DWIW-0.47/DWIW.xs' [MSG] Extracted 'JSON-DWIW-0.47/evt.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/config.sub' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/install-sh' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/libtool' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf32.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/config.guess' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/depcomp' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/missing' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf16.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf16.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/print.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/uni.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/Makefile.in' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/ltmain.sh' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/jsonevt_private.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/configure' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/int_defs.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/fixup_config' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/aclocal.m4' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/json_writer.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/config.h.in' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/convenience.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf8.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/c++/' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/c++/Makefile.in' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/c++/jsonevt++.cc' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/c++/jsonevt++.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/jsonevt.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/make_config.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/jsonevt_utils.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/jsonevt.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf32.c' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/print.h' [MSG] Extracted 'JSON-DWIW-0.47/libjsonevt/utf8.h' [MSG] Extracted 'JSON-DWIW-0.47/old_common.c' [MSG] Extracted 'JSON-DWIW-0.47/lib/' [MSG] Extracted 'JSON-DWIW-0.47/lib/JSON/' [MSG] Extracted 'JSON-DWIW-0.47/lib/JSON/DWIW/' [MSG] Extracted 'JSON-DWIW-0.47/lib/JSON/DWIW/Boolean.pm' [MSG] Extracted 'JSON-DWIW-0.47/lib/JSON/DWIW/Changes.pm' [MSG] Extracted 'JSON-DWIW-0.47/lib/JSON/DWIW.pm' [MSG] Extracted 'JSON-DWIW-0.47/INSTALL' [MSG] Extracted 'JSON-DWIW-0.47/README' [MSG] Extracted 'JSON-DWIW-0.47/META.json' [MSG] Extracted 'JSON-DWIW-0.47/WhatsNew' [MSG] Extracted 'JSON-DWIW-0.47/Makefile.PL' [MSG] Extracted 'JSON-DWIW-0.47/old_common.h' [MSG] Extracted 'JSON-DWIW-0.47/META.yml' [MSG] Extracted 'JSON-DWIW-0.47/DWIW.h' [MSG] Extracted 'JSON-DWIW-0.47/Artistic' [MSG] Extracted 'JSON::DWIW' to '/root/.cpanplus/5.10.1/build/JSON-DWIW-0.47' root@blackhole:~/.cpanplus/5.10.1/build/JSON-DWIW-0.47# ls Artistic evt.c lib META.json old_common.h WhatsNew DWIW.h evt.h libjsonevt META.yml README DWIW.xs INSTALL Makefile.PL old_common.c t root@blackhole:~/.cpanplus/5.10.1/build/JSON-DWIW-0.47# perl -MParse::CPAN::Meta -e 'Parse::CPAN::Meta->load_file("META.json")' unexpected end of string while parsing JSON string, at character offset 947 (before "\n },\n\n "met...") at /usr/local/share/perl/5.10.1/Parse/CPAN/Meta.pm line 51 root@blackhole:~/.cpanplus/5.10.1/build/JSON-DWIW-0.47#
On Mon May 09 17:28:36 2011, APOCAL wrote: Show quoted text
> Digging into the error it looks like the author hand-rolled > the META.json and it is "invalid" but to me it's a harmless error? I > don't know the META.json spec well but spurious newlines should be > forgiven, eh? :)
It's not that. It has an illegal trailing comma and uses single quotes on a line that should have double quotes. c.f. http://www.jslint.com/