diff --git a/.github/mergify.yml b/.github/mergify.yml index 84ad380e90..44f51cf58f 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -8,6 +8,15 @@ pull_request_rules: branches: - humble + - name: Backport to jazzy at reviewers discretion + conditions: + - base=master + - "label=backport-jazzy" + actions: + backport: + branches: + - jazzy + - name: Ask to resolve conflict conditions: - conflict diff --git a/.github/workflows/humble-source-build.yml b/.github/workflows/humble-source-build.yml index 841aa86bfe..5a56849e9b 100644 --- a/.github/workflows/humble-source-build.yml +++ b/.github/workflows/humble-source-build.yml @@ -25,5 +25,4 @@ jobs: with: ros_distro: humble ref: humble - ros2_repo_branch: humble os_name: ubuntu-22.04 diff --git a/.github/workflows/jazzy-abi-compatibility.yml b/.github/workflows/jazzy-abi-compatibility.yml index 82fadb55a1..f4647b334a 100644 --- a/.github/workflows/jazzy-abi-compatibility.yml +++ b/.github/workflows/jazzy-abi-compatibility.yml @@ -3,7 +3,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -16,7 +16,7 @@ on: - '**.xml' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} diff --git a/.github/workflows/jazzy-binary-build.yml b/.github/workflows/jazzy-binary-build.yml index fb68d930e4..7cf26806a7 100644 --- a/.github/workflows/jazzy-binary-build.yml +++ b/.github/workflows/jazzy-binary-build.yml @@ -6,7 +6,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy - '*feature*' - '*feature/**' paths: @@ -22,7 +22,7 @@ on: - '**.xml' push: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -38,7 +38,7 @@ on: - cron: '03 1 * * *' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} @@ -53,4 +53,4 @@ jobs: ros_distro: jazzy ros_repo: ${{ matrix.ROS_REPO }} upstream_workspace: ros2_controllers-not-released.jazzy.repos - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy diff --git a/.github/workflows/jazzy-check-docs.yml b/.github/workflows/jazzy-check-docs.yml index cfc67a3eac..72a5332d89 100644 --- a/.github/workflows/jazzy-check-docs.yml +++ b/.github/workflows/jazzy-check-docs.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy paths: - '**.rst' - '**.md' diff --git a/.github/workflows/jazzy-coverage-build.yml b/.github/workflows/jazzy-coverage-build.yml index 2f587c7003..3e4d617ced 100644 --- a/.github/workflows/jazzy-coverage-build.yml +++ b/.github/workflows/jazzy-coverage-build.yml @@ -1,40 +1,39 @@ name: Coverage Build - Jazzy on: workflow_dispatch: - # TODO(anyone) activate when branched for Jazzy - # push: - # branches: - # - master - # paths: - # - '**.hpp' - # - '**.h' - # - '**.cpp' - # - '.github/workflows/jazzy-coverage-build.yml' - # - '**.yaml' - # - '**/package.xml' - # - '**/CMakeLists.txt' - # - 'codecov.yml' - # - '**/package.xml' - # - '**/CMakeLists.txt' - # - 'ros2_controllers.jazzy.repos' - # pull_request: - # branches: - # - master - # paths: - # - '**.hpp' - # - '**.h' - # - '**.cpp' - # - '.github/workflows/jazzy-coverage-build.yml' - # - '**.yaml' - # - '**/package.xml' - # - '**/CMakeLists.txt' - # - 'codecov.yml' - # - '**/package.xml' - # - '**/CMakeLists.txt' - # - 'ros2_controllers.jazzy.repos' + push: + branches: + - jazzy + paths: + - '**.hpp' + - '**.h' + - '**.cpp' + - '.github/workflows/jazzy-coverage-build.yml' + - '**.yaml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'codecov.yml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'ros2_controllers.jazzy.repos' + pull_request: + branches: + - jazzy + paths: + - '**.hpp' + - '**.h' + - '**.cpp' + - '.github/workflows/jazzy-coverage-build.yml' + - '**.yaml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'codecov.yml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'ros2_controllers.jazzy.repos' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} diff --git a/.github/workflows/jazzy-debian-build.yml b/.github/workflows/jazzy-debian-build.yml index ef1b42da8d..4fa94e190f 100644 --- a/.github/workflows/jazzy-debian-build.yml +++ b/.github/workflows/jazzy-debian-build.yml @@ -3,7 +3,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -20,7 +20,7 @@ on: - cron: '03 1 * * *' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} @@ -31,5 +31,5 @@ jobs: with: ros_distro: jazzy upstream_workspace: ros2_controllers.jazzy.repos - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy skip_packages: rqt_joint_trajectory_controller diff --git a/.github/workflows/jazzy-pre-commit.yml b/.github/workflows/jazzy-pre-commit.yml index aab5ba52ac..44d825a34a 100644 --- a/.github/workflows/jazzy-pre-commit.yml +++ b/.github/workflows/jazzy-pre-commit.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/jazzy-rhel-semi-binary-build.yml b/.github/workflows/jazzy-rhel-semi-binary-build.yml index ed09d0efb9..f5e8aedc14 100644 --- a/.github/workflows/jazzy-rhel-semi-binary-build.yml +++ b/.github/workflows/jazzy-rhel-semi-binary-build.yml @@ -3,7 +3,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -20,7 +20,7 @@ on: - cron: '03 1 * * *' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} @@ -30,5 +30,5 @@ jobs: with: ros_distro: jazzy upstream_workspace: ros2_controllers.jazzy.repos - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy skip_packages: rqt_joint_trajectory_controller diff --git a/.github/workflows/jazzy-semi-binary-build.yml b/.github/workflows/jazzy-semi-binary-build.yml index 5a39ea5393..a150580bbc 100644 --- a/.github/workflows/jazzy-semi-binary-build.yml +++ b/.github/workflows/jazzy-semi-binary-build.yml @@ -5,7 +5,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy - '*feature*' - '*feature/**' paths: @@ -21,7 +21,7 @@ on: - '**.xml' push: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -38,7 +38,7 @@ on: - cron: '33 1 * * *' concurrency: - # cancel previous runs of the same workflow, except for pushes on master branch + # cancel previous runs of the same workflow, except for pushes on jazzy branch group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} @@ -49,14 +49,14 @@ jobs: ros_distro: jazzy ros_repo: testing upstream_workspace: ros2_controllers.jazzy.repos - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy semi_binary_clang: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master with: ros_distro: jazzy ros_repo: testing upstream_workspace: ros2_controllers.jazzy.repos - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy additional_debs: clang c_compiler: clang cxx_compiler: clang++ diff --git a/.github/workflows/jazzy-semi-binary-downstream-build.yml b/.github/workflows/jazzy-semi-binary-downstream-build.yml index a2db0ef7b6..d1627ccc42 100644 --- a/.github/workflows/jazzy-semi-binary-downstream-build.yml +++ b/.github/workflows/jazzy-semi-binary-downstream-build.yml @@ -6,7 +6,7 @@ on: workflow_dispatch: pull_request: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -29,7 +29,7 @@ jobs: with: ros_distro: jazzy ros_repo: testing - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy upstream_workspace: ros2_controllers.jazzy.repos # we don't test this repository, we just build it not_test_build: true @@ -41,7 +41,7 @@ jobs: with: ros_distro: jazzy ros_repo: testing - ref_for_scheduled_build: master + ref_for_scheduled_build: jazzy upstream_workspace: ros2_controllers.jazzy.repos # we don't test this repository, we just build it not_test_build: true diff --git a/.github/workflows/jazzy-source-build.yml b/.github/workflows/jazzy-source-build.yml index 76c9bd2892..bd521c9b59 100644 --- a/.github/workflows/jazzy-source-build.yml +++ b/.github/workflows/jazzy-source-build.yml @@ -3,7 +3,7 @@ on: workflow_dispatch: push: branches: - - master + - jazzy paths: - '**.hpp' - '**.h' @@ -24,6 +24,5 @@ jobs: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master with: ros_distro: jazzy - ref: master - ros2_repo_branch: jazzy + ref: jazzy container: ubuntu:24.04 diff --git a/.github/workflows/rolling-abi-compatibility.yml b/.github/workflows/rolling-abi-compatibility.yml index e3cd45c970..56b7894308 100644 --- a/.github/workflows/rolling-abi-compatibility.yml +++ b/.github/workflows/rolling-abi-compatibility.yml @@ -13,6 +13,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers-not-released.rolling.repos' + - 'ros2_controllers-not-released.kilted.repos' - '**.xml' concurrency: @@ -23,5 +24,9 @@ concurrency: jobs: abi_check: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-abi-check.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/rolling-binary-build.yml b/.github/workflows/rolling-binary-build.yml index 1fd126f43c..701bc170a7 100644 --- a/.github/workflows/rolling-binary-build.yml +++ b/.github/workflows/rolling-binary-build.yml @@ -19,6 +19,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers-not-released.rolling.repos' + - 'ros2_controllers-not-released.kilted.repos' - '**.xml' push: branches: @@ -33,6 +34,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers-not-released.rolling.repos' + - 'ros2_controllers-not-released.kilted.repos' - '**.xml' schedule: # Run every morning to detect flakiness and broken dependencies @@ -49,9 +51,10 @@ jobs: strategy: fail-fast: false matrix: + ROS_DISTRO: [kilted, rolling] ROS_REPO: [main, testing] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} ros_repo: ${{ matrix.ROS_REPO }} - upstream_workspace: ros2_controllers-not-released.rolling.repos + upstream_workspace: ros2_controllers-not-released.${{ matrix.ROS_DISTRO }}.repos ref_for_scheduled_build: master diff --git a/.github/workflows/rolling-compatibility-kilted-binary-build.yml b/.github/workflows/rolling-compatibility-kilted-binary-build.yml new file mode 100644 index 0000000000..44ff443346 --- /dev/null +++ b/.github/workflows/rolling-compatibility-kilted-binary-build.yml @@ -0,0 +1,50 @@ +name: Check Rolling Compatibility on Kilted +# author: Christoph Froehlich +# description: 'Build & test the rolling version on Kilted distro.' + +on: + workflow_dispatch: + pull_request: + branches: + - master + - '*feature*' + - '*feature/**' + paths: + - '**.hpp' + - '**.h' + - '**.cpp' + - '**.py' + - '**.yaml' + - '.github/workflows/rolling-compatibility-kilted-binary-build.yml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'ros2_controllers.rolling.repos' + - '**.xml' + push: + branches: + - master + paths: + - '**.hpp' + - '**.h' + - '**.cpp' + - '**.py' + - '**.yaml' + - '.github/workflows/rolling-compatibility-kilted-binary-build.yml' + - '**/package.xml' + - '**/CMakeLists.txt' + - 'ros2_controllers.rolling.repos' + - '**.xml' + +concurrency: + # cancel previous runs of the same workflow, except for pushes on master branch + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }} + +jobs: + build-on-kilted: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + with: + ros_distro: kilted + ros_repo: testing + upstream_workspace: ros2_controllers.rolling.repos + ref_for_scheduled_build: master diff --git a/.github/workflows/rolling-debian-build.yml b/.github/workflows/rolling-debian-build.yml index 23c9aaf834..059b71cfed 100644 --- a/.github/workflows/rolling-debian-build.yml +++ b/.github/workflows/rolling-debian-build.yml @@ -14,6 +14,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers.rolling.repos' + - 'ros2_controllers.kilted.repos' - '**.xml' schedule: # Run every day to detect flakiness and broken dependencies @@ -28,8 +29,12 @@ jobs: rolling_debian: name: Rolling debian build uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling - upstream_workspace: ros2_controllers.rolling.repos + ros_distro: ${{ matrix.ROS_DISTRO }} + upstream_workspace: ros2_controllers.${{ matrix.ROS_DISTRO }}.repos ref_for_scheduled_build: master skip_packages: rqt_joint_trajectory_controller diff --git a/.github/workflows/rolling-pre-commit.yml b/.github/workflows/rolling-pre-commit.yml index 792278d6d2..f323ebfe73 100644 --- a/.github/workflows/rolling-pre-commit.yml +++ b/.github/workflows/rolling-pre-commit.yml @@ -13,5 +13,9 @@ concurrency: jobs: pre-commit: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-pre-commit.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/rolling-rhel-semi-binary-build.yml b/.github/workflows/rolling-rhel-semi-binary-build.yml index c1abdb3c5c..e7d80da8fc 100644 --- a/.github/workflows/rolling-rhel-semi-binary-build.yml +++ b/.github/workflows/rolling-rhel-semi-binary-build.yml @@ -14,6 +14,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers.rolling.repos' + - 'ros2_controllers.kilted.repos' - '**.xml' schedule: # Run every day to detect flakiness and broken dependencies @@ -27,8 +28,12 @@ concurrency: jobs: rolling_rhel: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling - upstream_workspace: ros2_controllers.rolling.repos + ros_distro: ${{ matrix.ROS_DISTRO }} + upstream_workspace: ros2_controllers.${{ matrix.ROS_DISTRO }}.repos ref_for_scheduled_build: master skip_packages: rqt_joint_trajectory_controller diff --git a/.github/workflows/rolling-semi-binary-build.yml b/.github/workflows/rolling-semi-binary-build.yml index 6521e90b5c..631e478e02 100644 --- a/.github/workflows/rolling-semi-binary-build.yml +++ b/.github/workflows/rolling-semi-binary-build.yml @@ -18,6 +18,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers.rolling.repos' + - 'ros2_controllers.kilted.repos' - '**.xml' push: branches: @@ -32,6 +33,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers.rolling.repos' + - 'ros2_controllers.kilted.repos' - '**.xml' schedule: # Run every morning to detect flakiness and broken dependencies @@ -45,17 +47,25 @@ concurrency: jobs: semi_binary: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} ros_repo: testing - upstream_workspace: ros2_controllers.rolling.repos + upstream_workspace: ros2_controllers.${{ matrix.ROS_DISTRO }}.repos ref_for_scheduled_build: master semi_binary_clang: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} ros_repo: testing - upstream_workspace: ros2_controllers.rolling.repos + upstream_workspace: ros2_controllers.${{ matrix.ROS_DISTRO }}.repos ref_for_scheduled_build: master additional_debs: clang c_compiler: clang diff --git a/.github/workflows/rolling-semi-binary-downstream-build.yml b/.github/workflows/rolling-semi-binary-downstream-build.yml index 02ed08578b..a392336c7f 100644 --- a/.github/workflows/rolling-semi-binary-downstream-build.yml +++ b/.github/workflows/rolling-semi-binary-downstream-build.yml @@ -17,6 +17,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros_controls.rolling.repos' + - 'ros_controls.kilted.repos' - '**.xml' concurrency: @@ -29,7 +30,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling] + ROS_DISTRO: [kilted, rolling] with: ros_distro: ${{ matrix.ROS_DISTRO }} ros_repo: testing @@ -45,7 +46,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling] + ROS_DISTRO: [kilted, rolling] with: ros_distro: ${{ matrix.ROS_DISTRO }} ros_repo: testing diff --git a/.github/workflows/rolling-source-build.yml b/.github/workflows/rolling-source-build.yml index e409150974..26a50dc47e 100644 --- a/.github/workflows/rolling-source-build.yml +++ b/.github/workflows/rolling-source-build.yml @@ -14,6 +14,7 @@ on: - '**/package.xml' - '**/CMakeLists.txt' - 'ros2_controllers.rolling.repos' + - 'ros2_controllers.kilted.repos' - '**.xml' schedule: # Run every day to detect flakiness and broken dependencies @@ -22,8 +23,11 @@ on: jobs: source: uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [kilted, rolling] with: - ros_distro: rolling + ros_distro: ${{ matrix.ROS_DISTRO }} ref: master - ros2_repo_branch: rolling container: ubuntu:24.04 diff --git a/README.md b/README.md index bbc9d52c34..fe82c65629 100644 --- a/README.md +++ b/README.md @@ -14,9 +14,10 @@ If you are new to the project, please read the [contributing guide](https://cont ROS2 Distro | Branch | Build status | Documentation | Released packages :---------: | :----: | :----------: | :-----------: | :---------------: -**Rolling** | [`master`](https://github.com/ros-controls/ros2_controllers/tree/master) | [![Rolling Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-binary-build.yml?branch=master)
[![Rolling Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Rdev__ros2_controllers__ubuntu_noble_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Rdev__ros2_controllers__ubuntu_noble_amd64/) | [control.ros.org](https://control.ros.org/master/doc/ros2_controllers/doc/controllers_index.html) | [ros2_controllers](https://index.ros.org/p/ros2_controllers/#rolling) -**Jazzy** | [`master`](https://github.com/ros-controls/ros2_controllers/tree/master) | [![Jazzy Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-binary-build.yml?branch=master)
[![Jazzy Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Jdev__ros2_controllers__ubuntu_noble_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Jdev__ros2_controllers__ubuntu_noble_amd64/) | [control.ros.org](https://control.ros.org/jazzy/doc/ros2_controllers/doc/controllers_index.html) | [ros2_controllers](https://index.ros.org/p/ros2_controllers/#jazzy) -**Humble** | [`humble`](https://github.com/ros-controls/ros2_controllers/tree/humble) | [![Humble Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-binary-build.yml?branch=master)
[![Humble Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Hdev__ros2_controllers__ubuntu_jammy_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Hdev__ros2_controllers__ubuntu_jammy_amd64/) | [control.ros.org](https://control.ros.org/humble/doc/ros2_controllers/doc/controllers_index.html) | [ros2_controllers](https://index.ros.org/p/ros2_controllers/#humble) +**Rolling** | [`master`](https://github.com/ros-controls/ros2_controllers/tree/master) | [![Rolling Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-binary-build.yml?branch=master)
[![Rolling Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/rolling-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Rdev__ros2_controllers__ubuntu_noble_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Rdev__ros2_controllers__ubuntu_noble_amd64/) | [control.ros.org](https://control.ros.org/master/doc/ros2_controllers/doc/controllers_index.html) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary)](https://build.ros2.org/job/Rbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary/) +**Kilted** | [`master`](https://github.com/ros-controls/ros2_controllers/tree/master) | see above
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Kdev__ros2_controllers__ubuntu_noble_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Kdev__ros2_controllers__ubuntu_noble_amd64/) | [control.ros.org](https://control.ros.org/master/doc/ros2_controllers/doc/controllers_index.html) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Kbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary)](https://build.ros2.org/job/Kbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary/) +**Jazzy** | [`jazzy`](https://github.com/ros-controls/ros2_controllers/tree/jazzy) | [![Jazzy Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-binary-build.yml?branch=master)
[![Jazzy Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/jazzy-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Jdev__ros2_controllers__ubuntu_noble_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Jdev__ros2_controllers__ubuntu_noble_amd64/) | [control.ros.org](https://control.ros.org/jazzy/doc/ros2_controllers/doc/controllers_index.html) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Jbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary)](https://build.ros2.org/job/Jbin_uN64__ros2_controllers__ubuntu_noble_amd64__binary/) +**Humble** | [`humble`](https://github.com/ros-controls/ros2_controllers/tree/humble) | [![Humble Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-binary-build.yml?branch=master)
[![Humble Semi-Binary Build](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_controllers/actions/workflows/humble-semi-binary-build.yml?branch=master)
[![build.ros2.org](https://build.ros2.org/buildStatus/icon?job=Hdev__ros2_controllers__ubuntu_jammy_amd64&subject=build.ros2.org)](https://build.ros2.org/job/Hdev__ros2_controllers__ubuntu_jammy_amd64/) | [control.ros.org](https://control.ros.org/humble/doc/ros2_controllers/doc/controllers_index.html) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Hbin_uJ64__ros2_controllers__ubuntu_jammy_amd64__binary)](https://build.ros2.org/job/Hbin_uJ64__ros2_controllers__ubuntu_jammy_amd64__binary/) ## Acknowledgements diff --git a/doc/migration.rst b/doc/migration.rst index 34c4eaa419..43137b5598 100644 --- a/doc/migration.rst +++ b/doc/migration.rst @@ -1,32 +1,6 @@ :github_url: https://github.com/ros-controls/ros2_controllers/blob/{REPOS_FILE_BRANCH}/doc/migration.rst -Migration Guides: Iron to Jazzy +Migration Guides: Jazzy to Kilted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -This list summarizes important changes between Iron (previous) and Jazzy (current) releases, where changes to user code might be necessary. - -diff_drive_controller -***************************** -* The twist message on ``~/cmd_vel`` is now required to be of stamped type (`#812 `_). -* Parameters ``has_velocity_limits``, ``has_acceleration_limits``, and ``has_jerk_limits`` are removed. Instead, set the respective limits to ``.NAN``. (`#1315 `_). - -joint_trajectory_controller -***************************** - -* Parameter ``allow_nonzero_velocity_at_trajectory_end`` is now per default ``false`` (`#834 `_). -* The parameter ``start_with_holding`` is removed, it now always holds the position at activation (`#839 `_). -* Goals are now cancelled in ``on_deactivate`` transition (`#962 `_). -* Empty trajectory messages are discarded (`#902 `_). -* Angle wraparound behavior (continuous joints) was added from the current state to the first segment of the incoming trajectory (`#796 `_). -* The URDF is now parsed for continuous joints and angle wraparound is automatically activated now (`#949 `_). Remove the ``angle_wraparound`` parameter from the configuration and set continuous joint type in the URDF of the respective joint. -* Tolerances sent with the action goal were not used before, but are now processed and used for the upcoming action. (`#716 `_). Adaptions to the action goal might be necessary. -* Parameter ``open_loop_control`` is replaced by ``interpolate_from_desired_state`` and setting the feedback gains to zero (`#1525 `_). - -steering_controllers_library -******************************** -* ``front_steering`` parameter was removed (`#1166 `_). Now every kinematics type (bicycle, tricycle, Ackermann) has dedicated parameters for steering or traction wheels instead of front/rear wheels. - - * *General*: Remove ``front_steering`` and use ``traction_joints_names``/``steering_joints_names`` instead of ``rear_wheels_names``/``front_wheels_names``, respectively. - * *bicycle_steering_controller*: Set ``traction_wheel_radius`` instead of ``front_wheel_radius``, ``rear_wheel_radius``. - * *tricycle_steering_controller*: Set ``traction_wheels_radius`` instead of ``front_wheels_radius``, ``rear_wheels_radius``. - * *ackermann_steering_controller*: Set ``traction_wheels_radius`` instead of ``front_wheels_radius``, ``rear_wheels_radius``, and ``traction_track_width`` (and optionally ``steering_track_width``, if it differs) instead of ``rear_wheel_track``, ``front_wheel_track``. +This list summarizes important changes between Jazzy (previous) and Kilted (current) releases, where changes to user code might be necessary. diff --git a/doc/release_notes.rst b/doc/release_notes.rst index d407917374..14db39a675 100644 --- a/doc/release_notes.rst +++ b/doc/release_notes.rst @@ -1,82 +1,6 @@ :github_url: https://github.com/ros-controls/ros2_controllers/blob/{REPOS_FILE_BRANCH}/doc/release_notes.rst -Release Notes: Iron to Jazzy +Release Notes: Jazzy to Kilted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -This list summarizes the changes between Iron (previous) and Jazzy (current) releases. -admittance_controller -************************ -* Remove ``robot_description`` parameter from parameter YAML, because it is not used at all (`#963 `_). -* Added ``~/wrench_reference`` input topic which allows to provide a force-torque offset as WrenchStamped (`#1249 `_). - -diff_drive_controller -***************************** -* The twist message on ``~/cmd_vel`` is now required to be of stamped type (`#812 `_). -* Remove unused parameter ``wheels_per_side`` (`#958 `_). -* Parameters ``has_velocity_limits``, ``has_acceleration_limits``, and ``has_jerk_limits`` are removed. Instead, set the respective limits to ``.NAN``. (`#1315 `_). -* Parameters ``max_acceleration_reverse`` and ``max_deceleration_reverse`` were added to configure asymmetric acceleration/deceleration behavior. (`#1315 `_). - -joint_trajectory_controller -***************************** - -* Parameter ``allow_nonzero_velocity_at_trajectory_end`` is now per default ``false`` (`#834 `_). -* Activate update of dynamic parameters (`#761 `_ and `#849 `_). -* The parameter ``start_with_holding`` is removed, it now always holds the position at activation (`#839 `_). -* Continue with last trajectory-point on success, instead of hold-position from current state (`#842 `_). -* Add console output for tolerance checks (`#932 `_): - - .. code:: - - [tolerances]: State tolerances failed for joint 2: - [tolerances]: Position Error: 0.020046, Position Tolerance: 0.010000 - [trajectory_controllers]: Aborted due goal_time_tolerance exceeding by 1.010000 seconds - -* Goals are now cancelled in ``on_deactivate`` transition (`#962 `_). -* Empty trajectory messages are discarded (`#902 `_). -* Action field ``error_string`` is now filled with meaningful strings (`#887 `_). -* Angle wraparound behavior (continuous joints) was added from the current state to the first segment of the incoming trajectory (`#796 `_). -* The URDF is now parsed for continuous joints and angle wraparound is automatically activated now (`#949 `_). ``angle_wraparound`` parameter was completely removed. -* Tolerances sent with the action goal are now processed and used for the action. (`#716 `_). For details, see the `JointTolerance message `_: - - .. code-block:: markdown - - The tolerances specify the amount the position, velocity, and - accelerations can vary from the setpoints. For example, in the case - of trajectory control, when the actual position varies beyond - (desired position + position tolerance), the trajectory goal may - abort. - - There are two special values for tolerances: - * 0 - The tolerance is unspecified and will remain at whatever the default is - * -1 - The tolerance is "erased". If there was a default, the joint will be - allowed to move without restriction. - -* Add the boolean parameter ``set_last_command_interface_value_as_state_on_activation``. When set to ``true``, the last command interface value is used as both the current state and the last commanded state upon activation. When set to ``false``, the current state is used for both (`#1231 `_). -* Feed-forward effort trajectories are supported now (`#1200 `_). -* Parameter ``open_loop_control`` is replaced by ``interpolate_from_desired_state`` and setting the feedback gains to zero (`#1525 `_). - -mecanum_drive_controller -************************ -* 🚀 The mecanum_drive_controller was added 🎉 (`#512 `_). - -pid_controller -************************ -* 🚀 The PID controller was added 🎉 (`#434 `_). -* Add ``save_i_term`` parameter to control retention of integral state after re-activation (`#1507 `_). - -steering_controllers_library -******************************** -* Changing default int values to double in steering controller's yaml file. The controllers should now initialize successfully without specifying these parameters (`#927 `_). -* A fix for Ackermann steering odometry was added (`#921 `_). -* Do not reset the steering wheels to ``0.0`` on timeout (`#1289 `_). -* New parameter ``reduce_wheel_speed_until_steering_reached`` was added. If set to true, then the wheel speed(s) is reduced until the steering angle has been reached. Only considered if ``open_loop = false`` (`#1314 `_). -* Ackermann kinematics now supports different wheel tracks for traction and steering axle (`#1166 `_). -* ``front_steering`` parameter was removed, see migration notes (`#1166 `_). - -tricycle_controller -************************ -* tricycle_controller now uses generate_parameter_library (`#957 `_). - -gpio_controllers -************************ -* The GPIO command controller was added 🎉 (`#1251 `_). +This list summarizes the changes between Jazzy (previous) and Kilted (current) releases. diff --git a/downstream.kilted.repos b/downstream.kilted.repos new file mode 100644 index 0000000000..e5a26574b7 --- /dev/null +++ b/downstream.kilted.repos @@ -0,0 +1,5 @@ +repositories: + UniversalRobots/Universal_Robots_ROS2_Driver: + type: git + url: https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver.git + version: main diff --git a/ros2_controllers-not-released.kilted.repos b/ros2_controllers-not-released.kilted.repos new file mode 100644 index 0000000000..1b3910e7e7 --- /dev/null +++ b/ros2_controllers-not-released.kilted.repos @@ -0,0 +1,6 @@ +repositories: + ## EXAMPLE DEPENDENCY +# : +# type: git +# url: git@github.com:/.git +# version: master diff --git a/ros2_controllers.jazzy.repos b/ros2_controllers.jazzy.repos index d4db80a0ae..c1f9472e57 100644 --- a/ros2_controllers.jazzy.repos +++ b/ros2_controllers.jazzy.repos @@ -2,7 +2,7 @@ repositories: ros2_control: type: git url: https://github.com/ros-controls/ros2_control.git - version: master + version: jazzy realtime_tools: type: git url: https://github.com/ros-controls/realtime_tools.git diff --git a/ros2_controllers.kilted.repos b/ros2_controllers.kilted.repos new file mode 100644 index 0000000000..f6462c4b4f --- /dev/null +++ b/ros2_controllers.kilted.repos @@ -0,0 +1,25 @@ +repositories: + ros2_control: + type: git + url: https://github.com/ros-controls/ros2_control.git + version: master + realtime_tools: + type: git + url: https://github.com/ros-controls/realtime_tools.git + version: master + control_msgs: + type: git + url: https://github.com/ros-controls/control_msgs.git + version: master + control_toolbox: + type: git + url: https://github.com/ros-controls/control_toolbox.git + version: ros2-master + kinematics_interface: + type: git + url: https://github.com/ros-controls/kinematics_interface.git + version: master + ros2_control_cmake: + type: git + url: https://github.com/ros-controls/ros2_control_cmake.git + version: master diff --git a/ros_controls.kilted.repos b/ros_controls.kilted.repos new file mode 100644 index 0000000000..da64a510fd --- /dev/null +++ b/ros_controls.kilted.repos @@ -0,0 +1,9 @@ +repositories: + ros-controls/gz_ros2_control: + type: git + url: https://github.com/ros-controls/gz_ros2_control.git + version: rolling + ros-controls/ros2_control_demos: + type: git + url: https://github.com/ros-controls/ros2_control_demos.git + version: master