From 25860afa1d85ac42ddfac779fcdfbaa0172d6fd8 Mon Sep 17 00:00:00 2001 From: Vatan Aksoy Tezer Date: Fri, 2 Jul 2021 21:17:10 +0300 Subject: [PATCH 01/12] Port to ROS 2 (#5) --- .github/workflows/build.yaml | 72 ++++++++++++++++ .github/workflows/format.yaml | 20 +++++ .pre-commit-config.yaml | 34 ++++++++ .travis.yml | 33 -------- CMakeLists.txt | 155 +++++++--------------------------- msg/Edges.msg | 2 +- msg/GeometryGraph.msg | 2 +- package.xml | 21 +++-- 8 files changed, 172 insertions(+), 167 deletions(-) create mode 100644 .github/workflows/build.yaml create mode 100644 .github/workflows/format.yaml create mode 100644 .pre-commit-config.yaml delete mode 100644 .travis.yml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..5300310 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,72 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: Build + +on: + workflow_dispatch: + pull_request: + push: + branches: + - ros2 + +jobs: + industrial_ci: + strategy: + matrix: + env: + - ROS_DISTRO: foxy + ROS_REPO: main + - ROS_DISTRO: foxy + ROS_REPO: testing + - ROS_DISTRO: rolling + ROS_REPO: main + - ROS_DISTRO: rolling + ROS_REPO: testing + - ROS_DISTRO: galactic + ROS_REPO: main + - ROS_DISTRO: galactic + ROS_REPO: testing + env: + CCACHE_DIR: ${{ github.workspace }}/.ccache + BASEDIR: ${{ github.workspace }}/.work + CACHE_PREFIX: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} + + name: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + # The target directory cache doesn't include the source directory because + # that comes from the checkout. See "prepare target_ws for cache" task below + - name: cache target_ws + if: ${{ ! matrix.env.CCOV }} + uses: pat-s/always-upload-cache@v2.1.3 + 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.3 + 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 }} + - name: industrial_ci + uses: 'ros-industrial/industrial_ci@master' + env: ${{ matrix.env }} + - name: upload test artifacts (on failure) + uses: actions/upload-artifact@v2 + if: failure() + with: + name: test-results + path: ${{ env.BASEDIR }}/target_ws/**/test_results/**/*.xml + - 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/format.yaml b/.github/workflows/format.yaml new file mode 100644 index 0000000..4fcae08 --- /dev/null +++ b/.github/workflows/format.yaml @@ -0,0 +1,20 @@ +# This is a format job. Pre-commit has a first-party GitHub action, so we use +# that: https://github.com/pre-commit/action + +name: Formatting (pre-commit) + +on: + workflow_dispatch: + pull_request: + push: + +jobs: + pre-commit: + name: Format + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-python@v2 + - name: Install clang-format-10 + run: sudo apt-get install clang-format-10 + - uses: pre-commit/action@v2.0.0 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..4135841 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,34 @@ +# To use: +# +# pre-commit run -a +# +# Or: +# +# pre-commit install # (runs every time you commit in git) +# +# To update this file: +# +# pre-commit autoupdate +# +# See https://github.com/pre-commit/pre-commit + +repos: + # Standard hooks + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v3.4.0 + hooks: + - id: check-added-large-files + - id: check-case-conflict + - id: check-json + - id: check-merge-conflict + - id: check-symlinks + - id: check-toml + - id: check-xml + - id: check-yaml + - id: debug-statements + - id: destroyed-symlinks + - id: detect-private-key + - id: end-of-file-fixer + - id: mixed-line-ending + - id: pretty-format-json + - id: trailing-whitespace diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 25a4677..0000000 --- a/.travis.yml +++ /dev/null @@ -1,33 +0,0 @@ -sudo: required -dist: trusty -language: generic # Force travis to use its minimal image with default Python settings -compiler: - - gcc -env: - global: - - CATKIN_WS=~/catkin_ws - - CATKIN_WS_SRC=${CATKIN_WS}/src - - CI_ROS_DISTRO="indigo" -install: - - sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu trusty main" > /etc/apt/sources.list.d/ros-latest.list' - - wget http://packages.ros.org/ros.key -O - | sudo apt-key add - - - sudo apt-get update -qq - - sudo apt-get install -qq -y python-rosdep python-catkin-tools - - sudo rosdep init - - rosdep update - # Use rosdep to install all dependencies (including ROS itself) - - rosdep install --from-paths ./ -i -y --rosdistro $CI_ROS_DISTRO -script: - - source /opt/ros/$CI_ROS_DISTRO/setup.bash - - mkdir -p $CATKIN_WS_SRC - - ln -s $TRAVIS_BUILD_DIR $CATKIN_WS_SRC - - cd $CATKIN_WS - - catkin init - # Enable install space - #- catkin config --install - # Build [and Install] packages - - catkin build --limit-status-rate 0.1 --no-notify -DCMAKE_BUILD_TYPE=Release - # Build tests - - catkin build --limit-status-rate 0.1 --no-notify --make-args tests - # Run tests - - catkin run_tests diff --git a/CMakeLists.txt b/CMakeLists.txt index 10680a2..d64173d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,133 +1,42 @@ -cmake_minimum_required(VERSION 2.8.3) +cmake_minimum_required(VERSION 3.5) project(graph_msgs) -## Find catkin macros and libraries -## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) -## is used, also find other catkin packages -find_package(catkin REQUIRED COMPONENTS - message_generation - geometry_msgs - std_msgs +# Default to C++14 +if(NOT CMAKE_CXX_STANDARD) + set(CMAKE_CXX_STANDARD 14) +endif() + +# Disable Wredundant-decls warnings since rosidl generates redundant function +# declarations +if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_FLAGS + "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wpedantic -Wno-redundant-decls") +endif() + +find_package(ament_cmake REQUIRED) +find_package(rosidl_default_generators REQUIRED) +find_package(builtin_interfaces REQUIRED) +find_package(std_msgs REQUIRED) +find_package(geometry_msgs REQUIRED) + +set(msg_files + "msg/Edges.msg" + "msg/GeometryGraph.msg" ) -## System dependencies are found with CMake's conventions -# find_package(Boost REQUIRED COMPONENTS system) - - -## Uncomment this if the package has a setup.py. This macro ensures -## modules and global scripts declared therein get installed -## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html -# catkin_python_setup() - -################################################ -## Declare ROS messages, services and actions ## -################################################ - -## Generate messages in the 'msg' folder -add_message_files( - FILES - Edges.msg - GeometryGraph.msg -) - -## Generate added messages and services with any dependencies listed here -generate_messages( - DEPENDENCIES - std_msgs - geometry_msgs -) - -################################### -## catkin specific configuration ## -################################### -## The catkin_package macro generates cmake config files for your package -## Declare things to be passed to dependent projects -## INCLUDE_DIRS: uncomment this if you package contains header files -## LIBRARIES: libraries you create in this project that dependent projects also need -## CATKIN_DEPENDS: catkin_packages dependent projects also need -## DEPENDS: system dependencies of this project that dependent projects also need -catkin_package( -# INCLUDE_DIRS include -# LIBRARIES graph_msgs - CATKIN_DEPENDS - message_runtime +rosidl_generate_interfaces(${PROJECT_NAME} + ${msg_files} + DEPENDENCIES + builtin_interfaces std_msgs geometry_msgs -# DEPENDS system_lib -) - -########### -## Build ## -########### - -## Specify additional locations of header files -## Your package locations should be listed before other locations -# include_directories(include) -include_directories( - ${catkin_INCLUDE_DIRS} ) -## Declare a cpp library -# add_library(graph_msgs -# src/${PROJECT_NAME}/graph_msgs.cpp -# ) - -## Declare a cpp executable -# add_executable(graph_msgs_node src/graph_msgs_node.cpp) - -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -# add_dependencies(graph_msgs_node graph_msgs_generate_messages_cpp) - -## Specify libraries to link a library or executable target against -# target_link_libraries(graph_msgs_node -# ${catkin_LIBRARIES} -# ) - -############# -## Install ## -############# - -# all install targets should use catkin DESTINATION variables -# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html - -## Mark executable scripts (Python etc.) for installation -## in contrast to setup.py, you can choose the destination -# install(PROGRAMS -# scripts/my_python_script -# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark executables and/or libraries for installation -# install(TARGETS graph_msgs graph_msgs_node -# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark cpp header files for installation -# install(DIRECTORY include/${PROJECT_NAME}/ -# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} -# FILES_MATCHING PATTERN "*.h" -# PATTERN ".svn" EXCLUDE -# ) - -## Mark other files for installation (e.g. launch and bag files, etc.) -# install(FILES -# # myfile1 -# # myfile2 -# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} -# ) - -############# -## Testing ## -############# +ament_export_dependencies(rosidl_default_runtime) -## Add gtest based cpp test target and link libraries -# catkin_add_gtest(${PROJECT_NAME}-test test/test_graph_msgs.cpp) -# if(TARGET ${PROJECT_NAME}-test) -# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) -# endif() +if(BUILD_TESTING) + find_package(ament_lint_auto REQUIRED) + ament_lint_auto_find_test_dependencies() +endif() -## Add folders to be run by python nosetests -# catkin_add_nosetests(test) +ament_package() diff --git a/msg/Edges.msg b/msg/Edges.msg index 6e42e1c..5abe2a7 100644 --- a/msg/Edges.msg +++ b/msg/Edges.msg @@ -2,4 +2,4 @@ uint32[] node_ids # optional cost/weight of each edge. if vector is empty assume all weights are equal (1) -float64[] weights \ No newline at end of file +float64[] weights diff --git a/msg/GeometryGraph.msg b/msg/GeometryGraph.msg index 48bce5d..91fb002 100644 --- a/msg/GeometryGraph.msg +++ b/msg/GeometryGraph.msg @@ -1,5 +1,5 @@ # A reference coordinate frame and timestamp -Header header +std_msgs/Header header # 3D spacial graph geometry_msgs/Point[] nodes diff --git a/package.xml b/package.xml index 1064142..27301d8 100644 --- a/package.xml +++ b/package.xml @@ -1,5 +1,4 @@ - - + graph_msgs 0.1.0 ROS messages for publishing graphs of different data types @@ -14,16 +13,20 @@ Dave Coleman - catkin + ament_cmake - message_generation - std_msgs - geometry_msgs + rosidl_default_generators - std_msgs - geometry_msgs - message_runtime + std_msgs + geometry_msgs + rosidl_default_runtime + + rosidl_interface_packages + + ament_lint_auto + ament_lint_cmake + ament_cmake From 047ea9e340215832ddd0dfd3187cd923a5151400 Mon Sep 17 00:00:00 2001 From: Henning Kayser Date: Fri, 2 Jul 2021 21:28:39 +0200 Subject: [PATCH 02/12] Fix CI badges (#6) --- README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 91f8d9a..132559b 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,11 @@ -graph_msgs -========== +# graph_msgs ROS messages for publishing graphs of different data types -Status: +### Continuous Integration Status - * [![Build Status](https://travis-ci.org/davetcoleman/graph_msgs.svg)](https://travis-ci.org/davetcoleman/graph_msgs) Travis CI - * [![Devel Job Status](http://jenkins.ros.org/buildStatus/icon?job=devel-indigo-graph_msgs)](http://jenkins.ros.org/job/devel-indigo-graph_msgs) Devel Job Status - * [![Build Status](http://jenkins.ros.org/buildStatus/icon?job=ros-indigo-graph-msgs_binarydeb_trusty_amd64)](http://jenkins.ros.org/job/ros-indigo-graph-msgs_binarydeb_trusty_amd64/) AMD64 Debian Job Status +[![Formatting (pre-commit)](https://github.com/PickNikRobotics/graph_msgs/actions/workflows/format.yaml/badge.svg?branch=ros2)](https://github.com/PickNikRobotics/graph_msgs/actions/workflows/format.yaml?query=branch%3Aros2) +[![Build](https://github.com/PickNikRobotics/graph_msgs/actions/workflows/build.yaml/badge.svg?branch=ros2)](https://github.com/PickNikRobotics/graph_msgs/actions/workflows/build.yaml?query=branch%3Aros2) ## Supported Graph Types From 19b1c1fd0bd8838ed06597c03072073d6b704321 Mon Sep 17 00:00:00 2001 From: Vatan Aksoy Tezer Date: Thu, 19 Aug 2021 21:50:27 +0300 Subject: [PATCH 03/12] Fix ccache (#7) --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 5300310..2f582dc 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -40,14 +40,14 @@ jobs: # that comes from the checkout. See "prepare target_ws for cache" task below - name: cache target_ws if: ${{ ! matrix.env.CCOV }} - uses: pat-s/always-upload-cache@v2.1.3 + 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.3 + uses: pat-s/always-upload-cache@v2.1.5 with: path: ${{ env.CCACHE_DIR }} key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }} From d0bc9a47bd9d026141da6e0564f2561087ddb308 Mon Sep 17 00:00:00 2001 From: Jafar Abdi Date: Tue, 14 Sep 2021 16:38:31 +0300 Subject: [PATCH 04/12] 0.2.0 --- CHANGELOG.rst | 5 +++++ package.xml | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 7e87d3b..8c3b920 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,11 @@ Changelog for package graph_msgs ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +0.2.0 (2021-09-14) +------------------ +* Port to ROS 2 (`#5 `_) +* Contributors: Dave Coleman, Henning Kayser, Tyler Weaver, Vatan Aksoy Tezer + 0.1.0 (2014-10-24) ------------------ * Added header / timestamp diff --git a/package.xml b/package.xml index 27301d8..93dcce0 100644 --- a/package.xml +++ b/package.xml @@ -1,6 +1,6 @@ graph_msgs - 0.1.0 + 0.2.0 ROS messages for publishing graphs of different data types Dave Coleman From d0557ff5b19b3bdc9382e011c6613db29a69eb7b Mon Sep 17 00:00:00 2001 From: Jafar Abdi Date: Wed, 15 Sep 2021 23:18:10 +0300 Subject: [PATCH 05/12] Add LICENSE file (#9) --- CONTRIBUTING.md | 3 +++ LICENSE | 25 +++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 CONTRIBUTING.md create mode 100644 LICENSE diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..309be1e --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,3 @@ +Any contribution that you make to this repository will +be under the 3-Clause BSD License, as dictated by that +[license](https://opensource.org/licenses/BSD-3-Clause). diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..574ef07 --- /dev/null +++ b/LICENSE @@ -0,0 +1,25 @@ +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. From 24e1b635924ed8f70606b83aa2f7d1fa959054df Mon Sep 17 00:00:00 2001 From: Vatan Aksoy Tezer Date: Thu, 26 May 2022 09:48:39 -0500 Subject: [PATCH 06/12] Humble CI and formatting updates (#10) --- .github/workflows/build.yaml | 12 ++++++++---- .github/workflows/format.yaml | 6 +++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 2f582dc..dee2b6f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -19,14 +19,18 @@ jobs: ROS_REPO: main - ROS_DISTRO: foxy ROS_REPO: testing - - ROS_DISTRO: rolling - ROS_REPO: main - - ROS_DISTRO: rolling - ROS_REPO: testing - ROS_DISTRO: galactic ROS_REPO: main - ROS_DISTRO: galactic ROS_REPO: testing + - ROS_DISTRO: humble + ROS_REPO: main + - ROS_DISTRO: humble + ROS_REPO: testing + - ROS_DISTRO: rolling + ROS_REPO: main + - ROS_DISTRO: rolling + ROS_REPO: testing env: CCACHE_DIR: ${{ github.workspace }}/.ccache BASEDIR: ${{ github.workspace }}/.work diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yaml index 4fcae08..0c63ebb 100644 --- a/.github/workflows/format.yaml +++ b/.github/workflows/format.yaml @@ -15,6 +15,6 @@ jobs: steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 - - name: Install clang-format-10 - run: sudo apt-get install clang-format-10 - - uses: pre-commit/action@v2.0.0 + - name: Install clang-format-12 + run: sudo apt-get install clang-format-12 + - uses: pre-commit/action@v2.0.3 From 45796497ecbc05cb9f62cb97e0789d8ed5af5e07 Mon Sep 17 00:00:00 2001 From: mosfet80 Date: Thu, 17 Oct 2024 22:53:24 +0200 Subject: [PATCH 07/12] Update .pre-commit-config.yaml --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4135841..a4313c7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -15,7 +15,7 @@ repos: # Standard hooks - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v3.4.0 + rev: v5.0.0 hooks: - id: check-added-large-files - id: check-case-conflict From 2326bfeab3bbe381b7e14fb4d9a059cc822d017d Mon Sep 17 00:00:00 2001 From: mosfet80 Date: Fri, 18 Oct 2024 14:47:00 +0200 Subject: [PATCH 08/12] Update requirements CMakeLists.txt the oldest ros distribution in development is humble. this requires cmake >=3.8 and gcc 17 Update CMakeLists.txt Update CMakeLists.txt Update format.yaml --- .github/workflows/format.yaml | 4 ++-- CMakeLists.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yaml index 0c63ebb..cee6a9e 100644 --- a/.github/workflows/format.yaml +++ b/.github/workflows/format.yaml @@ -15,6 +15,6 @@ jobs: steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 - - name: Install clang-format-12 - run: sudo apt-get install clang-format-12 + - name: Install clang-format-14 + run: sudo apt-get install clang-format-14 - uses: pre-commit/action@v2.0.3 diff --git a/CMakeLists.txt b/CMakeLists.txt index d64173d..132748f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.10) project(graph_msgs) # Default to C++14 From 37ca1ee5bd991fb55826e6a77ff1660378d32c54 Mon Sep 17 00:00:00 2001 From: mosfet80 <10235105+mosfet80@users.noreply.github.com> Date: Mon, 18 Aug 2025 14:54:46 +0200 Subject: [PATCH 09/12] Update format.yaml --- .github/workflows/format.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yaml index cee6a9e..2cc8f0a 100644 --- a/.github/workflows/format.yaml +++ b/.github/workflows/format.yaml @@ -13,8 +13,8 @@ jobs: name: Format runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 - name: Install clang-format-14 run: sudo apt-get install clang-format-14 - - uses: pre-commit/action@v2.0.3 + - uses: pre-commit/action@v3.0.1 From 59f156eac018bc0fabf86dfcd9215593bdac02fe Mon Sep 17 00:00:00 2001 From: mosfet80 <10235105+mosfet80@users.noreply.github.com> Date: Mon, 18 Aug 2025 14:57:17 +0200 Subject: [PATCH 10/12] Update build.yaml --- .github/workflows/build.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index dee2b6f..f494fb7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -44,14 +44,14 @@ jobs: # that comes from the checkout. See "prepare target_ws for cache" task below - name: cache target_ws if: ${{ ! matrix.env.CCOV }} - uses: pat-s/always-upload-cache@v2.1.5 + uses: pat-s/always-upload-cache@v3.0.11 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 + uses: pat-s/always-upload-cache@v3.0.11 with: path: ${{ env.CCACHE_DIR }} key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }} @@ -62,7 +62,7 @@ jobs: uses: 'ros-industrial/industrial_ci@master' env: ${{ matrix.env }} - name: upload test artifacts (on failure) - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 if: failure() with: name: test-results From 49e7b45c36851c90a396fe1ef89abb8b51ec426d Mon Sep 17 00:00:00 2001 From: mosfet80 Date: Tue, 15 Oct 2024 00:43:55 +0200 Subject: [PATCH 11/12] Update .pre-commit-config.yaml --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4135841..a4313c7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -15,7 +15,7 @@ repos: # Standard hooks - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v3.4.0 + rev: v5.0.0 hooks: - id: check-added-large-files - id: check-case-conflict From 14179316d2fe32b7d7bb87a9a4f22d55eb60a9d3 Mon Sep 17 00:00:00 2001 From: mosfet80 Date: Tue, 15 Oct 2024 00:49:18 +0200 Subject: [PATCH 12/12] Update build.yaml fix EOl ros distro fix node.js<20 deprecation --- .github/workflows/build.yaml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f494fb7..2753825 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -15,13 +15,9 @@ jobs: strategy: matrix: env: - - ROS_DISTRO: foxy + - ROS_DISTRO: iron ROS_REPO: main - - ROS_DISTRO: foxy - ROS_REPO: testing - - ROS_DISTRO: galactic - ROS_REPO: main - - ROS_DISTRO: galactic + - ROS_DISTRO: iron ROS_REPO: testing - ROS_DISTRO: humble ROS_REPO: main @@ -39,7 +35,7 @@ jobs: name: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # The target directory cache doesn't include the source directory because # that comes from the checkout. See "prepare target_ws for cache" task below - name: cache target_ws