0.10.0 (Squirrel) (unstable) - 19.01.2020: * fix amalgamation process for non POSIX.utf-8 locale (#65) * restore Python binding tests * simplify and document timeline features * allow using dynamic strings as labels for tracepoints in C language (C++ already had that feature) * fix memory leak on uninitializing HawkTracer library * implement automatic memory management for listeners (so the listener object no longer needs to be manually destroyed) * simplify FileDump and TCP listener's API (introduce one function to create listener and register it to a timeline) * introduce new, polished tracepoint macros * add more benchmark tests * minor bugfixes and documentation improvements * deprecate: - ht_timeline_register_listener: ht_timeline_register_listener_full should be used instead - ht_timeline_unregister_all_listeners: HawkTracer no longer allows unregistering listeners. Instead, user should call _stop() methods on the listener object 0.9.0 (Vole) (unstable) - 09.11.2019: * support dynamically allocated strings as labels for tracepoints * support auto-deleting tasks from task scheduler * add function for force-flushing file listener #51 * fix compilation on some platforms (thanks Iakov!) * fix thread safety of ht_timeline_flush() API #56 * allow configuring Global Timeline buffer size #59 * documentation improvements 0.8.0 (Frog) (unstable) - 18.03.2019: * fix library freeze on closing TCP connection * fix crash on multiple ht_init()/ht_deinit() calls * add python bindings for a core library * documentation improvements 0.7.0 (Rabbit) (unstable) - 14.01.2019: * fix crash when pushing events of size bigger than timeline's buffer * [api change] rename HT_EVENT_GET_CLASS to HT_EVENT_GET_KLASS * [api change] remove ht_timeline_listener_container_unref() from public API * fix data race when referencing/dereferencing timeline container object * enable code coverage reporting on CI * add feature for tracking heap allocations * support informations attached to tracepoints for Chrome Trace converter * remove C++ dependency for the HawkTracer core library * add amalgamation script for generating single source/header HawkTracer files * improvements in the installation process (thanks J. Kim and Alexandru!) * support reading big-endian data on little-endian platform (and vice versa) * many other tiny bug fixes and minor improvements 0.6.0 (Mouse) (unstable) - 26.08.2018: * implement converting HawkTracer stream to callgrind format * fix install problem with pkg-config files * fix ht_thread_get_current_thread_id() function * add information about system endianness and HawkTracer version to metadata stream * fix deadlock in TCP listener * add memory usage tracking feature for Linux-based platforms * add python bindings to a parser library * documentation improvements (tutorials, examples, missing function documentation) * publish documentation online (https://amzn.github.io/hawktracer/) * many other tiny bug fixes and minor improvements 0.5.0 (unstable) - 5.05.2018: * make parser library thread-safe * fix bug which was preventing from event multilevel inheritance * integrate Doxygen with a project * add library API documentation (current documentation coverage: 17%) * add license file for a project (MIT) * add parser tests (current parser code coverage: 96%) * fix buffer overflow in a ht_timeline_push_event() * add task scheduler * add CPU usage feature for Linux-based platforms * many small bug fixes and minor improvements 0.4.0 (unstable) - 22.03.2018: * port HawkTracer to Windows * setup continuous integration service (Jenkins) * create library for parsing HawkTracer stream * re-write client in C++, performance improvements * many bug fixes 0.3.0 (unstable) - 6.02.2018: library: * Review and update C library API * Add Timeline Features * Add possibility to extend Event data structure * Integrate MKCREFLECT library and use it to auto-generate event helper methods * Add file dump timeline listener * Add lots of tests for C library (increase test coverage to 87%) * Add few benchmark tests client: * Re-implement client functionality in C# and add support for new HawkTracer binary format * Implement loading HawkTracer data from file tools: * Re-implement tracepoint label generator in Python build: * Fix installation script 0.2.0 (unstable) - 7.07.2017: * add tool for generate function address map from binary file * add feature for finding closest label (if label is not specified in map) * implement simple command line parser for profiler 0.1.0 (unstable) - 30.06.2017: * implement prototype of tracing server * implement client for receiving tracepoints * implement simple tool for searching tracepoints in LUA and C++ files