Skip to content

Releases: jeremy-rifkin/cpptrace

Version 0.7.5

05 Jan 05:46
6689d14
Compare
Choose a tag to compare

Fixed:

  • Fixed missing <typeinfo> include #202
  • Added __cdecl to a terminate handler to appease MSVC under some configurations #197
  • Set C++ standard for cmake support checks #200
  • Changed hyphens to underscores for cmake component names due to cpack issue #203

Version 0.7.4

21 Dec 22:15
5b3f2fb
Compare
Choose a tag to compare

Added:

  • Added <cpptrace/version.hpp> header with version macros

Fixes:

  • Bumped libdwarf to 0.11.0 which fixes a number of dwarf 5 debug fission issues

Other:

  • Various improvements to internal testing setup

Version 0.7.3

15 Nov 23:43
4354eb2
Compare
Choose a tag to compare

Fixed:

  • Fixed missing include affecting macos #183
  • Fixed issue with cmake not using the ccache program found by find_program #184
  • Fixed missing include and warnings affecting mingw #186
  • Fixed issue with identifying inlined call frames when the DW_TAG_inlined_subroutine is under a DW_TAG_lexical_block
  • Fixed a typo in the README
  • Improved unittest support on various configurations
  • Improved unittest robustness under LTO
  • Fixed bug signal_demo in the event fork() fails

Added:

  • Added color overload for stacktrace_frame::to_string
  • Added CMake export() definition for cpptrace as well as a definition for libdwarf which currently doesn't provide one

Changed:

  • Updated documentation surrounding the signal safe API

Version 0.7.2

06 Oct 21:18
e89eb61
Compare
Choose a tag to compare

Changes:

  • Better support for older CMake with using FetchContent_Declare from a URL #176
  • Better portability for page size detection #177
  • Improved compile times #172
  • Split up cpptrace.hpp into finer-grained headers for lower compile time impact
  • Some minor readme restructuring

Version 0.7.1

13 Sep 13:21
06eb15b
Compare
Choose a tag to compare

Added

  • Better support for finding libunwind on macos #162
  • Support for libbacktrace under mingw #166

Fixed

  • Computation of object address for safe object frames #169
  • Nested microfmt in cpptrace's namespace due to an ODR problem with libassert jeremy-rifkin/libassert#103
  • Compilation on iOS #167
  • Compilation on old MSVC #165
  • Dbghelp use on 32 bit #170
  • Warning in brand new cmake due to FetchContent_Populate being deprecated #171

Other changes

  • Bumped the buffer size for execinfo and CaptureStackBackTrace to 400 frames
  • Switched to execinfo.h for unwinding on clang/apple clang on macos due to _Unwind not working with -fno-exceptions #161

Version 0.7.0

21 Aug 17:12
0742b42
Compare
Choose a tag to compare

Added

  • Added cpptrace::from_current_exception() and associated exception handler macros to allow tracing of all exceptions,
    even without cpptrace traced exception objects.

Fixes:

  • Fixed issue with using resolve_safe_object_frame on safe_object_frames with empty paths
  • Fixed handling of dwarf 4 rangelist base addresses when a DW_AT_low_pc is not present
  • Fixed use of -g with MSVC

Other changes:

  • Bazel is now supported on linux (#153)
  • More work on testing
  • Some internal refactoring

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