Releases: odygrd/quill
Releases · odygrd/quill
v1.7.3
v1.7.2
v1.7.1
v1.7.0
New Features
- Add a new function
quill::get_all_loggers()
that returns all the existing
loggers. (#114) - Add
%(level_id)
to pattern formatter. (#136) - Users can now specialise
copy_loggable<T>
to mark user defined types as safe to
copy. (#132)
Improvements
- Update bundled fmt to 8.1.1
- Fix initializations for C++17.
- Fix compiler warning in
check_format()
function. - Replace
QUILL_DUAL_QUEUE_MODE
withQUILL_DISABLE_DUAL_QUEUE_MODE
inTweakMe.h
. - Minor performance and accuracy improvements to rdtsc clock used by the backend logging thread.
- Fix compile error when C++20 is used. (#162)
- Fix
get_page_size()
to only call sysconf once. (#160) - Previously if
quill:start(true)
was called more than once in the application, the signal handlers would get
initialised again. Now any subsequent calls toquill:start(true)
will now have no effect
(#167) - Previously when the max limit of rotated files in
RotatingFileHandler
was reached, quill would stop rotating and
instead keep logging everything into the last log file. Now when the maximum limit of files is reached,
quill will now keep rotating by replacing the oldest logs. (#157) - Improve the backend logging thread responsiveness when variables are logged in loops without any delay
from multiple threads. (#116) - Fix some undefined behaviour issues reported via the AddressSantizer on the backend logging
thread. (#166)
Bug Fixes
- Fix incorrect timestamps in the log file when the system clock is
updated. (#127)
v1.6.3
v1.6.2
v1.6.1
v1.6.0
New Features
- Dual queue mode offering even lower latencies on hot paths. See Dual Queue Mode.
- Added a signal handler for linux and windows. The signal handler flushes the log when the app crashes or exits. (#1)
- Added support for custom handlers. (#75)
- Quill now compiles and runs on Cygwin.
Improvements/Fixes
- The queue from the caller to the backend worker thread has been reworked. The new queue generates slightly better assembly than the previous one. Quill does no longer depend on mapping the same region of physical memory twice.
- Replaced an assertion check that could trigger incorrectly. (#68)
- Fixed build on
ARM_ARCH < 6
. (#78) - Fixed compile errors when
QUILL_NOEXCEPTIONS
,CMAKE_CXX_STANDARD 20
,QUILL_USE_BOUNDED_QUEUE
are set. - The unit tests have been moved to a separate binary with their own
main()
. This increased build times when building the tests, but the failures are now easier to debug on different CI platforms and the tests can also run faster in parallel. - Fixed minor compiler warnings on windows.
- Upgraded bundled libfmt to
7.1.3
- Updated readme benchmarks section for v.1.6.0
Note
- If a custom queue capacity is defined using
#define QUILL_QUEUE_CAPACITY
after1.6.0
the whole library needs to be recompiled.