external-1.4.0: - Added support for cmake >= 3.30 MIRAenvironment-1.11.0: - Removed support of Qt4 and added support of Qt6 MIRABase-1.23.0: - fixed PolygonExample (simplify(Polygon3f, ...)) for boost version >= 1.80 - boost::optional: - JSONDeserializer: JSON 'null' is deserialized as 'None' - boost::optional is marked with REFLECT_CTRLFLAG_VOLATILE - when an IsTransparentSerializable trait is true, it is expected to define a type DelegateTo, to support compile-time analysis of the reflection behaviour - added JSONSerializerTag (to support trait definitions for JSONSerializer/JSONDeserializer) - PropertyNode made safe against concurrent property tree manipulation: - internal mutex is recursive - lock mechanism slightly simplified (provides a scoped lock instead of lock+unlock methods), - set()/setFromJSON()/setFromString() try to lock the PropertyNode before changing the value, until after internal synchronize(), they have a parameter for the tryLock timeout, throw XIO on timeout (lock and synchronize is skipped for types that can have no subproperty - atomic etc.) - synchonize() locks the PropertyNode - PropertySerializer::reflectProperties() memorizes updated nodes internally instead of in the PropertyNode MIRAFramework-1.21.0: - fixed uninitialized TapeRecorder::mWarnOfDataLoss (initialize to false) - Authority, AuthorityManager, RemoteAuthority support timeout parameter on setProperty() methods GUI-2.0.0: - removed support of Qt4 and added support of Qt6 - updated documentation and test for QtUtils::asQImage() - PropertyDelegate_DoubleSpinBox accepts input in scientific format - made header PropertyEditorCommonDelegates.h public - moved some utility functions to PropertyEditorDelegatesUtils.h, and added general interfaces for delegate widgets - added PropertyEditor delegate + support mechanism for boost::optional - PropertyEditor catches exception from timeout on setProperty(), logs as warning - PropertyEditor delegates adapted to interface changes - TapePlayer widget: added keyboard shortcuts (see shortcuts help in miracenter) - replaced individual GUI packages by one GUI package Versions below 2.0.0 ----------------------------------------- - please refer to individual old changelogs MIRAPackage-1.8.0: - Removed support of Qt4 and added support of Qt6 - GitLab: repeat input of credentials if login was not possible - GitLab: allow the user to delete a package with local changes (default: false) while updating TapeEditor-1.1.0: - Removed support of Qt4 and added support of Qt6 MIRACenter-1.14.0: - Removed support of Qt4 and added support of Qt6 - added TapePlayer to keyboard shortcuts dialog MIRAWizard-1.3.0: - Removed support of Qt4 and added support of Qt6 - mirawizard CLI is built even with global option WITHOUT_GUI CommonVisualization-1.7.0: - fixed FramePublisher inadvertently setting untyped channels' type - unified PropertyEditor delegates for Time/Duration/Date and their human-readable variants - adapted all delegates/widgets to changes in GUIWidgets 1.16.0 - all delegates also support boost::optional (e.g. avoid PropertyNode::toTyped()) RobotDataTypes-1.6.0: - added support for using graphical tools on Wayland GraphVisualization-1.3.0: - Removed support of Qt4 and added support of Qt6 Navigation-1.5.0: - Removed support of Qt4 and added support of Qt6