What's Changed
- Move variant depth growth check out of beve_test into benchmarks by @stephenberry in #2941
- Error when writing unnamed enum values by @stephenberry in #2943
- Refactor bitmask initialization using array by @vsmcea in #2946
- Add MSVC ARM64 CI job by @stephenberry in #2947
- Static assert on unsupported BEVE map key types by @stephenberry in #2948
- Support std::chrono::utc_clock time points by @stephenberry in #2949
- BEVE: read and write aligned complex arrays; reject undefined complex sub-types by @stephenberry in #2969
- Don't let string read padding force an allocation by @Reddimus in #2951
- write cbor negative integers below int64 min exactly in cbor_to_json by @uwezkhan in #2968
- tests: vendor ut instead of fetching it by @stephenberry in #2972
- Rename minify/prettify emit lambda to avoid Qt macro collision by @stephenberry in #2977
- Reject rooted route captures after URL decoding by @Alearner12 in #2976
- Bound HTTP request headers and first-request wait by @Alearner12 in #2975
- reject surrogate-pair \u escapes in toml basic strings by @uwezkhan in #2980
- reject embedded null in bson map keys and regex cstrings by @uwezkhan in #2979
- Convert packed boolean arrays in beve_to_json by @youdie006 in #2978
- bound lazy beve element cursors to the end of the buffer by @uwezkhan in #2989
- Write inf, -inf and nan for non-finite floats in TOML and CSV by @dlwhdgus0810 in #2988
- fix null value handling in the toml writer and variant reader by @uwezkhan in #2999
- quote csv map keys holding delimiters, quotes, or line breaks by @uwezkhan in #3002
- Accept integral lvalues in generic_json operator[] by @err0rgod in #2998
- toml: trim whitespace after a line ending backslash by @Shaisolaris in #2997
- toml: reject bare carriage returns by @stephenberry in #3003
- Avoid lambdas in class template static member initializers (MSVC) by @stephenberry in #3004
- reject colwise csv map rows with more cells than columns by @uwezkhan in #2994
- Accept a leading '+' on TOML floats by @fhgffy in #2992
- toml: accept underscores in floats by @stephenberry in #3005
- keep line breaks from splitting sse events in send_event by @uwezkhan in #2987
- reject NUL bytes in route param and wildcard captures by @uwezkhan in #2986
- Fix MinGW build and run MinGW CI weekly by @stephenberry in #2981
- glz::generic: name key and types in access errors by @stephenberry in #3007
- fix generic toml reads that drop the document after a quoted first key by @uwezkhan in #3024
- Correction of #3022 by @vsmcea in #3023
- derive null termination from the buffer in get_view_json and lazy_json by @uwezkhan in #3020
- bound beve fixed-size array reads to the element count on the wire by @uwezkhan in #3018
- bson: constrain top-level serialize/parse and report parse_number_failure on uint64 overflow by @officialjisanhalder-art in #3017
- yaml: count depth per collection, not per variant frame by @stephenberry in #3025
- Write full precision when float_max_write_precision narrowing overflows by @stephenberry in #3026
- Order http_stream_connection::disconnect() with the stream's reads and close by @michaelaeriksen in #3031
- Stream timeout ends the stream once by @stephenberry in #3032
- send Vary: Origin from create_cors_middleware by @uwezkhan in #3030
- refuse float to integral get() on lazy beve typed array elements by @uwezkhan in #3029
- net: keep '+' in path captures, answer 405 for wrong method, HEAD via GET, client head/del/options by @stephenberry in #3027
- reject keys defined twice in toml struct reads by @uwezkhan in #3034
- reject invalid ~ escapes in runtime json pointer lookups by @uwezkhan in #3033
- MSVC: a) Add MSVC CMake presets, b) Suppress MSVC secure CRT warnings, c) ut.hpp: work around MSVC aggregate-init bug with explicit constructors by @MDKuehneBSB in #3035
- write_float wrappers work with default opts by @stephenberry in #3038
- docs: update float_max_write_precision examples and options table for v9 by @officialjisanhalder-art in #3013
- set_opt: handle allow_conversions; drop redundant options.md note by @stephenberry in #3039
- fix signed overflow of the slice index in jmespath handle_slice by @uwezkhan in #3045
- jmespath: fix tuple slice index wrap near INT32_MAX by @stephenberry in #3046
- bson write: honor user to specializations of variants and nullables by @stephenberry in #3047
- net: serialize streaming_connection writes with a write queue by @hayt in #3049
- http_server: fix start/stop data races by @stephenberry in #3050
- fix out-of-bounds write in eetf decode_sequence on truncated strings by @uwezkhan in #3051
- check the string terminator in bson_to_json by @uwezkhan in #3048
New Contributors
- @vsmcea made their first contribution in #2946
- @Reddimus made their first contribution in #2951
- @Alearner12 made their first contribution in #2976
- @youdie006 made their first contribution in #2978
- @dlwhdgus0810 made their first contribution in #2988
- @err0rgod made their first contribution in #2998
- @Shaisolaris made their first contribution in #2997
- @fhgffy made their first contribution in #2992
- @officialjisanhalder-art made their first contribution in #3017
- @MDKuehneBSB made their first contribution in #3035
- @hayt made their first contribution in #3049
Full Changelog: v9.0.0...v9.1.0