5 и 20 марта состоялись выпуски 5.0.0 и 5.0.1 высокопроизводительной библиотеки Glaze, предназначенной для чтения и записи JSON.
Также поддерживаются форматы CSV и BEVE.
Библиотека написана на языке C++ (header-only, стандарт C++23) и распространяется по лицензии MIT.
Список изменений:
- Настраиваемые параметры во времени компиляции – структура
glz::opts
теперь содержит только опции по умолчанию, а более специализированные опции могут быть добавлены в пользовательские структуры опций. - Удалено пространство имен
detail
для специализацийto/from
. glz::detail::read
заменена наglz::parse
, аglz::detail::write
наglz::serialize
.- Добавлены концепты
write_supported
иread_supported
, что упростило код и сделало добавление новых форматов более чистым и возможным для пользователей, без необходимости вносить изменения в основной код Glaze. glz::manage
теперь не зависит от формата и работает с другими форматами, помимо JSON.- Вместо
glz::expected
теперь всегда используетсяstd::expected
из C++23. - Рефакторинг кода.
- Исправлены обнаруженные ошибки.