Releases: eProsima/dev-utils
v1.1.0
This release includes the following dependencies update:
Repository | Old Version | New Version | |
---|---|---|---|
Foonathan Memory Vendor | eProsima/foonathan_memory_vendor | v1.3.1 | v1.3.1 |
Fast CDR | eProsima/Fast-CDR | v2.2.4 | v2.2.5 |
Fast DDS | eProsima/Fast-DDS | v3.0.1 | v3.1.0 |
v1.0.0
This release includes the following Features:
- Add support for Fast DDS v3.
This release includes the following features in cpp-utils
project:
- Refactor
ReturnCode
to prevent incompatibilities. - Add functions to convert QosPolicy's ids and masks to string.
- Add function to convert a number of bytes into a formatted string.
This release includes the following features in cmake-utils
project:
- Extend
compile_tool
function to accept additional directories to use when compiling the tool.
This release includes the following CI improvements:
- Upgrade to Ubuntu Noble (24.04).
- Remove Ubuntu Focal (20.04) from the CI.
- Update GCC version for Thread Sanitizer job.
- Set test report names for each action.
- Add support for builds with both Fast DDS v2 and v3.
- Empty XTSAN tests list to run all tests with Thread Sanitizer.
This release includes the following dependencies update:
Repository | Old Version | New Version | |
---|---|---|---|
Foonathan Memory Vendor | eProsima/foonathan_memory_vendor | v1.3.1 | v1.3.1 |
Fast CDR | eProsima/Fast-CDR | v2.2.0 | v2.2.4 |
Fast DDS | eProsima/Fast-DDS | v2.14.0 | v3.0.1 |
v0.6.0
This release includes the following features in cmake-utils
project:
- Extend
find_packages
function to load module dependency versions.
This release includes the following features in cpp-utils
project:
- New Log Configuration class to configure the Log class.
- Split the CustomStdLogConsumer class into a BaseLogConsumer class that filters logs based on their kind and content and a StdLogConsumer class that prints the logs through std.
- Add function to convert a string with a floating number followed by either the letters B, KB, MB, GB, TB, PB or KiB, MiB, GiB, TiB, PiB to bytes.
This release includes the following dependencies update:
Repository | Old Version | New Version | |
---|---|---|---|
Foonathan Memory Vendor | eProsima/foonathan_memory_vendor | v1.3.1 | v1.3.1 |
Fast CDR | eProsima/Fast-CDR | v2.1.3 | v2.2.0 |
Fast DDS | eProsima/Fast-DDS | v2.13.1 | v2.14.0 |
v0.5.0
This release includes the following features in cmake-utils
project:
- Add
MODULE_PUBLIC_EXTRA_HEADERS
andMODULE_PRIVATE_EXTRA_HEADERS
as new options to add extra includes path. - Introduce optional arguments in
compile_library
function to explicitly set source files. - Add optional arguments to
all_library_sources
and 'add_unittest_executable` functions to explicitly set source files.
This release includes the following features in cpp-utils
project:
- Add base64 string encoder and decoder.
- Append tree leaf nodes (dependencies) before the trunk.
- Add ROS 2 mangling methods.
- Fix
ros2_msgs_format
function. - Add missing thread library.
- Add function to convert FuzzyLevel to string.
This release includes the following dependencies update:
Repository | Old Version | New Version | |
---|---|---|---|
Foonathan Memory Vendor | eProsima/foonathan_memory_vendor | v1.3.1 | v1.3.1 |
Fast CDR | eProsima/Fast-CDR | v1.1.0 | v2.1.3 |
Fast DDS | eProsima/Fast-DDS | v2.11.0 | v2.13.1 |
v0.4.0
- CI new features:
- Update CI to use eProsima CI.
- New package py_utils with Python utils:
- logging utils
- debugging utils
- WaitHandlers implementations
- Timer implementations
- Sub-packages updated:
- cmake_utils
- Refactor the way to set labels to tests.
- cpp_utils
- Add some utils functions.
- cmake_utils
- Dependencies update:
Repository Old Version New Version Foonathan Memory Vendor eProsima/foonathan_memory_vendor v1.3.0 v1.3.1 Fast CDR eProsima/Fast-CDR v1.0.27 v1.1.0 Fast DDS eProsima/Fast-DDS v2.10.1 v2.11.0
v0.3.0
This release includes the following features in cpp-utils
project:
- New event StdinEventHandler class to easily read from std::cin.
- New event CommandReader class to easily read from std::cin commands synchronously.
- New container SafeDatabase class to implement a thread safe map.
- New container Tree class to implement a thread safe map.
- Extend enumeration builder.
- Extend iterative macros max range.
- New Heritable class to represents an object that could be of the class T or any other child of it.
This release includes the following fixes in cpp-utils
project:
- Fix ASAN memory leak in ThreadPool.
v0.2.0
This release includes new features and updates in the following CMake projects: cmake_utils
, cpp_utils
, and dev-utils
.
This release includes the following features in dev-utils
project:
- dev_utils package with tools for programmers to help in implementation process
- Code auto-generator for Custom Enumerations.
This release includes the following features in cpp-utils
project:
- Logging module: simplify and fixed TSAN issues
- Math module: new Random Manager class
- Types module: new Singleton Auxiliary class
This release includes the following features in cmake-utils
project:
- Support minimum version requirement when finding a package.
This release includes the following Continuous-Integration features:
- Address Sanitizer check for all tests.
- Thread Sanitizer check for all tests.
-Wall
warning level for CI.- Add Python linter check in CI.
v0.1.0
This release includes the following CMake projects: cmake_utils
and cpp_utils
.
This release includes the following features in cmake_utils
project:
- Compilation macros:
compile_documentation
,compile_library
,compile_test_library
,compile_test_documentation
,compile_test_tool
,compile_tool
, andconfigure_test_flags
. - C++ common macros:
check_cpp
,check_cpp_17
,set_cmake_build_type
,activate_code_coverage
,configure_project_cpp
,custom_cpp_flags
,find_external_projects
, andfind_thirdparties_headeronly
. - Packaging macros:
eprosima_packaging
,install_resources
, andeprosima_install_resources
. - Project specific macros:
configure_project
,set_installation_paths
,load_project_settings
,read_commit_hash
,read_version
, andconfigure_cmake_options
. - Test specific macros and functions:
test_requirements
,add_test_executable
,add_unittest_executable
,add_blackbox_executable
,all_library_sources
, andall_header_sources
.
This release includes the following features in cpp_utils
project:
- Event handler: interface to implement a handler of any kind of event.
- File watcher handler: detect changes in a given file.
- Logging event handler: implement the functionality to raise callback every time a logging message is consumed.
- Logging severe event handler: consume the log event handler events that are above a given threshold.
- Multiple event handler: encapsulate multiple event handlers.
- Periodic event handler: raise an event periodically with a specific time period.
- Signal event handler: raise a callback each time the signal specified in received.
- Signal manager: manage a specific signal given by a template specialization.
- Exceptions: allow to raise an exception of the following kinds: ConfigurationException, DisabledException, DNSException, IncosistencyException, InitializationException, TimeoutException, UnsupportedException, ValueAccessException, ValueNotAllowedException.
- Create custom enumerations.
- Math functionalities.
- OwnerPtr and LesseePtr: smart pointer with some extra functionalities.
- Thread pool implementation.
- Timer utilities.
- Atomicable and SharedAtomicable types: join any type value and mutex/shared_mutex together for commodity and readability.
- Wait handlers: allow to make multiple threads wait until another thread awakes them. The currently available event handlers are: BooleanWaitHandler, ConsumerWaitHandler, CounterWaitHandler, DBQueueWaitHandler*, and IntWaitHandler.
- Formatter utility: auxiliary function to concatenate inplace every kind of object
<<
stream. - Logging module: Fast DDS logging module.
- Return codes: enumeration for different method return statements.
- Other generic cpp utils functions.
This release includes the following Continuous-Integration features:
- GitHub actions to validate the utils implementation.