Commit graph

1126 commits

Author SHA1 Message Date
Srijan Choudhary
3165dd9c54 Json value can be proplist even if maps are supported 2015-01-03 18:59:08 +05:30
alisdair sullivan
d4d838d4f4 always return maps if the macro maps_always is defined 2014-12-18 15:58:19 -08:00
alisdair sullivan
8592742ded rework decoder and encoder slightly to be a little more sane 2014-12-11 06:57:49 +00:00
alisdair sullivan
3625aaeb66 remove vestigial flatify function 2014-12-09 18:37:29 -08:00
alisdair sullivan
f6641a445f switch travis indicator back to develop 2014-12-09 16:42:08 -08:00
alisdair sullivan
e751e3324f v2.4.0 2014-12-09 16:27:15 -08:00
alisdair sullivan
8f62b3adf1 v2.4.0 2014-12-09 16:24:09 -08:00
alisdair sullivan
8797ff6d9b disable maps on R14, R15 and R16 2014-12-09 16:09:38 -08:00
alisdair sullivan
a9a2c2ebe6 revert a jsx_to_term optimizatin that micro benchmarked well but didn't macro
benchmark well
2014-12-09 22:16:55 +00:00
alisdair sullivan
e2ba87f1cb switch to a counting implementation of number parsing a la strings 2014-12-09 02:20:01 -08:00
alisdair sullivan
e5e04db58e produce binaries in escaped strings in decoder/parser instead of lists 2014-12-09 02:19:13 -08:00
alisdair sullivan
5843dbc56a actually i can use flatten in jsx_to_term! sweet 2014-12-09 08:06:12 +00:00
alisdair sullivan
371b49a9e3 extend binary_to_whatever to R14 even though it's not really supported
anymore
2014-12-09 07:28:20 +00:00
alisdair sullivan
1033245da3 binary_to_whatever is not available on R15? fixed 2014-12-09 05:12:33 +00:00
alisdair sullivan
b1320a2e67 remove package.exs, use mix branch instead 2014-12-09 05:00:18 +00:00
alisdair sullivan
261574ee03 less list allocation in jsx_to_term 2014-12-09 01:47:40 +00:00
alisdair sullivan
c39515bd60 early exit from value when encountering literals and less list allocation
for number parsing
2014-12-09 01:46:57 +00:00
alisdair sullivan
34771087ff switch to iodata accumulation for number parsing 2014-12-08 04:05:03 +00:00
alisdair sullivan
4b3fa9b903 further unrolling of string parsing states and elimination of when
guards
2014-12-07 19:12:43 -08:00
alisdair sullivan
8e2d7a0253 decoder clause reordering and unrolling to reduce when clauses 2014-12-07 16:31:29 -08:00
alisdair sullivan
f932cb155a v2.3.1 2014-12-07 15:49:28 -08:00
alisdair sullivan
edf8181d6e Merge tag 'v2.3.1' into develop
Conflicts:
	README.md
2014-12-07 15:47:34 -08:00
alisdair sullivan
5317596ebe v2.3.1 2014-12-07 15:38:59 -08:00
alisdair sullivan
c96d83b488 certain astral plane json escape sequences were inadvertently being
replaced with the replacement character
2014-12-07 15:37:34 -08:00
alisdair sullivan
16aef3b1d0 README fixups
add example for `return_maps` and remove note about `jsxn`
2014-12-07 15:37:24 -08:00
alisdair sullivan
a9982687c6 certain astral plane json escape sequences were inadvertently being
replaced with the replacement character
2014-12-07 15:30:37 -08:00
alisdair sullivan
8a4f92d8e6 skip redundant check for uescape escaping 2014-12-07 14:27:39 -08:00
alisdair sullivan
43ba093ec5 build maps immediately when returning maps instead of building a
proplist and converting
2014-12-07 22:04:41 +00:00
alisdair sullivan
56c3bdb578 reorder parser clauses and simplify escaping for performance 2014-12-07 08:15:56 +00:00
alisdair sullivan
9842a00b4d strip out checks for repeated keys in generated json. no one cares
about repeated keys
2014-12-07 07:59:51 +00:00
alisdair sullivan
173a0a8aad Merge branch 'develop' 2014-12-04 14:25:31 +00:00
alisdair sullivan
d2a7064e4e README fixups
add example for `return_maps` and remove note about `jsxn`
2014-12-04 14:24:54 +00:00
alisdair sullivan
87e87c03f4 point travis indicator to master branch 2014-12-04 14:22:39 +00:00
alisdair sullivan
c1d794f7a9 v2.3.0
let's not hype it up too much
2014-12-03 23:16:41 -08:00
alisdair sullivan
0222c89061 remove hipe config and unused benchmarking tool 2014-12-03 23:13:58 -08:00
alisdair sullivan
eed34483e4 allow control codes in json passed to the decoder
a malicious actor can introduce the same codepoints via \uXXXX
escapes and they are not dangerous in erlang binaries regardless
2014-12-03 23:11:40 -08:00
alisdair sullivan
edee5931a4 perform uescape escaping in the decoder (for json -> whatever
transformation)`
2014-12-03 23:02:02 -08:00
alisdair sullivan
dc8e6a0c54 switch string parsing to a count and slice implementation 2014-12-03 22:54:44 -08:00
alisdair sullivan
9528216d15 allow unicode noncharacters and reserved space characters in json
strings

fixes #67
2014-12-01 19:43:07 +00:00
alisdair sullivan
5f5e85914d v2.2 2014-11-24 19:18:10 -08:00
alisdair sullivan
5ada4c3cfc document uescape option in README 2014-11-24 19:16:20 -08:00
alisdair sullivan
95a87fa0d7 add uescape option for 7 bit clean output of strings 2014-11-24 19:15:51 -08:00
alisdair sullivan
3e80f475f5 document return_maps in README 2014-11-24 19:15:20 -08:00
alisdair sullivan
989609b250 add a return_maps option that returns maps instead of proplists 2014-11-24 19:14:30 -08:00
alisdair sullivan
55eaa7b524 add erlang.fake Makefile to support erlang.mk 2014-10-28 15:48:10 -07:00
alisdair sullivan
6b333396a3 add maps_support/0 function that reports whether jsx was
compiled with maps support or not
2014-10-28 04:46:10 +00:00
alisdair sullivan
bbf7d39e85 add Makefile to work around an erlang.mk assumption 2014-10-28 02:13:25 +00:00
alisdair sullivan
99eddc8ae8 make jsxbench more descriptive 2014-09-19 23:27:22 -07:00
alisdair sullivan
74cd4d910b update package.exs for hex 2014-09-07 14:06:52 -07:00
alisdair sullivan
4d549dd8a9 v2.1.1 2014-08-27 05:45:12 -07:00