JSON-XS reviews

RSS | Module Info

JSON-XS (3.01) *

tl;dr summary: Use Cpanel::JSON::XS instead.

This module filled a useful need in the past, but it has not been maintained in over two years. The maintainer is difficult to work with, not accepting bug reports via rt.cpan.org and often replying with abuse.

Unless you have a legacy need for this module, Cpanel::JSON::XS is almost certainly a better fit for current needs.

JSON-XS (2.33) *****

Excellent module, stable fast, good API and clear docs.

JSON-XS (2.32) *****

iit's a very good module. and I like it. thanks for the sharing.

JSON-XS (2.32) *


Don't use any modules by Marc Lehmann, you will almost certainly regret it later. This author has a history of extreme hostility towards the Perl community and will actively prevent you from using his software if he doesn't like you, or what you do with it.

To give you an example, in the 6.1 release of AnyEvent he made AnyEvent.pm die if you use it together with IO::Async::Loop::AnyEvent. metacpan.org/source/MLEHMANN/AnyEvent...

See also this P5P thread for a little more context. www.nntp.perl.org/group/perl.perl5.po...

JSON-XS (2.32) *****

perfect, i use it for AJAX, Settings, Translations and it performs great.

When using JSON with utf8 files you have to make a desisson
1. read/write with ":encoding(utf-8)" and do NOT use json->new->utf8()
2. read/write raw files(binmode,:raw) and use json->new->utf8()

(tested with perl 5.12)

If the files can have BOM i prefere reading it with File::BOM
my $encoding = open_bom(FH, $path, ':encoding(utf-8)');
local $/;
my $data = <FH>;

my $json = $self->[json] = JSON::XS->new;
$h = $json->decode($data);

JSON-XS (2.29) *****

Yes! It's pretty fast!

JSON-XS (2.29) *****

The ability to transmit and receive data structures as text between wildly different systems and architectures is a nut that folks have been trying to crack for *years*.

Serializing and marshaling data structures is more important now than ever, especially with the advances in browser tech using XMLHttpRequest objects. JSON::XS offers Perl a super-fast way to manage this data exchange - and does it completely object-oriented *or* function-based. Its strict adherence to the JSON documentation prevents constructs such as {foo: "Bar"} and instead requires {"foo": "Bar"} but otherwise does the job perfectly and quickly.

A big "thank you" to the author for making this available to us all!

JSON-XS (2.24) **

It might be fast, but frequently it will segfault when encoding.

JSON-XS (2.24) *****

We've used JSON::Syck before and experienced troubles with it after a while as it generates "JSON" which is sometimes not even valid JavaScript.

We've since switched to this module - if you ever need JSON encoding/decoding - use this!

JSON-XS (2.2) *****

This module is just terrific. I've benchmarked it against other data serializers and, at least in simple cases, it's faster than them all, including Storable. Making JSON a more attractive format for configuration files. If I'd known about it sooner I could have saved many headaches trying to debug roundtripping data and reference problems.

JSON-XS (2.01)

Would it have been so hard to leave some backwards-compatibility stub/wrapper functions when you changed the API for 2.x? Or to have left 1.x on CPAN instead of deleting it, for those who are still holding back on your older version until they get all of their code fixed to work around the API breakage?

JSON-XS (1.53) *****

As far as I am concerned, this is the only JSON module you will ever need. It is fast (which I don't really care that much about, but it's a nice bonus), it is complete (the *only* JSON module which handles unicode correctly) and it is simple to use. We use it at work to produce medium-large (anywhere from 20-120K when saved to disk) JSON structures in 5 different languages (including Japanese), and it Just Works.

Excellent module, highly recommended.
1 hidden unhelpful review