CHANGELOG
Changelog for package rsl
1.2.0 (2025-06-11)
Remove devcontainer
Fix new clang-tidy warnings
Update Catch2
Ensure FindEigen3.cmake is not used (#126)
Eigen: Add NO_MODULE to find_package (#125) Work around RHEL 8 failure due to a faulty FindEigen3.cmake module being found
Hide symbols from shared libraries by default and support DLL creation
Fix static_string.cpp compilation with MSVC standard library std::array’s iterator is a pointer in libc++ and libstdc++ so const auto* works fine. However the array iterator is not a pointer on MSVC so compilation fails. Removing the asterisk still results in a pointer type being used but causes a clang-tidy check to fail so we have to disable that.
Disable TRY macro tests on MSVC
Disable compiler warnings by default Unconditionally enabling -Werror is a heavy-handed approach and not ideal when shipping code to be used by many third parties. In fact it’s even better to disable warnings by default since compiler warnings are not hard requirements. They’re merely a development tool that developers should opt into.
Contributors: Chris Thrasher, Christoph Fröhlich, Griswald Brooks, mosfet80
1.1.0 (2023-12-20)
Fix ament_target_dependencies integration
Add rsl::maybe_error
Disable tests by default
Stop using non-standard M_PI
Contributors: Chris Thrasher
1.0.1 (2023-12-06)
Add more messages for assertion failures
Document API changes from v0 to v1
Contributors: Chris Thrasher
1.0.0 (2023-12-04)
Add rsl::StrongType
Quote values in error messages
Make doxygen a weak dependency
Mark git as a test dependency
Contributors: Andrew, Chris Thrasher, Michael Carroll, Tyler Weaver, andrea
0.2.2 (2023-03-23)
Deprecate rsl::lower_bounds and rsl::upper_bounds
Depend on ament_cmake_ros for SHARED default
Upgrade with new pkgs to fix issue with ROS
Update Catch2
Contributors: Chris Thrasher, Tyler Weaver
0.2.1 (2022-11-29)
Use constructors over factory functions when possible
Implement rsl::rng with std::optional
Fix bug when trying to seed rng from first call
Make rsl::rng() tests more strenuous Seeding on the first call tests a code path that hadn’t yet been tested but is a valid use of the API.
Change version of range-v3 to allow building on Ubuntu Focal (#73)
Add missing header Fixes a build issue when using GCC 12
Make it easy for users to override
Update Catch2
Add tests for rsl::to_parameter_result_msg
Contributors: Chris Thrasher, Tony Najjar, Tyler Weaver
0.2.0 (2022-11-15)
New features * rclcpp::Parameter validator functions * Algorithms from parameter_traits * rsl::StaticVector and rsl::StaticString
Doxygen site: https://picknikrobotics.github.io/RSL/files.html * Link to the docs from the README * Use doxygen-awesome documentation style * Deploy documentation website from CI * Add Doxygen comments for rsl::Overload * Add Doxygen comments for TRY
Cleanups * Prevent unnecessary string copy * Ensure global constants do not violate the ODR * Hide rsl::NoDiscard implementation details * Use more [[nodiscard]] * Fix to_vector for vector<bool> * Ensure static container iterators are used * Default to building a shared library * Use generator-agnostic CMake commands * Remove C compiler settings * Don’t require compiler extensions * Use more expressive path variable * Add clang-tidy integration and fix errors * Address clang-tidy findings * Update FindCatch2 module * Update Catch2
Contributors: Chris Thrasher, Tyler Weaver
0.1.1 (2022-10-04)
Fix CMake configuration warnings
Contributors: Chris Thrasher
0.1.0 (2022-10-04)
monad.hpp - Functions and operators for monadic expressions
no_discard.hpp - [[nodiscard]] for lambdas
overload.hpp - Class template for easily visiting variants
queue.hpp - Thread-safe queue
random.hpp - Modern C++ randomness made easy
try.hpp - Macro to emulatate absl::CONFIRM or operator? from Rust
Contributors: Chris Thrasher, Tyler Weaver