v3.4.0
Breaking Change of glz::nameof
enum interface
The typical use case of
glz::enumerate
within aglz::meta
has been unaffected, and therefore most users will be unaffected by this change.
This update removes the enum_macro.hpp
header (GLZ_ENUM and GLZ_ENUM_MAP) and adds a new glz::meta
approach that takes an array of keys and an array of values. This keys/values approach only supports enums in Glaze (currently to support faster internal compilation of enums), but broader support can be added in the future.
The enum_macro
approach of using ADL created issues with other repositories that would declare a namespace nameof
, and the macro expansion increased compilation time and was not a good, generic solution.
glz::nameof
function for internal Glaze enums has been removed.
by @stephenberry in #1297
Other Fixes
- fixes min/max macro conflict in dragonbox.hpp on MSVC by @lambwheit in #1298
- glz::meta keys for enums, removing nameof ADL and enum_macro.hpp
Experimental glz::asio_client changes
- Support asynchronous clients with a socket pool by @stephenberry in #1291
Full Changelog: v3.3.4...v3.4.0