2013-05-13 (1.8.0)
* Fix https://github.com/flori/json/issues/162 reported by Marc-Andre
Lafortune <github_rocks@marc-andre.ca>. Thanks!
* Applied patches by Yui NARUSE <naruse@airemix.jp> to suppress warning with
-Wchar-subscripts and better validate UTF-8 strings.
* Applied patch by ginriki@github to remove unnecessary if.
* Add load/dump interface to JSON::GenericObject to make
serialize :some_attribute, JSON::GenericObject
work in Rails active models for convenient SomeModel#some_attribute.foo.bar
access to serialised JSON data.
2013-02-04 (1.7.7)
* Security fix for JSON create_additions default value and
JSON::GenericObject. It should not be possible to create additions unless
explicitely requested by setting the create_additions argument to true or
using the JSON.load/dump interface. If JSON::GenericObject is supposed to
be automatically deserialised, this has to be explicitely enabled by
setting
JSON::GenericObject.json_createble = true
as well.
* Remove useless assert in fbuffer implementation.
* Apply patch attached to https://github.com/flori/json/issues#issue/155
provided by John Shahid <jvshahid@gmail.com>, Thx!
* Add license information to rubygems spec data, reported by Jordi Massaguer
Pla <jmassaguerpla@suse.de>.
* Improve documentation, thx to Zachary Scott <zachary@zacharyscott.net>.
2012-11-29 (1.7.6)
* Add GeneratorState#merge alias for JRuby, fix state accessor methods. Thx to
jvshahid@github.
* Increase hash likeness of state objects.
2012-05-12 (1.7.3)
* Work around Rubinius encoding issues using iconv for conversion instead.
2012-05-11 (1.7.2)
* Fix some encoding issues, that cause problems for the pure and the
extension variant in jruby 1.9 mode.
2012-04-28 (1.7.1)
* Some small fixes for building
2012-04-28 (1.7.0)
* Add JSON::GenericObject for method access to objects transmitted via JSON.
2012-04-27 (1.6.7)
* Fix possible crash when trying to parse nil value.
2012-01-15 (1.6.5)
* Vit Ondruch <v.ondruch@tiscali.cz> reported a bug that shows up when using
optimisation under GCC 4.7. Thx to him, Bohuslav Kabrda
<bkabrda@redhat.com> and Yui NARUSE <naruse@airemix.jp> for debugging and
developing a patch fix.
2011-12-24 (1.6.4)
* Patches that improve speed on JRuby contributed by Charles Oliver Nutter
<headius@headius.com>.
* Support object_class/array_class with duck typed hash/array.
2011-12-01 (1.6.3)
* Let JSON.load('') return nil as well to make mysql text columns (default to
'') work better for serialization.
2011-11-21 (1.6.2)
* Add support for OpenStruct and BigDecimal.
* Fix bug when parsing nil in quirks_mode.
* Make JSON.dump and JSON.load methods better cooperate with Rails' serialize
method. Just use: serialize :value, JSON
* Fix bug with time serialization concerning nanoseconds. Thanks for the
patch go to Josh Partlow (jpartlow@github).
* Improve parsing speed for JSON numbers (integers and floats) in a similar way to
what Evan Phoenix <evan@phx.io> suggested in:
https://github.com/flori/json/pull/103
2011-09-18 (1.6.1)
* Using -target 1.5 to force Java bits to compile with 1.5.
(Dependency to devel/ruby-spruz has gone to force coming ruby-json-utils.)
2011-09-12 (1.6.0)
* Extract utilities (prettifier and GUI-editor) in its own gem json-utils.
* Split json/add/core into different files for classes to be serialised.
2011-08-31 (1.5.4)
* Fix memory leak when used from multiple JRuby. (Patch by
jfirebaugh@github).
* Apply patch by Eric Wong <nocode@yhbt.net> that fixes garbage collection
problem reported in https://github.com/flori/json/issues/46.
* Add :quirks_mode option to parser and generator.
* Add support for Rational and Complex number additions via json/add/complex
and json/add/rational requires.
2011-06-20 (1.5.3)
* Alias State#configure method as State#merge to increase duck type synonymy
with Hash.
* Add as_json methods in json/add/core, so rails can create its json objects
the new way.
2011-05-11 (1.5.2)
* Apply documentation patch by Cory Monty <cory.monty@gmail.com>.
* Add gemspecs for json and json_pure.
* Fix bug in jruby pretty printing.
* Fix bug in object_class and array_class when inheriting from Hash or Array.
2011-01-24 (1.5.1)
* Made rake-compiler build a fat binary gem. This should fix issue
https://github.com/flori/json/issues#issue/54.
2011-01-22 (1.5.0)
* Included Java source codes for the Jruby extension made by Daniel Luz
<dev@mernen.com>.
* Output full exception message of deep_const_get to aid debugging.
* Fixed an issue with ruby 1.9 Module#const_defined? method, that was
reported by Riley Goodside.
2010-05-05 (1.4.3)
* Fixed some test assertions, from Ruby r27587 and r27590, patch by nobu.
* Fixed issue http://github.com/flori/json/issues/#issue/20 reported by
electronicwhisper@github. Thx!
2010-04-26 (1.4.2)
* Applied patch from naruse Yui NARUSE <naruse@airemix.com> to make building with
Microsoft Visual C possible again.
* Applied patch from devrandom <c1.github@niftybox.net> in order to allow building of
json_pure if extensiontask is not present.
* Thanks to Dustin Schneider <dustin@stocktwits.com>, who reported a memory
leak, which is fixed in this release.
* Applied 993f261ccb8f911d2ae57e9db48ec7acd0187283 patch from josh@github.
2010-04-25 (1.4.1)
* Fix for a bug reported by Dan DeLeo <dan@kallistec.com>, caused by T_FIXNUM
being different on 32bit/64bit architectures.
2010-04-23 (1.4.0)
* Major speed improvements and building with simplified
directory/file-structure.
* Extension should at least be comapatible with MRI, YARV and Rubinius.
2010-04-07 (1.2.4)
* Triger const_missing callback to make Rails' dynamic class loading work.
2010-03-11 (1.2.3)
* Added a State#[] method which returns an attribute's value in order to
increase duck type compatibility to Hash.
2010-02-27 (1.2.2)
* Made some changes to make the building of the parser/generator compatible
to Rubinius.
2009-11-25 (1.2.1)
* Added :symbolize_names option to Parser, which returns symbols instead of
strings in object names/keys.
2008-07-10 (1.1.3)
* Wesley Beary <monki@geemus.com> reported a bug in json/add/core's DateTime
handling: If the nominator and denominator of the offset were divisible by
each other Ruby's Rational#to_s returns them as an integer not a fraction
with '/'. This caused a ZeroDivisionError during parsing.
* Use Date#start and DateTime#start instead of sg method, while
remaining backwards compatible.
* Supports ragel >= 6.0 now.
* Corrected some tests.
* Some minor changes.
This is a implementation of the JSON specification according to RFC
4627. You can think of it as a low fat alternative to XML, if you
want to store data to disk or transmit it over a network rather than
use a verbose markup language.
The JSON generator escapes all non-ASCII an control characters with
\uXXXX escape sequences and supports UTF-16 surrogate pairs in order
to be able to generate the whole range of Unicode code points. This
means that generated JSON text is encoded as UTF-8 (because ASCII is
a subset of UTF-8) and at the same time avoids decoding problems for
receiving endpoints that don't expect UTF-8 encoded texts.
This package is a pure Ruby variant that relies on the iconv and the
stringscan extensions, which are both part of the Ruby standard library.