build: updates to LPEG 0.12.2 due to Lua5.3 compat patch
[luajson.git] / docs / ReleaseNotes-1.3.txt
blob2f83656a65fc545315347d6c4f97457c02443680
1 luajson v1.3 Release Notes
2 ==========================
4 User Visible Changes
5 --------------------
6 A global 'nothrow' option was added to change the behavior of parsing
7 to not throw, but return `nil, error`.
8 Error messages were also enhanced for many cases to include better details as
9 to why the parsing may have failed.
10 Some examples follow:
12 For `[1i]`
13         unexpected character @ character: 3 0:3 [i] line:
14         [1i
15 For `{x:1`
16         Unclosed elements present
18 The parser was also unrolled so that LPeg was placed more into a lexer role
19 rather than full-blown parser. This solves the problem of LPeg running into
20 problems in my parser due to unclosed choices at a small performance cost.
22 Plans for next release
23 ----------------------
24 A future release will have a stronger focus on decoder performance. It may
25 mean a reduction in flexibility by removing options and breaking compatibility.
28 Updates since 1.2.2
29 ===================
31 Thomas Harning Jr (9):
32         all:
33                 5.2 compatibility
34                 update option processing system to do more pre-configuration to better prepare for future changes
35         base:
36                 rockspec scm-4 added due to file layout change
37                 fixes luajson-scm-4.rockspec
38         decoder:
39                 adds global 'nothrow' option to protect call automatically
40                 error detection enhancements from next branch
41                 overhaul update to be iterative to avoid call-stack buildup w/ limits and horrible performance hit
42         tests:
43                 adds null array roundtrip issue per gh-4
44 Francois Perrad (2):
45         -ungrouped-
46                 fix loadstring when Lua 5.2 is strict
47                 fix test suite with Lua 5.2