Ariles
Changelog
CHANGELOG
=========
UNRELEASED
==========
2.5.0
=====
Changed
-------
* API BROKEN: cmake changes not backward compatible!
* Rename exported cmake targets: use namespace and consistent naming.
* Require cmake >= 3.13.
* Use visibility attributes to hide stuff instead of making it public explicitly.
Removed
-------
* Deprecated `${PROJECT_NAME}-${ARILES_COMPONENT}_LIBRARIES` cmake variables.
2.4.0
=====
Added
-----
* `ariles2::Any2`: a replacement for deprecated `ariles2::Any`.
* read/write `FileVisitorImplementation`: internal helper class for consistent file handling.
* Ubuntu 24 Noetic tests and binary packages.
2.3.2
=====
Fixed
-----
* std::vector<bool> support
2.3.1
=====
Fixed
-----
* Static check errors.
2.3.0
=====
Added
-----
* namevalue2 visitor: improved version of now deprecated `namevalue`.
2.2.0
=====
Added
-----
* aggregate visitor: container for multiple visitors applied sequentially.
* ros2param visitor: ROS2 parameters support.
Changed
-------
* Switched to C++17.
* Disable sanitizers: broken in Ubuntu, a workaround needed.
Fixed
-----
* Matrix reading logic.
* Exception messages.
* Null pointer handling.
Removed
-------
* `ARILES_CPP_STANDARD` cmake option.
* `ARILES2_INCLUDED` define.
2.1.0
=====
Added
-----
* Writers now take `allow_missing_entries_` parameter into account, omitting
'missing' entries, e.g., null pointers.
* Searching for `yaml-cpp` and `msgpack` with `find_package()`.
* `ARILES_CPP_STANDARD` cmake flag.
* `ariles::write::Parameters`: +`allow_missing_entries_`
* `OptionalPointer` wrapper class for pointers that can be NULL if entry is missing.
Removed
-------
* Makefile/CI: `install-jsonnet` target
* Redundant `cmake/options_cpp11_on_noros_*.cmake`
* C++03 compatibility
2.0.3
=====
Added
-----
* CI: add Ubuntu 22 tests and packages
Removed
-------
* CI: drop Ubuntu 18 support
2.0.2
=====
Added
-----
* CI tests for Ubuntu 20 (Focal).
* Debian package publication at cloudsmith.
Removed
-------
* CI tests for Ubuntu 16 (Xenial).
2.0.1
=====
Fixed
-----
* Compilation with colcon, when each ariles visitor is installed in a separate
directory.
* ROS core crashes in github actions.
Added
-----
* clang-tidy checks.
* Allow storing matrices as arrays of vectors instead of flat matrices with dimensions.
* Allow building static libraries.
Removed
-------
* Deprecated cmake macro.
2.0.0
=====
Changed
-------
* Ariles namespace (`ariles` -> `ariles2`).
* Renamed visitors: `ros` -> `rosparam`, `array` - > `namevalue`.
* Ariles entry and parent class declaration API, refer to examples and tests.
Added
-----
* `graphviz` visitor for diagram generation.
* `copyto` & `copyfrom` visitors to exchange data with arbitrary non-ariles
classes, in particular ROS messages.
* `std::complex` support.
Removed
-------
* APIv1 support
* Autogenerated `adapters_all.h` and `ariles_all.h` headers.
`ARILES_ENABLE_CORE_ALL_HEADER` cmake parameter.
* `ARILES_DEFAULT_FLOAT_VALUE` and `ARILES_DEFAULT_DOUBLE_VALUE` cmake
parameter. These parameters can still be changed with a preprocessor
definition.
* `ARILES_DEFAULT_CONFIGURABLE_FLAGS` cmake parameter, can still be set using
preprocessor. Corresponding test cases have also been dropped.
* Ubuntu 14.04 (Trusty) tests.
* yaml-cpp03 support.
* C++03 tests.
* cmake 2.x support.