Name: Cube C++ Library
Version: 4.9
    - Various bug fixes in library.
    - CubeLib assigns proper role and paradigm to the regions for the old fashioned cube3 profiles.
    - CubeLib can be build to be used with Qt+android projects.
    - Support of server side plugins.
    - Fixed issues with the usage of tools in case of a measurement inclusing GPUs.
    - CubeLib can generate topologies based on systemtree data; automatically via cube_remap2 and interactively via
      cube_topoassist.
    - Adds cube_popx_metrics tool to calculate POPx metrics.
    - cubelib-config replaces the command line option --common-/--cubelib-revision by the option --revision.
    - cubelib-config adds the command line option --ltldflags, which prints the required linker flags for libtool consumption.
    - Configure option --disable-tests disables the testsuite during make check.
    - Adds optional cmake build system.
    - Improves performance of cube_remap2 tool (and other tools) by using asynchronous computation via c++11 tasks.
    - Adds GPU efficiencies in set of POP metrics, calculated by cube_popx_metrics tool.
    - Improves performance of the library by using asynchronous computation via c++11 tasks.
    - Adds alternative output format to cube_dump, that includes region names in a csv format.
    - Extended CubePL calls with "cube::metric::get::", "cube::callpath::get", "cube::region::get", "cube::stn::get", "cube::locationgroup::get" and "cube::location::get"
      to allow evaluation of the attributes.
    - Extended CubePL calls with "cube::metric::set::", "cube::callpath::set", "cube::region::set", "cube::stn::set", "cube::locationgroup::set" and "cube::location::set"
      to allow to set the attributes.
    - Extended CubePL engine with the call "print" for printing out the results into the standars output.
    - Version of CubePL syntax is 1.2 now.

Version: 4.8.2
    - Improvements in cube_server.
    - cubelib-config reports its git revision properly.
    - Fixes bug in the calculation if metric type is not trivial.
    - Various bug fixes in library.

Version: 4.8.1
    - cube_remap2 stops early if no .spec file found, neither as a file nor inside of the .cubex.
    - Various bug fixes in library.
    - Fixed usage of depricated calls std::binary_function and
    std::unary_function.
    - Fixed performance regression during the cube structure reading.

Version: 4.8
    - Reimplemented cube_server using c++11 tasks instead of fork.
    - Improved performance of cube_remap2 tool and other parts of library.
    - cube_test accepts value "all" for command line options "-e" and "-s".
    - cube_test returns error code.
    - Support of Intel oneAPI, NVIDIA HPC SDK and AMD ROCm compilers.
    - Library doesn't use real user/group names and UIs.
    - Various bug fixes in library.
    - Small tweaks in tools guide.

Version: 4.7
    - Voiding one metric voids its whole subtree. Important for remapping .spec files.
    - cube_dump also prints CUBE file meta data by section.
    - cube_remap2 uses only CPU threads to calculate SCALASCA metrics.
    - cube_cut accepts multiple regions for reroot and prune operations.
    - Fixed handling of cube files containing GPU locations.
    - CubePL operator "defined" can be used to test if metric is defined.
    - Support for location type CUBE_LOCATION_TYPE_ACCELERATOR_STREAM and location group type CUBE_LOCATION_GROUP_TYPE_ACCELERATOR.
      CUBE_LOCATION_TYPE_ACCELERATOR_STREAM is an alias for CUBE_LOCATION_TYPE_GPU and has the same numerical value.
    - Added a call  "bool cube_make_unique_name ( const string&, string& )" to perform the metric unique name correction to
      ensure one can use this metric in CubePL expression.
    - Various bug fixes in library.

Version: 4.6
    - cube_server lists only CUBE files.
    - Removed cube_score as EPIK traces are depricated.
    - Support for region names with non-latin symbols.
    - Added memory dump for CubePL engine.
    - cube_dump prints our CubePL memory if configured with --enable-debug.
    - Various bug fixes in library.

Version: 4.5
    - Use mangeled region names in option -r for the tool cube_stat.
    - Using <regex> of C++11 instead of POSIX regex.h. Requires gcc >=4.9 or another compiler with working support of C++11.
    - Library is thread-safe and reentrant. Require C++11 mutexes.
    - Removed custom memory management for non-trivial data types as it led to segfault while finalization.
    - Various bug fixes in library.

Version: 4.4.4
    - Fixed handling of attributes and parameters by the library and tools.
    - Require C++11 standard for the build.
    - Extended CubePL with the support of a custom aggregation operator for the postderived metrics.
    - Do not loose attributes during remapping anymore.
    - Fixed generation of PDF documentation.
    - Improved rerooting.
    - Various bug fixes in library.

Version: 4.4.3
    - Support for >8Gb files via PAX headers.
    - Extended cube_stat output.
    - Removed creation of the topology "Process x Thread [ x GPU ]" in cube_remap2.
    - Extended CubePL postderived metrics calculation.
    - Various bug fixes in library.

Version: 4.4.2
    - Fixed bug in declustering algorithm leading sometimes to the wrong results.
    - Improved generation of the temporary directory.
    - cube_dump tool prints out the call path parameters.
    - cube_remap2 tool creates topology "Process x Thread [ x GPU ] and adds it to the result file.

Version: 4.4.1
    - Improvements of the tools guide:
      - elaborate purpose and details of missing tools;
      - describe details of the remapping tool;
      - describe syntax of .spec file.
    - Split "tau2cube" into library and an application.
    - Keep order of parameters and attributes.
    - Set metric inactive if VOID.
    - Fixed performance issues in CubeIoProxy.
    - Various bug fixes in library.

Version: 4.4
    - One can mark derived metrics as "non convertible" to prevend convertion into data and as "non cacheable" if their value is runtime dependent.
    - Build system improvements.
    - Documentation infrastructure refactoring.
    - Improvements in Cube Tools:
      -- cube_stat only shows all call-tree root nodes;
      -- cube_stat supports 'unlimited' as argument for '-t' option;
      -- improved memory footprint of cube_dump and cube_remap2;
      -- cube_calltree annotated its output properly;
      -- split cube_remap2 into a library and an application to allow its usage in another tools;
      -- cube_remap2 copies ghost metrics into target cube as well.
    - CUBELIB_DEBUG and CUBEPL_VERBOSE_METRICS set CubePL engine into verbose mode..
    - Cube tools do not append wrongly .cubex extension.
    - Fixes in CubePL engine:
      -- support for metric::call::<uniq_name>;
      -- fixed seg fault if the metric "rowwise=false";
      -- fixed seg fault while metric::set of unknown metric;
      -- reference to a metric in CubePL Init section doesn't crash anymore;
      -- added an automatic variable to refer to global sysres id;
      -- "?" within a regex is not ignored anymore.
    - Remapper doesn't unhide "omp" metrics, if no OpenMp region detected, but -s option.
    is provided.
    - Fixed a seg fault if Cube tries to read a non-Cube file, like .txt.
    - Provide examples of typical cube files.
    - Various bug fixes in library.
    - Using ScoreP for Library instrumentation for the automatic performance benchmarking.
    - Extended list of the environment (CUBE_TMPDIR, CUBE_TEMP, CUBE_TMP) variables for storing the temporary data.
    - Improved performance of the multiplication in CubePL engine (short evaluation).
    - Bug fixes in CubePL engine related to the assignment "=".
    - Fixed support of "if - elseif (x) - else " construction in CubePL.
    - Added support for comments in CubePL.
    - Fixed bug in "lowercase" and "uppercase" handling in CubePL.
    - Use rowwise calls in cube_cmp, cube_diff and other tools.
    - Various bug fixes in library.
