Skip to content

Commit

Permalink
Release Version 2.1.0
Browse files Browse the repository at this point in the history
Version 2.1.0 contains several smaller improvements to the Modulo project, such as more consistency with parameter
naming, declaring and removing of signals, and cleaner exception handling and logging. Another new feature is the
ability to provide a user-defined callback for input signals.

There have also been some changes to support both galactic and humble releases of ROS.
  • Loading branch information
domire8 authored Oct 24, 2022
2 parents 22e0e66 + ab142c3 commit 8022ebb
Show file tree
Hide file tree
Showing 51 changed files with 1,260 additions and 273 deletions.
6 changes: 6 additions & 0 deletions .github/actions/build-test-galactic-devel/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: 'Build and Test (galactic-devel)'
description: 'Build the source packages and run all unit tests'
runs:
using: 'docker'
image: 'ghcr.io/aica-technology/ros2-control-libraries:galactic-devel'
entrypoint: '/github/workspace/.github/common/entrypoint.sh'
7 changes: 0 additions & 7 deletions .github/actions/build-test-galactic/Dockerfile

This file was deleted.

5 changes: 3 additions & 2 deletions .github/actions/build-test-galactic/action.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
name: 'Build and Test (Galactic)'
name: 'Build and Test (galactic)'
description: 'Build the source packages and run all unit tests'
runs:
using: 'docker'
image: 'Dockerfile'
image: 'ghcr.io/aica-technology/ros2-control-libraries:galactic'
entrypoint: '/github/workspace/.github/common/entrypoint.sh'
6 changes: 6 additions & 0 deletions .github/actions/build-test-humble-devel/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: 'Build and Test (humble-devel)'
description: 'Build the source packages and run all unit tests'
runs:
using: 'docker'
image: 'ghcr.io/aica-technology/ros2-control-libraries:humble-devel'
entrypoint: '/github/workspace/.github/common/entrypoint.sh'
File renamed without changes.
3 changes: 3 additions & 0 deletions .github/common/entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

sudo su - ros2 -c /bin/bash -c /github/workspace/.github/common/build-test.sh
28 changes: 27 additions & 1 deletion .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,30 @@ jobs:
uses: actions/checkout@v2
# Load the repository build-test action
- name: Build and Test
uses: ./.github/actions/build-test-galactic
uses: ./.github/actions/build-test-galactic

build-test-galactic-devel:
needs: check-skippable-changes
if: ${{ needs.check-skippable-changes.outputs.skip != 'true' }}
runs-on: ubuntu-latest
name: Galactic development build and test
steps:
# First check out the repository
- name: Checkout
uses: actions/checkout@v2
# Load the repository build-test action
- name: Build and Test
uses: ./.github/actions/build-test-galactic-devel

build-test-humble-devel:
needs: check-skippable-changes
if: ${{ needs.check-skippable-changes.outputs.skip != 'true' }}
runs-on: ubuntu-latest
name: Humble development build and test
steps:
# First check out the repository
- name: Checkout
uses: actions/checkout@v2
# Load the repository build-test action
- name: Build and Test
uses: ./.github/actions/build-test-humble-devel
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@

.idea
cmake-build-*
./fileList.txt

doxygen/docs/html
30 changes: 30 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,41 @@
# CHANGELOG

Release Versions:
- [2.1.0](#210)
- [2.0.0](#200)
- [1.1.0](#110)
- [1.0.0](#100)
- [Pre-release versions](#pre-release-versions)

## 2.1.0
### October 21, 2022

Version 2.1.0 contains several smaller improvements to the Modulo project, such as more consistency with parameter
naming, declaring and removing of signals, and cleaner exception handling and logging. Another new feature is the
ability to provide a user-defined callback for input signals.

There have also been some changes to support both galactic and humble releases of ROS.

### Changes

- Support multiple build test actions (#117)
- Manually export modulo_core dependencies (#118)
- Ensure compatibility with humble (#119)
- Add static tf broadcaster (#120)
- Use prefix for all exceptions (#121)
- Accept list of transforms in send_transform (#122)
- Rename all frame_name parameters to frame (#123)
- Check that the data pointer is not null when adding a signal (#128)
- Rename validate parameter callback and validate period value (#126)
- Add double underscore to private function (#127)
- Improve error messages and logs further (#131)
- User-defined callback for inputs (#124, #132, #133)
- Add humble-devel build and test workflow (#135)
- Correctly list rclcpp_components as build dependency (#137)
- Add option to declare signals (#136)
- Correct default value for user callback on add_input (#138)
- Add option to remove signals (#139)

## 2.0.0
### August 05, 2022

Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.0.0
2.1.0
2 changes: 1 addition & 1 deletion doxygen/doxygen.conf
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "Modulo"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 2.0.0
PROJECT_NUMBER = 2.1.0

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
2 changes: 1 addition & 1 deletion source/modulo_component_interfaces/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>modulo_component_interfaces</name>
<version>2.0.0</version>
<version>2.1.0</version>
<description>Interface package for communicating with modulo components through the ROS framework</description>
<maintainer email="[email protected]">Enrico Eberhard</maintainer>
<license>TODO: License declaration</license>
Expand Down
9 changes: 5 additions & 4 deletions source/modulo_components/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@ externally triggered operations. Examples of triggered behavior include providin
or publishing outputs on a periodic timer. One-shot behaviors may include interacting with the filesystem or
publishing a predefined sequence of outputs.

Developers should override `validate_parameter()` if any parameters are added and `on_execute_callback()` to implement
any one-shot behavior. In the latter case, `execute()` should be invoked at the end of the derived constructor.
Developers should override `on_validate_parameter_callback()` if any parameters are added and `on_execute_callback()`
to implement any one-shot behavior. In the latter case, `execute()` should be invoked at the end of the derived
constructor.

## LifecycleComponent

Expand All @@ -26,8 +27,8 @@ different behaviors based on their state and on state transitions. An example of
signal component that requires configuration steps to determine which inputs to register and subsequently should
publish outputs only when the component is activated.

Developers should override `validate_parameter()` if any parameters are added. In addition, the following state
transition callbacks should be overridden whenever custom transition behavior is needed:
Developers should override `on_validate_parameter_callback()` if any parameters are added. In addition, the following
state transition callbacks should be overridden whenever custom transition behavior is needed:
- `on_configure_callback()`
- `on_activate_callback()`
- `on_deactivate_callback()`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@ namespace modulo_components {
* externally triggered operations. Examples of triggered behavior include providing a service, processing signals
* or publishing outputs on a periodic timer. One-shot behaviors may include interacting with the filesystem or
* publishing a predefined sequence of outputs.
* Developers should override validate_parameter() if any parameters are added and on_execute_callback() to implement
* any one-shot behavior. In the latter case, execute() should be invoked at the end of the derived constructor.
* Developers should override on_validate_parameter_callback() if any parameters are added and on_execute_callback()
* to implement any one-shot behavior. In the latter case, execute() should be invoked at the end of the derived
* constructor.
* @see LifecycleComponent for a state-based composition alternative
*/
class Component : public ComponentInterface<rclcpp::Node> {
Expand Down
Loading

0 comments on commit 8022ebb

Please sign in to comment.