* Add test case for #3351 (wrong GMT offset in SunOS/Solaris fallback)
* Fix#3352 (Missing test for Apple / POSIX.1-2024 chooses buggy workaround)
Apple platforms have had the tm_gmtoff-field at least since Mac OS X 10.0,
as are POSIX.1-2024 conforming systems, which are also required to support
it.
This has the unfortunate effect to use the SunOS/Solaris fallback, which
doesn't compute the correct value if the passed value of tm isn't the
current system time, i.e. localtime(::time()) (#3351).
* Fixed GMT offset test
---------
Co-authored-by: toh <toh@ableton.com>
SPDLOG_LEVEL is currently supported to control log levels via
load_env_levels.
This patch adds support for other environment variable names, such as
MYAPP_LEVEL, for load_env_levels.
* Enabled bin_to_hex utest for stdformat, and fixed std::formatter
* fixed usage of \ in macos.yml
* explicitly cast diff variable in test_sink
* moved from ::iterator to decltype
* added fix for custom callbacks
---------
Co-authored-by: Jan Koniarik <veverak@Jans-MacBook-Pro.local>
* Added Mapped Diagnostic Context (MDC) support
* Update include statement
* Optimize string creation
* Fix includes
* Fix padding rules in mdc empty case
* Add comment to describe the use of mdc formatter
* Added a function to add callbacks that are called when a logger is registered
* Fix non captured registration 2 not being properly tested for
* Replace std::list by std::vector
* Remove const refs to shared pointers
* Fix missing header
Reason for the discard_new policy: when there is an overflow, there
is usually some unexpected issue (a bug, or some other unexpected stuff).
And in case of unexpected issue, the first arrived log messages are usually
more important than subsequent ones. For example, some application
keep logging error messages in case of functionality failure, which,
when using async_overflow_policy::overrun_oldest, will overrun the
first arrived messages that may contain real reason for the failure.