Skip to content

Releases: morganstanley/binlog

2021-04-16

16 Apr 13:41
2021-04-16
Compare
Choose a tag to compare

Major release with new fatures.
In CI, C++17 is preferred now (but C++14 is still being tested on Linux),
and the online documentation is updated automatically on merge.
Boost is no longer required to build the tests, doctest is used instead.

Changed

  • Change default bread date format to %Y-%m-%d %H:%M:%S.%N
  • Make this_thread::get_id() the name of default_thread_local_writer

Added

  • Make MSERIALIZE_MAKE_STRUCT_TAG support C-style array members
  • Allow logging addresses, display them in hex
  • Make time_point loggable with pretty printing
  • Support logging of std::filesystem components
  • Support logging of std::variant
  • Support logging of std::error_code

Fixed

  • Allow noexcept getters in C++17
  • Repeated singular objects (e.g: empty tuple) do not spam the output
  • Avoid not-helpful -Wtype-limits on GCC 10.2
  • Fix bread bugs uncovered by fuzzy testing

2020-04-26

26 Apr 16:36
2020-04-26
Compare
Choose a tag to compare

Bugfix release with minor new features.

Added

  • Support logging of std::optional
  • binlog/char_ptr_is_string.hpp: treat char* as string if included
  • Example of using TSC as log clock

Fixed

  • Fix overflow in ticksToNanoseconds
  • Use -Wshadow on supporting compilers, fix warnings
  • Do not call memcpy with null, even if size is 0
  • Fix interaction with non-conforming libc++ bool vector

Initial Release

29 Feb 20:43
2020-02-29
Compare
Choose a tag to compare

Features

  • Log (almost) anything:
    • Fundamentals (char, bool, integers, floats)
    • Containers (vector, deque, list, map, set and more)
    • Strings (const char pointer, string, string_view)
    • Pointers (raw, unique_ptr, shared_ptr and optionals)
    • Pairs and Tuples
    • Enums
    • Custom structures (when adapted)
  • High performance: log in a matter of tens of nanoseconds
  • Asynchronous logging via lockfree queues
  • Format strings with {} placeholders
  • Vertical separation of logs via custom categories
  • Horizontal separation of logs via runtime configurable severities
  • Sort logs by time while reading
  • Recover buffered log events from coredumps

Also see the Full Documentation at binlog.org