Skip to content

Releases: jeremy-rifkin/cpptrace

Version 0.6.3

14 Jul 04:17
90de25f
Compare
Choose a tag to compare

Added:

  • Added a flag to disable inclusion of <format> by cpptrace.hpp and the definition of formatter specializations

Fixes:

  • Fixed use after free during cleanup of split dwarf information #141
  • Fixed an issue with TCO by clang on arm interfering with unwinding skip counts for internal methods
  • Fixed issue with incorrect object addresses being reported on macos when debug maps are used
  • Fixed issue with handling of split dwarf emitted by clang under dwarf4 mode

Other changes:

  • Added note about signal-safe tracing requiring _dl_find_object to documentation and fixed errors in the signal-safe
    tracing docs
  • Added more configurations to unittest ci setup
  • Optimized unittest ci matrix setup
  • Added options for zstd and libdwarf sources if FetchContent is being used to bring the dependencies in
  • Optimized includes in cpptrace.hpp

Version 0.6.2

20 Jun 01:42
ea56677
Compare
Choose a tag to compare

Fixes:

  • Fix an issue with unwinding to collect stack traces during exception creation on arm #134
  • Fix issue where dladdr1 wasn't being used even when detected

Robustness:

  • Setup more robust unit tests and added them to CI

Version 0.6.1

12 Jun 03:37
7543677
Compare
Choose a tag to compare

Fixes:

  • Fix for detection of dladdr1 and _dl_find_object support

Version 0.6.0

29 May 03:24
06226ee
Compare
Choose a tag to compare

New:

  • Added a cpptrace::system_error utility
  • Added support for musl #128
  • Added support for split dwarf / debug fission

Fixes:

  • Fixed address formatting in stack traces
  • Fixed frame pointer calculation for signal frames from libunwind #123
  • Fixed dwarf_ranges handling of lowpc == pc causing erroneous symbol resolution
  • Fixed implementation of the exception helper system/reference implementation's lazy_trace_holder

Version 0.5.4

02 May 16:48
0db934c
Compare
Choose a tag to compare

Fixes:

  • Fixed bug with resolving object information when dladdr is used and an unexpected argv[0] is provided to the
    binary.

Version 0.5.3

30 Apr 04:16
14d25fd
Compare
Choose a tag to compare

Fixes:

  • Fixed bug with formatting of hex values on MSVC
  • Fixed error handling for libbacktrace back-end when debug info is not present
  • Fixed bug with cmake resolution of zstd when no zstd cmake config file is installed

Other changes:

  • Added error handling for an edge case in the signal tracing demo
  • Updated conan recipe to allow libunwind to be chosen
  • Improved msvc support in internal formatting system
  • Bumped libdwarf to 0.9.2

Version 0.5.2

01 Apr 04:33
0dd71ce
Compare
Choose a tag to compare

Fixes:

  • Fixed bug with resolution of inlined calls

Other changes:

  • Improved internal string formatting
  • Improved internal error handling

Version 0.5.1

21 Mar 03:13
b72164b
Compare
Choose a tag to compare

Fixes:

  • Fix MSVC warning treated as error for 32-bit windows
  • Fix MSVC issue with min/max macros
  • Fix potential null dereference issue identified by eyalgolan1337

Version 0.5.0

16 Mar 23:04
9b69d20
Compare
Choose a tag to compare

New:

  • Traces with source code snippets with cpptrace::stacktrace::print_with_snippets
  • Added cpptrace::get_snippet utility
  • Added cpptrace::can_signal_safe_unwind utility
  • Added stacktrace_frame::get_object_info

Changes:

  • The library is now compiled with position-independent code by default

Fixes:

  • Fixed issue with _dl_find_object implementation

Misc:

  • Various refactoring, cleanup, and improvements

Version 0.4.1

28 Feb 04:54
58992cb
Compare
Choose a tag to compare

Changes:

  • Renamed stacktrace_frame.address -> stacktrace_frame.raw_address
  • Added stacktrace_frame.object_address
  • Fixed segfault due to an edge case with dwarf file table indices
  • For the libdwarf back-end: At least show object frame information if resolution fails
  • Extremely small performance improvements
  • Small documentation updates
  • Small fix for conan
  • Updated cmake to not FetchContent zstd when using CPPTRACE_USE_EXTERNAL_LIBDWARF
  • CI improvements
    • Test the default configuration first before doing the exhaustive and slow matrix of all configurations.
    • Cleanup of duplicated prerequisite installation code
    • Cleanup of built and test python scripts