156 Commits

Author SHA1 Message Date
Antony Polukhin
116dd872b8 Allow users to easily skip frames (API change), add more tests and update docs 2017-02-07 22:58:22 +03:00
Antony Polukhin
675ab7d65d Fix addr2line detection 2017-02-06 23:11:58 +03:00
Antony Polukhin
224750cbef Added more examples on safe_dump_to (shared memory example) and changed interface of safe dumping into the memory 2017-01-27 21:56:27 +03:00
Antony Polukhin
13fe06063b Added initial version of safe dumping 2017-01-19 21:59:37 +03:00
Antony Polukhin
c221f0c2dd Multiple minor fixes, improved docs, changed the example to use Boost.Exception 2017-01-13 22:36:25 +03:00
Antony Polukhin
1c5274f9fa Big refactoring: no more backends, only macro to enable additional functionality 2017-01-13 22:33:37 +03:00
Antony Polukhin
bd616a7249 Make a basic usecase the default one, add tests and create a target library for that 2017-01-13 22:31:03 +03:00
Antony Polukhin
85c31f691d Macro for enabling/disabling addr2line usage 2017-01-08 12:05:45 +03:00
Antony Polukhin
b7bf4b5932 Use libbacktrace, added more tests 2017-01-08 00:00:17 +03:00
Antony Polukhin
a2431640b9 Move around code in test to make Coveralls happy and produce more reliable coverage results 2017-01-03 16:09:02 +03:00
Antony Polukhin
34306df187 Added more tests with long stacktraces 2017-01-03 14:42:31 +03:00
Antony Polukhin
3f543731fa Added tests with long stacktraces 2017-01-03 14:36:01 +03:00
Antony Polukhin
d6c1350952 Improve backtrace formatting and output more information into the backtrace when source file info is unawailable 2017-01-03 12:58:28 +03:00
Antony Polukhin
898380d622 Relax one of the tests 2017-01-02 23:10:52 +03:00
Antony Polukhin
0b7fae6e48 Relax one of the tests: looks like ::backtrace() call sometimes outputs itself into the stacktrace 2016-12-26 22:47:11 +03:00
Antony Polukhin
16ef077fa4 Fix unsigned overflow in basic_stacktrace constructor, improve some tests, make sure that skipping 2 frames does not show internals to the user 2016-12-26 22:18:27 +03:00
Antony Polukhin
2893578446 detail::backend class does not own data any more 2016-12-26 22:15:53 +03:00
Antony Polukhin
99e4b53742 Started reimplementing stacktrace with Allocator 2016-12-26 22:12:29 +03:00
Antony Polukhin
7fd30ad905 Improve tests coverage 2016-12-10 02:44:09 +03:00
Antony Polukhin
c6bdf49f08 Better testing of examples, better tests coverage 2016-12-10 02:39:39 +03:00
Antony Polukhin
d8ff16f7a9 More tests 2016-12-10 01:39:04 +03:00
Antony Polukhin
dff9ba4074 Fix the test compilation (3) 2016-12-08 10:55:31 +03:00
Antony Polukhin
4f37ad05cd Fix the test compilation 2016-12-08 10:44:06 +03:00
Antony Polukhin
903a1dc081 Allow to setup max trace length, added more tests, added meta folder and updated the Jamfali for building docs 2016-12-08 10:02:28 +03:00
Antony Polukhin
4ce841ef65 Code deduplicated and simplified, added empty() functions and some explicit bool operators, speed-up and improved the output of the ostream operators, improved tests coverage 2016-12-01 09:55:17 +03:00
Antony Polukhin
fd513391ca Async signal safe backend implmented and notes about async-safety were added to the docs. 2016-11-30 10:47:58 +03:00
Antony Polukhin
aff892356f Changed classname from frame_view to frame 2016-11-25 21:59:30 +03:00
Antony Polukhin
b35614a7a5 Removed libunwind backend and forced all the backends to return source info from void pointer 2016-11-25 21:50:43 +03:00
Antony Polukhin
be3c2fa322 Remove debug line from test 2016-11-24 21:38:33 +03:00
Antony Polukhin
55e7b1981b Hand-write popen/pclose and close the strerr in the child process 2016-11-24 21:37:47 +03:00
Antony Polukhin
48eba3030d Make the linux backend print location in source file, extract function names even if they have no visibility, fix warnings 2016-11-24 21:36:32 +03:00
Antony Polukhin
fad2a7dc81 Added some thoughts on getting source file name and code lines for functions 2016-11-24 09:15:24 +03:00
Antony Polukhin
aaef5f134f Fix minor issues that are seen by tests and appeared after refactoring 2016-11-23 22:55:39 +03:00
Antony Polukhin
4da524a601 Debug printing enabled 2016-11-22 23:12:32 +03:00
Antony Polukhin
880252b1f0 Attempt to speedup AppVeyor (2) 2016-11-18 00:57:00 +03:00
Antony Polukhin
0df83bcbc9 Attempt to speedup AppVeyor 2016-11-18 00:55:35 +03:00
Antony Polukhin
d5ca2411cd Fix tests and TravisCI script 2016-11-17 22:49:49 +03:00
Antony Polukhin
e793933aa4 More tests for frames and noop backend 2016-10-29 09:31:50 +03:00
Antony Polukhin
4c30f8e9cb frame_view and iterator are not nested classes any more, reordered some functions to make reference documentation look better 2016-10-26 22:25:16 +03:00
Antony Polukhin
8fa8c93fdb Added operators for frame_view class, libunwind backend now stores addresses 2016-10-26 22:21:46 +03:00
Antony Polukhin
6c1fd6cba1 Improved docs, added more tests, made a frame_view class from class frame 2016-10-26 22:20:10 +03:00
Antony Polukhin
e16e1a4a60 Do not use operator[] to avoid dangling references 2016-10-25 21:53:48 +03:00
Antony Polukhin
b8dcd2b553 Working version of iterator and frame 2016-10-25 21:52:29 +03:00
Antony Polukhin
bd59ec8bef Strted implmenting the iterators and frame class 2016-10-25 21:51:27 +03:00
Antony Polukhin
ab6cb7483e Added support for hashing 2016-10-12 20:26:09 +03:00
Antony Polukhin
2440061676 Output more information in stacktraces (instruction offsets and function addressees) when apropriate 2016-10-12 20:23:54 +03:00
Antony Polukhin
b75dfd361c Added comparison operators and tests for them 2016-10-12 20:22:24 +03:00
Antony Polukhin
0963de1ff7 More examples, added content to 'getting started' section in docs, improved some tests 2016-09-14 22:01:49 +03:00
Antony Polukhin
bd07777485 More examples and removed inclusion of some unused headers 2016-09-14 22:00:19 +03:00
Antony Polukhin
76cfb88fc0 Fixes for linkage and tests 2016-09-14 21:58:15 +03:00