First release in a long time. Everything merged since v2.1.0.
Breaking changes
LOGURU_CATCH_SIGABRTreplaced bystruct SignalOptions(#151, #161)cmake_minimum_requiredraised to 3.12 (#257)
New features
- CMake support with install, CPack, and pkgconfig (#215 and friends)
- Syslog output via
LOGURU_SYSLOG(#156) va_listversions of the core logging functions (#208)LOGURU_USE_LOCALEto make locale usage optional (#216)DLOG_SCOPE_F,DVLOG_SCOPE_F, andDLOG_SCOPE_FUNCTION(#282)- Optional header line with column names (#123)
- lnav log format (#123, #250)
- Colors decided by
isatty(), plus alacritty support (#127, #272) - Option to disable thread-local storage names (#149)
- Scope logging now uses fmtlib when
LOGURU_USE_FMTLIBis set (#145)
Bug fixes
- Flush thread is now stopped and joined in
shutdown()(#281) - Fixed off-by-one in snprintf buffer size (#278)
- Fixed
CHECK_EQ_F(int64, int64)(#185) - Fixed exclusive file lock on Windows (#214)
- Fixed
DLOG_IF_Fmacro expansion on MSVC 2022 (#237) - Fixed
home_dir()on Windows and MinGW (#131, #170) - Fixed control character check on platforms where
charis unsigned (#280) - Static analyzer cleanups: member initializers, virtual destructor, allocation checks (#283)
Platform support
- FreeBSD and OpenBSD (#245)
- Solaris/illumos (#152)
- MinGW (#233)
- Older macOS and PowerPC (#276)
- Stack traces only enabled with glibc (#206)
-Werrorno longer on by default in CMake builds; opt in withLOGURU_WARNINGS_AS_ERRORS(#255)
Docs
Full changelog: v2.1.0...v2.2.0