diff --git a/.codespell-ignore-words.txt b/.codespell-ignore-words.txt
new file mode 100644
index 0000000..e69de29
diff --git a/.github/workflows/README.md b/.github/workflows/README.md
new file mode 100644
index 0000000..103f7ad
--- /dev/null
+++ b/.github/workflows/README.md
@@ -0,0 +1,72 @@
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Rolling** | [`rolling`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/rolling) | [![Rolling Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-main.yml?branch=main)
[![Rolling Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-testing.yml?branch=main)
[![Rolling Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-main.yml?branch=main)
[![Rolling Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-testing.yml?branch=main)
[![Rolling Source Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-source-build.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-source-build.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/rolling/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#rolling)
+
+## Build status
+
+
+### Explanation of different build types
+
+**NOTE**: There are three build stages checking current and future compatibility of the package.
+
+[Detailed build status](.github/workflows/README.md)
+
+1. Binary builds - against released packages (main and testing) in ROS distributions. Shows that direct local build is possible.
+
+ Uses repos file: `$NAME$-not-released..repos`
+
+1. Semi-binary builds - against released core ROS packages (main and testing), but the immediate dependencies are pulled from source.
+ Shows that local build with dependencies is possible and if fails there we can expect that after the next package sync we will not be able to build.
+
+ Uses repos file: `$NAME$.repos`
+
+1. Source build - also core ROS packages are build from source. It shows potential issues in the mid future.
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Humble** | [`humble`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/humble) | [![Humble Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-main.yml?branch=main)
[![Humble Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-testing.yml?branch=main)
[![Humble Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-main.yml?branch=main)
[![Humble Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-testing.yml?branch=main)
[![Humble Source Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-source-build.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-source-build.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/humble/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#humble)
+
+## Build status
+
+
+### Explanation of different build types
+
+**NOTE**: There are three build stages checking current and future compatibility of the package.
+
+[Detailed build status](.github/workflows/README.md)
+
+1. Binary builds - against released packages (main and testing) in ROS distributions. Shows that direct local build is possible.
+
+ Uses repos file: `$NAME$-not-released..repos`
+
+1. Semi-binary builds - against released core ROS packages (main and testing), but the immediate dependencies are pulled from source.
+ Shows that local build with dependencies is possible and if fails there we can expect that after the next package sync we will not be able to build.
+
+ Uses repos file: `$NAME$.repos`
+
+1. Source build - also core ROS packages are build from source. It shows potential issues in the mid future.
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Iron** | [`iron`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/iron) | [![Iron Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-main.yml?branch=main)
[![Iron Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-testing.yml?branch=main)
[![Iron Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-main.yml?branch=main)
[![Iron Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-testing.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-testing.yml?branch=main)
[![Iron Source Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-source-build.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-source-build.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/iron/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#iron)
+
+## Build status
+
+
+### Explanation of different build types
+
+**NOTE**: There are three build stages checking current and future compatibility of the package.
+
+[Detailed build status](.github/workflows/README.md)
+
+1. Binary builds - against released packages (main and testing) in ROS distributions. Shows that direct local build is possible.
+
+ Uses repos file: `$NAME$-not-released..repos`
+
+1. Semi-binary builds - against released core ROS packages (main and testing), but the immediate dependencies are pulled from source.
+ Shows that local build with dependencies is possible and if fails there we can expect that after the next package sync we will not be able to build.
+
+ Uses repos file: `$NAME$.repos`
+
+1. Source build - also core ROS packages are build from source. It shows potential issues in the mid future.
diff --git a/.github/workflows/ci-coverage-build.yml b/.github/workflows/ci-coverage-build.yml
new file mode 100644
index 0000000..336fb7d
--- /dev/null
+++ b/.github/workflows/ci-coverage-build.yml
@@ -0,0 +1,50 @@
+name: Coverage Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ coverage:
+ name: coverage build
+ runs-on: ubuntu-22.04
+ strategy:
+ fail-fast: false
+ env:
+ ROS_DISTRO: rolling
+ steps:
+ - uses: ros-tooling/setup-ros@0.3.4
+ with:
+ required-ros-distributions: ${{ env.ROS_DISTRO }}
+ - uses: actions/checkout@v3
+ - uses: ros-tooling/action-ros-ci@0.2.6
+ with:
+ target-ros2-distro: ${{ env.ROS_DISTRO }}
+ import-token: ${{ secrets.GITHUB_TOKEN }}
+ # build all packages listed in the meta package
+ package-name:
+ robotiq_driver
+ robotiq_controllers
+ robotiq_description
+
+ vcs-repo-file-url: |
+ https://raw.githubusercontent.com/${{ github.repository }}/${{ github.sha }}/ros2_robotiq_gripper-not-released.${{ env.ROS_DISTRO }}.repos?token=${{ secrets.GITHUB_TOKEN }}
+ colcon-defaults: |
+ {
+ "build": {
+ "mixin": ["coverage-gcc"]
+ }
+ }
+ colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
+ - uses: codecov/codecov-action@v3.1.0
+ with:
+ file: ros_ws/lcov/total_coverage.info
+ flags: unittests
+ name: codecov-umbrella
+ - uses: actions/upload-artifact@v3.1.0
+ with:
+ name: colcon-logs-coverage-rolling
+ path: ros_ws/log
diff --git a/.github/workflows/ci-format.yml b/.github/workflows/ci-format.yml
new file mode 100644
index 0000000..2d02865
--- /dev/null
+++ b/.github/workflows/ci-format.yml
@@ -0,0 +1,23 @@
+# This is a format job. Pre-commit has a first-party GitHub action, so we use
+# that: https://github.com/pre-commit/action
+
+name: Format
+
+on:
+ workflow_dispatch:
+ pull_request:
+
+jobs:
+ pre-commit:
+ name: Format
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/setup-python@v4.4.0
+ with:
+ python-version: '3.10'
+ - name: Install system hooks
+ run: sudo apt install -qq clang-format-14 cppcheck
+ - uses: pre-commit/action@v3.0.0
+ with:
+ extra_args: --all-files --hook-stage manual
diff --git a/.github/workflows/ci-ros-lint.yml b/.github/workflows/ci-ros-lint.yml
new file mode 100644
index 0000000..e27cf4e
--- /dev/null
+++ b/.github/workflows/ci-ros-lint.yml
@@ -0,0 +1,45 @@
+name: ROS Lint
+on:
+ pull_request:
+
+jobs:
+ ament_lint:
+ name: ament_${{ matrix.linter }}
+ runs-on: ubuntu-20.04
+ strategy:
+ fail-fast: false
+ matrix:
+ linter: [cppcheck, copyright, lint_cmake]
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ros-tooling/setup-ros@v0.2
+ - uses: ros-tooling/action-ros-lint@v0.1
+ with:
+ distribution: rolling
+ linter: ${{ matrix.linter }}
+ package-name:
+ robotiq_driver
+ robotiq_controllers
+ robotiq_description
+
+
+ ament_lint_100:
+ name: ament_${{ matrix.linter }}
+ runs-on: ubuntu-20.04
+ strategy:
+ fail-fast: false
+ matrix:
+ linter: [cpplint]
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ros-tooling/setup-ros@v0.2
+ - uses: ros-tooling/action-ros-lint@v0.1
+ with:
+ distribution: rolling
+ linter: cpplint
+ arguments: "--linelength=100 --filter=-whitespace/newline"
+ package-name:
+ robotiq_driver
+ robotiq_controllers
+ robotiq_description
+ ros2_robotiq_gripper
diff --git a/.github/workflows/humble-abi-compatibility.yml b/.github/workflows/humble-abi-compatibility.yml
new file mode 100644
index 0000000..4df57dc
--- /dev/null
+++ b/.github/workflows/humble-abi-compatibility.yml
@@ -0,0 +1,20 @@
+name: Humble - ABI Compatibility Check
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ abi_check:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ros-industrial/industrial_ci@master
+ env:
+ ROS_DISTRO: humble
+ ROS_REPO: main
+ ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
+ NOT_TEST_BUILD: true
diff --git a/.github/workflows/humble-binary-build-main.yml b/.github/workflows/humble-binary-build-main.yml
new file mode 100644
index 0000000..fd97c85
--- /dev/null
+++ b/.github/workflows/humble-binary-build-main.yml
@@ -0,0 +1,26 @@
+name: Humble Binary Build - main
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: humble
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper-not-released.humble.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/humble-binary-build-testing.yml b/.github/workflows/humble-binary-build-testing.yml
new file mode 100644
index 0000000..36076de
--- /dev/null
+++ b/.github/workflows/humble-binary-build-testing.yml
@@ -0,0 +1,26 @@
+name: Humble Binary Build - testing
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: humble
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper-not-released.humble.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/humble-rhel-binary-build.yml b/.github/workflows/humble-rhel-binary-build.yml
new file mode 100644
index 0000000..25e9883
--- /dev/null
+++ b/.github/workflows/humble-rhel-binary-build.yml
@@ -0,0 +1,33 @@
+name: Humble RHEL Binary Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+
+jobs:
+ humble_rhel_binary:
+ name: Humble RHEL binary build
+ runs-on: ubuntu-latest
+ env:
+ ROS_DISTRO: humble
+ container: ghcr.io/ros-controls/ros:humble-rhel
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: src/ros2_robotiq_gripper
+ - run: |
+ rosdep update
+ rosdep install -iy --from-path src/ros2_robotiq_gripper
+ source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash
+ colcon build
+ colcon test
diff --git a/.github/workflows/humble-semi-binary-build-main.yml b/.github/workflows/humble-semi-binary-build-main.yml
new file mode 100644
index 0000000..17ababa
--- /dev/null
+++ b/.github/workflows/humble-semi-binary-build-main.yml
@@ -0,0 +1,25 @@
+name: Humble Semi-Binary Build - main
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: humble
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper.humble.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/humble-semi-binary-build-testing.yml b/.github/workflows/humble-semi-binary-build-testing.yml
new file mode 100644
index 0000000..0292176
--- /dev/null
+++ b/.github/workflows/humble-semi-binary-build-testing.yml
@@ -0,0 +1,25 @@
+name: Humble Semi-Binary Build - testing
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: humble
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper.humble.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/humble-source-build.yml b/.github/workflows/humble-source-build.yml
new file mode 100644
index 0000000..9869d1f
--- /dev/null
+++ b/.github/workflows/humble-source-build.yml
@@ -0,0 +1,19 @@
+name: Humble Source Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 3 * * *'
+
+jobs:
+ source:
+ uses: ./.github/workflows/reusable-ros-tooling-source-build.yml
+ with:
+ ros_distro: humble
+ ref: main
+ ros2_repo_branch: humble
diff --git a/.github/workflows/iron-abi-compatibility.yml b/.github/workflows/iron-abi-compatibility.yml
new file mode 100644
index 0000000..22dc31d
--- /dev/null
+++ b/.github/workflows/iron-abi-compatibility.yml
@@ -0,0 +1,20 @@
+name: Iron - ABI Compatibility Check
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ abi_check:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ros-industrial/industrial_ci@master
+ env:
+ ROS_DISTRO: iron
+ ROS_REPO: main
+ ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
+ NOT_TEST_BUILD: true
diff --git a/.github/workflows/iron-binary-build-main.yml b/.github/workflows/iron-binary-build-main.yml
new file mode 100644
index 0000000..cea9495
--- /dev/null
+++ b/.github/workflows/iron-binary-build-main.yml
@@ -0,0 +1,26 @@
+name: Iron Binary Build - main
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: iron
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper-not-released.iron.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/iron-binary-build-testing.yml b/.github/workflows/iron-binary-build-testing.yml
new file mode 100644
index 0000000..9470611
--- /dev/null
+++ b/.github/workflows/iron-binary-build-testing.yml
@@ -0,0 +1,26 @@
+name: Iron Binary Build - testing
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: iron
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper-not-released.iron.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/iron-rhel-binary-build.yml b/.github/workflows/iron-rhel-binary-build.yml
new file mode 100644
index 0000000..b4c175e
--- /dev/null
+++ b/.github/workflows/iron-rhel-binary-build.yml
@@ -0,0 +1,33 @@
+name: Iron RHEL Binary Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+
+jobs:
+ iron_rhel_binary:
+ name: Iron RHEL binary build
+ runs-on: ubuntu-latest
+ env:
+ ROS_DISTRO: iron
+ container: ghcr.io/ros-controls/ros:iron-rhel
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: src/ros2_robotiq_gripper
+ - run: |
+ rosdep update
+ rosdep install -iy --from-path src/ros2_robotiq_gripper
+ source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash
+ colcon build
+ colcon test
diff --git a/.github/workflows/iron-semi-binary-build-main.yml b/.github/workflows/iron-semi-binary-build-main.yml
new file mode 100644
index 0000000..ac9efb5
--- /dev/null
+++ b/.github/workflows/iron-semi-binary-build-main.yml
@@ -0,0 +1,25 @@
+name: Iron Semi-Binary Build - main
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: iron
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper.iron.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/iron-semi-binary-build-testing.yml b/.github/workflows/iron-semi-binary-build-testing.yml
new file mode 100644
index 0000000..ec93f8f
--- /dev/null
+++ b/.github/workflows/iron-semi-binary-build-testing.yml
@@ -0,0 +1,25 @@
+name: Iron Semi-Binary Build - testing
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: iron
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper.iron.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/iron-source-build.yml b/.github/workflows/iron-source-build.yml
new file mode 100644
index 0000000..350896d
--- /dev/null
+++ b/.github/workflows/iron-source-build.yml
@@ -0,0 +1,19 @@
+name: Iron Source Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 3 * * *'
+
+jobs:
+ source:
+ uses: ./.github/workflows/reusable-ros-tooling-source-build.yml
+ with:
+ ros_distro: iron
+ ref: main
+ ros2_repo_branch: iron
diff --git a/.github/workflows/prerelease-check.yml b/.github/workflows/prerelease-check.yml
new file mode 100644
index 0000000..9052985
--- /dev/null
+++ b/.github/workflows/prerelease-check.yml
@@ -0,0 +1,41 @@
+name: Pre-Release Check
+
+on:
+ workflow_dispatch:
+ inputs:
+ ros_distro:
+ description: 'Chose ROS distribution'
+ required: true
+ default: 'rolling'
+ type: choice
+ options:
+ - foxy
+ - galactic
+ - humble
+ - iron
+ - rolling
+ branch:
+ description: 'Chose branch for distro'
+ required: true
+ default: 'master'
+ type: choice
+ options:
+ - foxy
+ - galactic
+ - humble
+ - iron
+ - master
+
+jobs:
+ pre_release:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ ref: ${{ github.event.inputs.branch }}
+ - name: industrial_ci
+ uses: ros-industrial/industrial_ci@master
+ env:
+ ROS_DISTRO: ${{ github.event.inputs.ros_distro }}
+ PRERELEASE: true
+ BASEDIR: ${{ github.workspace }}/.work
diff --git a/.github/workflows/reusable-industrial-ci-with-cache.yml b/.github/workflows/reusable-industrial-ci-with-cache.yml
new file mode 100644
index 0000000..490b680
--- /dev/null
+++ b/.github/workflows/reusable-industrial-ci-with-cache.yml
@@ -0,0 +1,96 @@
+name: Reusable industrial_ci Workflow with Cache
+# Reusable action to simplify dealing with ROS/ROS2 industrial_ci builds with cache
+# author: Denis Štogl
+
+on:
+ workflow_call:
+ inputs:
+ ref_for_scheduled_build:
+ description: 'Reference on which the repo should be checkout for scheduled build. Usually is this name of a branch or a tag.'
+ default: ''
+ required: false
+ type: string
+
+ upstream_workspace:
+ description: 'UPSTREAM_WORKSPACE variable for industrial_ci. Usually path to local .repos file.'
+ required: true
+ type: string
+ ros_distro:
+ description: 'ROS_DISTRO variable for industrial_ci'
+ required: true
+ type: string
+ ros_repo:
+ description: 'ROS_REPO to run for industrial_ci. Possible values: "main", "testing"'
+ default: 'main'
+ required: false
+ type: string
+ os_code_name:
+ description: 'OS_CODE_NAME variable for industrial_ci'
+ default: ''
+ required: false
+ type: string
+ before_install_upstream_dependencies:
+ description: 'BEFORE_INSTALL_UPSTREAM_DEPENDENCIES variable for industrial_ci'
+ default: ''
+ required: false
+ type: string
+
+ ccache_dir:
+ description: 'Local path to store cache (from "github.workspace"). For standard industrial_ci configuration do not have to be changed'
+ default: '.ccache'
+ required: false
+ type: string
+ basedir:
+ description: 'Local path to workspace base directory to cache (from "github.workspace"). For standard industrial_ci configuration do not have to be changed'
+ default: '.work'
+ required: false
+ type: string
+
+
+jobs:
+ reusable_industrial_ci_with_cache:
+ name: ${{ inputs.ros_distro }} ${{ inputs.ros_repo }} ${{ inputs.os_code_name }}
+ runs-on: ubuntu-latest
+ env:
+ CCACHE_DIR: ${{ github.workspace }}/${{ inputs.ccache_dir }}
+ BASEDIR: ${{ github.workspace }}/${{ inputs.basedir }}
+ CACHE_PREFIX: ${{ inputs.ros_distro }}-${{ inputs.upstream_workspace }}-${{ inputs.ros_repo }}-${{ github.job }}
+ steps:
+ - name: Checkout ${{ inputs.ref }} when build is not scheduled
+ if: ${{ github.event_name != 'schedule' }}
+ uses: actions/checkout@v3
+ - name: Checkout ${{ inputs.ref }} on scheduled build
+ if: ${{ github.event_name == 'schedule' }}
+ uses: actions/checkout@v3
+ with:
+ ref: ${{ inputs.ref_for_scheduled_build }}
+ - name: cache target_ws
+ if: ${{ ! matrix.env.CCOV }}
+ uses: pat-s/always-upload-cache@v2.1.5
+ with:
+ path: ${{ env.BASEDIR }}/target_ws
+ key: target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}-${{ github.run_id }}
+ restore-keys: |
+ target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}
+ - name: cache ccache
+ uses: pat-s/always-upload-cache@v2.1.5
+ with:
+ path: ${{ env.CCACHE_DIR }}
+ key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }}
+ restore-keys: |
+ ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}
+ ccache-${{ env.CACHE_PREFIX }}
+ - uses: 'ros-industrial/industrial_ci@master'
+ env:
+ UPSTREAM_WORKSPACE: ${{ inputs.upstream_workspace }}
+ ROS_DISTRO: ${{ inputs.ros_distro }}
+ ROS_REPO: ${{ inputs.ros_repo }}
+ OS_CODE_NAME: ${{ inputs.os_code_name }}
+ BEFORE_INSTALL_UPSTREAM_DEPENDENCIES: ${{ inputs.before_install_upstream_dependencies }}
+ - name: prepare target_ws for cache
+ if: ${{ always() && ! matrix.env.CCOV }}
+ run: |
+ du -sh ${{ env.BASEDIR }}/target_ws
+ sudo find ${{ env.BASEDIR }}/target_ws -wholename '*/test_results/*' -delete
+ sudo rm -rf ${{ env.BASEDIR }}/target_ws/src
+ du -sh ${{ env.BASEDIR }}/target_ws
diff --git a/.github/workflows/reusable-ros-tooling-source-build.yml b/.github/workflows/reusable-ros-tooling-source-build.yml
new file mode 100644
index 0000000..584e816
--- /dev/null
+++ b/.github/workflows/reusable-ros-tooling-source-build.yml
@@ -0,0 +1,51 @@
+name: Reusable industrial_ci Workflow with Cache
+# Reusable action to simplify dealing with ROS/ROS2 industrial_ci builds with cache
+# author: Denis Štogl
+
+on:
+ workflow_call:
+ inputs:
+ ros_distro:
+ description: 'ROS2 distribution name'
+ required: true
+ type: string
+ ref:
+ description: 'Reference on which the repo should be checkout. Usually is this name of a branch or a tag.'
+ required: true
+ type: string
+ ros2_repo_branch:
+ description: 'Branch in the ros2/ros2 repository from which ".repos" should be used. Possible values: master (Rolling), humble, iron, galactic, foxy.'
+ default: 'master'
+ required: false
+ type: string
+
+jobs:
+ reusable_ros_tooling_source_build:
+ name: ${{ inputs.ros_distro }} ubuntu-22.04
+ runs-on: ubuntu-22.04
+ strategy:
+ fail-fast: false
+ steps:
+ - uses: ros-tooling/setup-ros@0.3.4
+ with:
+ required-ros-distributions: ${{ inputs.ros_distro }}
+ - uses: actions/checkout@v3
+ with:
+ ref: ${{ inputs.ref }}
+ - uses: ros-tooling/action-ros-ci@0.2.6
+ with:
+ target-ros2-distro: ${{ inputs.ros_distro }}
+ # build all packages listed in the meta package
+ package-name:
+ robotiq_driver
+ robotiq_controllers
+ robotiq_description
+
+ vcs-repo-file-url: |
+ https://raw.githubusercontent.com/ros2/ros2/${{ inputs.ros2_repo_branch }}/ros2.repos
+ https://raw.githubusercontent.com/${{ github.repository }}/${{ github.sha }}/ros2_robotiq_gripper.${{ inputs.ros_distro }}.repos?token=${{ secrets.GITHUB_TOKEN }}
+ colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
+ - uses: actions/upload-artifact@v1
+ with:
+ name: colcon-logs-ubuntu-22.04
+ path: ros_ws/log
diff --git a/.github/workflows/rolling-abi-compatibility.yml b/.github/workflows/rolling-abi-compatibility.yml
new file mode 100644
index 0000000..8d0778d
--- /dev/null
+++ b/.github/workflows/rolling-abi-compatibility.yml
@@ -0,0 +1,20 @@
+name: Rolling - ABI Compatibility Check
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ abi_check:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ros-industrial/industrial_ci@master
+ env:
+ ROS_DISTRO: rolling
+ ROS_REPO: main
+ ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
+ NOT_TEST_BUILD: true
diff --git a/.github/workflows/rolling-binary-build-main.yml b/.github/workflows/rolling-binary-build-main.yml
new file mode 100644
index 0000000..a595a3f
--- /dev/null
+++ b/.github/workflows/rolling-binary-build-main.yml
@@ -0,0 +1,26 @@
+name: Rolling Binary Build - main
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: rolling
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper-not-released.rolling.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/rolling-binary-build-testing.yml b/.github/workflows/rolling-binary-build-testing.yml
new file mode 100644
index 0000000..6dde565
--- /dev/null
+++ b/.github/workflows/rolling-binary-build-testing.yml
@@ -0,0 +1,26 @@
+name: Rolling Binary Build - testing
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+jobs:
+ binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: rolling
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper-not-released.rolling.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/rolling-rhel-binary-build.yml b/.github/workflows/rolling-rhel-binary-build.yml
new file mode 100644
index 0000000..f237cc4
--- /dev/null
+++ b/.github/workflows/rolling-rhel-binary-build.yml
@@ -0,0 +1,33 @@
+name: Rolling RHEL Binary Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+
+jobs:
+ rolling_rhel_binary:
+ name: Rolling RHEL binary build
+ runs-on: ubuntu-latest
+ env:
+ ROS_DISTRO: rolling
+ container: ghcr.io/ros-controls/ros:rolling-rhel
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: src/ros2_robotiq_gripper
+ - run: |
+ rosdep update
+ rosdep install -iy --from-path src/ros2_robotiq_gripper
+ source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash
+ colcon build
+ colcon test
diff --git a/.github/workflows/rolling-semi-binary-build-main.yml b/.github/workflows/rolling-semi-binary-build-main.yml
new file mode 100644
index 0000000..cc51f94
--- /dev/null
+++ b/.github/workflows/rolling-semi-binary-build-main.yml
@@ -0,0 +1,25 @@
+name: Rolling Semi-Binary Build - main
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: rolling
+ ros_repo: main
+ upstream_workspace: ros2_robotiq_gripper.rolling.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/rolling-semi-binary-build-testing.yml b/.github/workflows/rolling-semi-binary-build-testing.yml
new file mode 100644
index 0000000..185c981
--- /dev/null
+++ b/.github/workflows/rolling-semi-binary-build-testing.yml
@@ -0,0 +1,25 @@
+name: Rolling Semi-Binary Build - testing
+# description: 'Build & test that compiles the main dependencies from source.'
+
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '33 1 * * *'
+
+jobs:
+ semi_binary:
+ uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
+ with:
+ ros_distro: rolling
+ ros_repo: testing
+ upstream_workspace: ros2_robotiq_gripper.rolling.repos
+ ref_for_scheduled_build: main
diff --git a/.github/workflows/rolling-source-build.yml b/.github/workflows/rolling-source-build.yml
new file mode 100644
index 0000000..6306dc6
--- /dev/null
+++ b/.github/workflows/rolling-source-build.yml
@@ -0,0 +1,19 @@
+name: Rolling Source Build
+on:
+ workflow_dispatch:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 3 * * *'
+
+jobs:
+ source:
+ uses: ./.github/workflows/reusable-ros-tooling-source-build.yml
+ with:
+ ros_distro: rolling
+ ref: main
+ ros2_repo_branch: rolling
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index f8ce1d0..ec4437d 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -14,7 +14,7 @@
repos:
# Standard hooks
- repo: https://github.com/pre-commit/pre-commit-hooks
- rev: v3.4.0
+ rev: v4.4.0
hooks:
- id: check-added-large-files
exclude: \.(stl|dae)$
@@ -32,19 +32,19 @@ repos:
- id: fix-byte-order-marker
- repo: https://github.com/psf/black
- rev: 22.3.0
+ rev: 23.3.0
hooks:
- id: black
- repo: https://github.com/codespell-project/codespell
- rev: v2.0.0
+ rev: v2.2.5
hooks:
- id: codespell
args: ['--write-changes', '-L', 'atleast'] # Provide a comma-separated list of misspelled words that codespell should ignore (for example: '-L', 'word1,word2,word3').
exclude: \.(svg|pyc|stl|dae|lock)$
- repo: https://github.com/pre-commit/mirrors-clang-format
- rev: v14.0.6
+ rev: v16.0.6
hooks:
- id: clang-format
files: \.(c|cc|cxx|cpp|frag|glsl|h|hpp|hxx|ih|ispc|ipp|java|m|proto|vert)$
diff --git a/README.md b/README.md
index b38c769..bde3028 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,38 @@
+
+
# ros2_robotiq_gripper
+
+## Build status
+
+
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Rolling** | [`rolling`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/rolling) | [![Rolling Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-binary-build-main.yml?branch=main)
[![Rolling Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/rolling-semi-binary-build-main.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/rolling/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#rolling)
+
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Humble** | [`humble`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/humble) | [![Humble Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-binary-build-main.yml?branch=main)
[![Humble Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/humble-semi-binary-build-main.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/humble/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#humble)
+
+
+ROS2 Distro | Branch | Build status | Documentation | Released packages
+:---------: | :----: | :----------: | :-----------: | :---------------:
+**Iron** | [`iron`](https://github.com/PickNikRobotics/ros2_robotiq_gripper/tree/iron) | [![Iron Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-binary-build-main.yml?branch=main)
[![Iron Semi-Binary Build](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-main.yml/badge.svg?branch=main)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/iron-semi-binary-build-main.yml?branch=main) | [![Doxygen Doc Deployment](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml/badge.svg)](https://github.com/PickNikRobotics/ros2_robotiq_gripper/actions/workflows/doxygen-deploy.yml)
[Generated Doc](https://PickNikRobotics.github.io/ros2_robotiq_gripper_Documentation/iron/html/index.html) | [ros2_robotiq_gripper](https://index.ros.org/p/ros2_robotiq_gripper/#iron)
+
+### Explanation of different build types
+
+**NOTE**: There are three build stages checking current and future compatibility of the package.
+
+[Detailed build status](.github/workflows/README.md)
+
+1. Binary builds - against released packages (main and testing) in ROS distributions. Shows that direct local build is possible.
+
+ Uses repos file: `$NAME$-not-released..repos`
+
+1. Semi-binary builds - against released core ROS packages (main and testing), but the immediate dependencies are pulled from source.
+ Shows that local build with dependencies is possible and if fails there we can expect that after the next package sync we will not be able to build.
+
+ Uses repos file: `$NAME$.repos`
+
+1. Source build - also core ROS packages are build from source. It shows potential issues in the mid future.
diff --git a/robotiq_description/launch/view_gripper.launch.py b/robotiq_description/launch/view_gripper.launch.py
index 6fc9038..776ddd9 100644
--- a/robotiq_description/launch/view_gripper.launch.py
+++ b/robotiq_description/launch/view_gripper.launch.py
@@ -41,7 +41,9 @@ def generate_launch_description():
pkg_share = launch_ros.substitutions.FindPackageShare(
package="robotiq_description"
).find("robotiq_description")
- default_model_path = os.path.join(pkg_share, "urdf", "robotiq_2f_85_gripper.urdf.xacro")
+ default_model_path = os.path.join(
+ pkg_share, "urdf", "robotiq_2f_85_gripper.urdf.xacro"
+ )
default_rviz_config_path = os.path.join(pkg_share, "rviz", "view_urdf.rviz")
args = []
diff --git a/robotiq_driver/src/robotiq_gripper_interface.cpp b/robotiq_driver/src/robotiq_gripper_interface.cpp
index ab26df8..0cf7157 100644
--- a/robotiq_driver/src/robotiq_gripper_interface.cpp
+++ b/robotiq_driver/src/robotiq_gripper_interface.cpp
@@ -154,7 +154,9 @@ void RobotiqGripperInterface::setGripperPosition(uint8_t pos)
std::cerr << "Failed to set gripper position\n";
if (port_.isOpen())
{
- std::cerr << "Error caught while reading or writing to device. Connection is open, continuing to attempt communication with gripper.\n ERROR: " << e.what();
+ std::cerr << "Error caught while reading or writing to device. Connection is open, continuing to attempt "
+ "communication with gripper.\n ERROR: "
+ << e.what();
return;
}
throw;
@@ -327,7 +329,9 @@ void RobotiqGripperInterface::updateStatus()
std::cerr << "Failed to update gripper status.\n";
if (port_.isOpen())
{
- std::cerr << "Error caught while reading or writing to device. Connection is open, continuing to attempt communication with gripper.\n ERROR: " << e.what();
+ std::cerr << "Error caught while reading or writing to device. Connection is open, continuing to attempt "
+ "communication with gripper.\n ERROR: "
+ << e.what();
return;
}
throw;
diff --git a/ros2_robotiq_gripper-not-released.humble.repos b/ros2_robotiq_gripper-not-released.humble.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper-not-released.humble.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master
diff --git a/ros2_robotiq_gripper-not-released.iron.repos b/ros2_robotiq_gripper-not-released.iron.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper-not-released.iron.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master
diff --git a/ros2_robotiq_gripper-not-released.rolling.repos b/ros2_robotiq_gripper-not-released.rolling.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper-not-released.rolling.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master
diff --git a/ros2_robotiq_gripper.humble.repos b/ros2_robotiq_gripper.humble.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper.humble.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master
diff --git a/ros2_robotiq_gripper.iron.repos b/ros2_robotiq_gripper.iron.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper.iron.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master
diff --git a/ros2_robotiq_gripper.rolling.repos b/ros2_robotiq_gripper.rolling.repos
new file mode 100644
index 0000000..1b3910e
--- /dev/null
+++ b/ros2_robotiq_gripper.rolling.repos
@@ -0,0 +1,6 @@
+repositories:
+ ## EXAMPLE DEPENDENCY
+# :
+# type: git
+# url: git@github.com:/.git
+# version: master