Skip to content

v0.6

Latest
Compare
Choose a tag to compare
@dfeneyrou dfeneyrou released this 30 Dec 21:33
· 38 commits to main since this release

This is a feature delivery release

Compared to the previous release, the main added changes are:

  • Feature (global): efficient printf-like logging (supersedes markers).
    • nanosecond logging performance
    • format arguments can be searched and graphed
  • Feature in the viewer: some exports have been added
  • Important fix: instrumentation crash under stress
  • Important fix: correctness of multi-resolution graphs

Behavior change / compatibility break

  • Viewer: the marker window has been replaced with the log window, which generalizes markers and provides more features
  • Viewer: old stored records will not be readable anymore (incompatibility due to somes changes for the logs)
  • Instrumentation: old viewers are not compatible, due to transport header change.
  • Instrumentation: plMarker APIs are deprecated.
    • they are currently wrapped on plLogWarn function and will be removed soon

New features

  • Global: efficient printf-like logging
    • nanosecond logging performance
    • format arguments can be searched and graphed
    • a comparison with Nanolog and spdlog is provided
  • Viewer: some exports available
    • anywhere with ctrl-P for screen capture
    • in main menu bar for Chrome Trace Format (JSON)
    • in text and log windows for a text export
    • in plot windows for CSV export

Fixes and improvements

  • C++ instru: remove a critical flaw in the event collection mechanism which could lead to a crash under stress (thanks @gpascualg for the report with details)
  • Python instru: the filename of the exception source is now provided in the log text, along with the line number
  • Viewer: reworked the computation of the multi-resolution of the graphs. Previous version was broken and provided poor visual results
  • Viewer: fix the profiling applied always on a particular thread, for threads without provided names (thanks @jojado8408 for reporting)
  • Code cleaning: fix "issues" highlighted by the tool include-what-you-use
  • Code cleaning: fix "issues" highlighted by the static analysis tool CodeChecker
  • Code cleaning: remove warnings when compiling under Windows with the flag /W4 /permissive- (thanks @gpascualg and @BrodyHiggerson)