Release 1.2.0 - 20.04.2020 NEW FEATURES - Calibration: added new camera calibration module, with better UI and support for stereo calibration. - Cameras: originDescription in data streams now more concise and unique. - eDVS: added 'cameraID' configuration attribute to specify a custom serial number, to allow the user to disambiguate multiple cameras. - MacOS X: set default CMake destination to /usr/local on Apple systems. - File/Netork Output: implement 'timeout' parameter to stop recording after a certain time has passed (issue #292). - Core: added support for Google Perftool's head and CPU profilers. Please see the relevant NOTE in README.md. - Services: added OpenRC init script, improved systemd install script, used more standard paths for systemd init script, added sysusers support. - Ubuntu: support for release 20.04 LTS 'Focal Fossa'. - dv-runtime CLI: -a 0/1 and -b 0/1 command-line options to dv-runtime are now only valid for that particular dv-runtime invocation and are not saved as part of the permanent XML configuration, nor do they modify it (issue #240). - ConfigServer: various improvements, all GET* requests now return the full attribute information, type specification is not needed anymore. - dv-control: new get_type command, type specification not needed anymore. - SDK API Portable IO: added C++ variants of portable IO functions. BUG FIXES - MacOS X: fix duplicate-symbol linker error with Apple Clang compiler and TLS __getDefaultConfig() function variable when including <dv-sdk/module.hpp> into multiple compilation units within the same module. - File Input: fix reset of 'seekEnd' configuration attribute if manually removed. - SDK API Types: add missing const to TimeElementExtractor argument. - SDK API portable_get_user_home_directory(): correctly handle getenv() and getpwuid_r() failures. - Config / Log: write temporary configuration and log files to global temporary directory to avoid permission issues, original system directories might not allow writing to dv-runtime user. - ConfigTree: ensure attribute updaters are removed when their corresponding attributes or nodes are, to avoid dangling references (issue #212). - Modules / Log: per-module log-level now only applies to messages originating from user functions within a module, all other messages use the system log-level (issues #226 and #246).