Improvements ============
- Add glz::reflect_array to serialize structs as arrays without enumerating
members
- Centralize Asio backend selection into a glaze::asio target, and export it to
find_package consumers so the standalone/Boost Asio macro pair is configured
consistently
- Support custom_read/custom_write types as tagged variant alternatives
- Support custom_read/custom_write types as tagged variant alternatives in YAML
- Add a CI workflow for MSVC /O2 builds
Fixes ======
- Fix streaming buffer refill when skipping unknown keys
- RFC 6455: reject oversized WebSocket control frames
- RFC 9112: fix Host authority in HTTP and WebSocket clients
- Cast to unsigned char before cctype calls in parsers (avoids UB on negative
char values)
- RFC 6455: fix WebSocket close frame validation
- Fix WebSocket client handling of data received together with the handshake
response
- Guard std::numeric_limits<T>::min/max against Windows min/max macros
- Fix TOML/YAML block layout for transparent write wrappers
- Resolve custom variant specialization ambiguity for
YAML/BEVE/CBOR/MessagePack/TOML
- Guard std::min & std::max calls from minwindef.h defines
- Fixed CMake version to match v7.8.1 tag (v7.8.0 was missing CMake and
version.hpp bump)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Improvements
=============
error_on_missing_array_elements option
Glaze vs Boost.Beast HTTP server benchmarks and optimizations
custom optional support
Add clang-cl CI workflow
Make REST router more like a map and allow overwriting routes
Fixes
======
YAML fix for generic_u64 and generic_i64
format_context to support specifying YAML in opts format field
glz::patch support for all glz::generic_ types
Avoid erroring on nullable value types
Fix GNU-style flag passing to MSVC frontend
Nullable value write skipping
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The cmake files should be included in the glaze-dev package.
Without this patch, an application using the following
find_package(glaze)
target_link_libraries(myprogram PUBLIC glaze::glaze)
Would fail with the following error (with tmpdir redacted)
CMake Error in deps/vesl/src/Platform/CMakeLists.txt:
Imported target "glaze::glaze" includes non-existent path
"$TMPDIR/recipe-sysroot/usr/share/include"
in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include:
* The path was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and references files it does not
provide.
Signed-off-by: Frede Hoey Braendstrup <frederikbraendstrup@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>