
luajson v1.1.1 Release Notes
============================

User Visible Changes
--------------------
In Windows, Lua's tostring and tonumber handling occur differently for
the boundary cases of NaN, Infinity, and -Infinity values.  This broke
Windows encoding/decoding of JSON for which these values are present.

Example input/outputs:

Windows:

 * tonumber("Infinity") == nil
 * tostring(1/0) == "1.#INF"
 * tostring(0/0) == "-1.#IND"

Linux:

 * tonumber("Infinity") == inf
 * tostring(1/0) == "inf"
 * tostring(0/0) == "nan"

The code that decoded was changed to report the output manually on decode
rather than decode 'generically' using 'tonumber'.

The code that encoded was changed to use numerical equivalence checking
before returning what 'tostring' would have, which should catch nearly
all cases.

Checks were updated to do:

 * nan  =>  value ~= value
 * inf  =>  value == math.huge
 * -inf =>  value == -math.huge

Plans for next release
----------------------
The next version should hopefully have more error reporting capabilities,
such as returning where an error occurred and possibly details.
How this will be done is a research-item.

Updates since 1.1
=================

Thomas Harning Jr (3):
	-ungrouped-
		Merge branch '1.0.x'
	decoder/encoder:
		better handles number encoding/decoding for cases where tonumber/tostring don't work as expected
