Closed christianrauch closed 3 months ago
Attention: Patch coverage is 12.50000%
with 14 lines
in your changes missing coverage. Please review.
Project coverage is 86.85%. Comparing base (
8295aba
) to head (8867912
). Report is 2 commits behind head on master.:exclamation: Current head 8867912 differs from pull request most recent head f79d216
Please upload reports for the commit f79d216 to get more accurate results.
Files | Patch % | Lines |
---|---|---|
src/utils.ts | 12.50% | 14 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
ros-jazzy-ament-clang-format
only depends onclang
but notclang-format
.
Weird, ros-jazzy-ament-clang-format
does depend on clang-format
on Ubuntu. Looks like the rosdep
entry for clang-format
is clang-format
on Ubuntu, but just clang
on RHEL: https://github.com/ros/rosdistro/blob/2716870a27ef298e41fb48041e60c60c4aacc7a5/rosdep/base.yaml#L561. Is the clang-format
package available? If so, we could switch it to clang-format
.
Is the
clang-format
package available? If so, we could switch it toclang-format
.
No. The package with the clang-format
executable is called clang-tools-extra
.
Then let's change it to that one! Do you want to do it, or should I do it?
Also, adding workflows to test this on RHEL would be great. You could just do the following workflows for RHEL:
Then let's change it to that one! Do you want to do it, or should I do it?
Well, if you give me the option, can you do it?
I am also not a regular RHEL or derivative user. I am only working on those actions so I can test-bloom my packages before releasing them. There may be a couple of more dependency issues that should be addressed by someone regularly using the RHEL platforms.
I've opened a PR: https://github.com/ros/rosdistro/pull/41591.
I don't really use RHEL either. Issues can always be fixed :grinning:
Also, adding workflows to test this on RHEL would be great. You could just do the following workflows for RHEL:
- Check development tools
- Check ROS distribution (rolling)
I added the AlmaLinux image to the list of Docker images. Apart from the Windows build, the CI passes (https://github.com/ros-tooling/setup-ros/actions/runs/9488155288?pr=694).
Thank you! I'm about to get on a plane, so I'll review it all tomorrow.
I seem to have problems with the message generation on AlmaLinux 8 but not 9. While ros-humble-rosidl-default-generators
and ros-humble-rosidl-typesupport-c
get installed, a call to find_package(rosidl_default_generators REQUIRED)
fails with:
-- Found ament_cmake: 1.3.9 (/opt/ros/humble/share/ament_cmake/cmake)
-- Found Python3: /usr/bin/python3 (found version "3.6.8") found components: Interpreter
-- Override CMake install command with custom implementation using symlinks instead of copying resources
-- Found rosidl_default_generators: 1.2.0 (/opt/ros/humble/share/rosidl_default_generators/cmake)
CMake Error at /opt/ros/humble/share/rosidl_typesupport_c/cmake/get_used_typesupports.cmake:35 (message):
No 'rosidl_typesupport_c' found
Call Stack (most recent call first):
/opt/ros/humble/share/rosidl_typesupport_c/cmake/rosidl_typesupport_c-extras.cmake:8 (get_used_typesupports)
/opt/ros/humble/share/rosidl_typesupport_c/cmake/rosidl_typesupport_cConfig.cmake:41 (include)
/opt/ros/humble/share/rosidl_default_generators/cmake/rosidl_default_generators-extras.cmake:21 (find_package)
/opt/ros/humble/share/rosidl_default_generators/cmake/rosidl_default_generatorsConfig.cmake:41 (include)
However, the package in question (https://github.com/christianrauch/apriltag_msgs) builds fine on the build farm: https://build.ros2.org/view/Hbin_rhel_el864/job/Hbin_rhel_el864__apriltag_msgs__rhel_8_x86_64__binary/24/consoleFull.
I noticed that the official build farm additionally installs ros-humble-rosidl-typesupport-fastrtps-c
and ros-humble-rosidl-typesupport-fastrtps-cpp
. I don't see how these get installed as rosdep dependency for apriltag_msgs
. There might be more dependency tracking issues with other packages.
I have to admit I'm not quite sure what's wrong there. You could start with only supporting RHEL 9 if you want.
Looks like the dist/index.js
file needs to be re-generated: https://github.com/ros-tooling/setup-ros/actions/runs/9504837413/job/26198373578?pr=694
I also took the liberty to fix the Windows - jazzy URL. I am surprised nobody complained about this earlier.
Alright, this looks good now. Thank you very much for the PR and for iterating!
Since this definitely won't break existing workflows, we can start with this and then fix stuff further down the road.
This PR adds support for RHEL-derives distributions, such as AlmaLinux and Rocky Linux, to the setup action. The support should be feature-complete. However, I had issues actually applying the action for some of my packages, due to broken dependency definitions in ROS packages. E.g.
ros-jazzy-ament-cmake-clang-format
has no indirect dependency onclang-tools-extra
, which provides theclang-format
command;ros-jazzy-ament-clang-format
only depends onclang
but notclang-format
. Hence, any package that hasament-cmake-clang-format
as test dependency will fail unless those dependencies are installed manually.