Repository navigation
What's Changed
- README: add companion libraries section by @lemire in #3010
- lsx, lasx: fix inverted simd8::any() by @mvanslobbe in #3011
- ondemand: user-provided default constructors by @lemire in #3017
- dom: do not zero the 64-byte small buffer of every string_builder by @lemire in #3016
- ondemand: drop redundant per-type map deserializers by @Hrushikesh-ramilla in #3015
- westmere, ppc64: fix inverted simd8<uint8_t>::operator< by @Hrushikesh-ramilla in #3013
- ondemand: scalar getters on a root container value; quote check in *_in_string by @lemire in #3018
- ondemand: leave an optional untouched when deserialization fails (supersedes #3014) by @lemire in #3019
- tests: build map_deserialization without exceptions by @lemire in #3020
- README: add Groonga to the real-world users by @lemire in #3021
- README: add more real-world users of simdjson by @lemire in #3022
- dom: do not keep a half-built implementation after a failed allocate() by @lemire in #3023
- rvv-vls: fix inverted bit_andnot and implement simd8::any() by @Hrushikesh-ramilla in #3028
- stage 1: do not let an unclosed string hide utf-8 errors (with fallback fix) by @lemire in #3030
- dom, ondemand: keep the parser usable after a failed allocate() (supersedes #3027) by @lemire in #3029
- ondemand: end a stream batch before an invalid last document by @lemire in #3031
- ondemand: do not match a lookup key holding an unescaped quote (supersedes #3026) by @lemire in #3032
- rvv-vls: implement simd8<uint8_t> min_val and max_val by @Hrushikesh-ramilla in #3035
- rvv-vls: implement simd8::operator== by @Hrushikesh-ramilla in #3033
- unquote bracket keys in at_path by @jmestwa-coder in #3038
- OSS-Fuzz: Add new fuzzer/dict/corpus targets fractured json by @arthurscchan in #3040
- simd: implement is_ascii and bits_not_set_anywhere across all kernels by @Hrushikesh-ramilla in #3036
- fuzz: build fuzz_fractured_json without exceptions by @lemire in #3044
- builder: do not pass a null pointer to memcpy for empty inputs by @lemire in #3045
- user-provided default constructors for the remaining types (supersedes #3034) by @lemire in #3042
- OSS-Fuzz: Add new fuzzer/corpus/dict targets builder process by @arthurscchan in #3043
- ondemand: do not read past a key cut by the end of incomplete JSON by @jmestwa-coder in #3047
- fuzz: fix the fuzz_builder build in developer and no-exception builds by @lemire in #3053
- ondemand: do not let a malformed value escape a skipped container (supersedes #3048) by @lemire in #3051
- simd: implement element-wise bits_not_set and any_bits_set in arm64 and rvv-vls by @Hrushikesh-ramilla in #3049
- tests: build simd8_tests when icelake is the builtin kernel by @lemire in #3057
- loongarch: disable LASX runtime dispatching by default by @lemire in #3058
- ondemand: copy value_iterator field by field (fixes #3052) by @lemire in #3061
- dom: do not reassign simdjson_result in at_pointer by @lemire in #3062
- dom: Mark at_key/key_equals as simdjson_inline (#2552) by @spnda in #3054
- ondemand: stop iterate_allow_incomplete_json() at the end of the input once per document (supersedes #3063) by @lemire in #3065
- tools: make jsonpointer look up JSON Pointers again by @ybai08 in #3041
- ondemand: For small strings unescape directly into the std::string passed to get_string by @spnda in #3050
- ondemand: do not complete a cut scalar with bytes past incomplete JSON by @jmestwa-coder in #3068
- ondemand: do not reassign simdjson_result in at_pointer by @Hrushikesh-ramilla in #3069
- slice_at: linear time when documents are longer than the block by @lemire in #3066
- string_builder: move the buffer out on rvalue conversion to std::string (supersedes #3046) by @lemire in #3056
- Recognize $ as the JSONPath root selector (supersedes #3064) by @lemire in #3071
Full Changelog: v5.1.1...v5.2.0