Skip to content

Commit

Permalink
Move dependencies to rosidl_core and depend on action_msgs (#22)
Browse files Browse the repository at this point in the history
Move implementation to new packages rosidl_core_generators and rosidl_runtime_generators

The new packages are located in a separate repository: https://github.com/ros2/rosidl_core.git

rosidl_defaults now depends on the new packages, plus message definitions required for Actions (namely action_msgs).

This allows users to avoid having to explictly depend on action_msgs.

Signed-off-by: Jacob Perron <jacob@openrobotics.org>
  • Loading branch information
jacobperron authored Aug 23, 2022
1 parent e6e56c2 commit 718c8c0
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 109 deletions.
6 changes: 2 additions & 4 deletions rosidl_default_generators/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,11 @@ project(rosidl_default_generators NONE)
find_package(ament_cmake REQUIRED)

ament_export_dependencies(ament_cmake_core)
ament_export_dependencies(rosidl_cmake)
ament_export_dependencies(rosidl_core_generators)

if(BUILD_TESTING)
find_package(ament_lint_auto REQUIRED)
ament_lint_auto_find_test_dependencies()
endif()

ament_package(
CONFIG_EXTRAS "rosidl_default_generators-extras.cmake.in"
)
ament_package()
23 changes: 4 additions & 19 deletions rosidl_default_generators/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,32 +9,17 @@
<author email="dthomas@osrfoundation.org">Dirk Thomas</author>

<buildtool_depend>ament_cmake</buildtool_depend>

<!-- Code generation for Actions depends on action_msgs -->
<buildtool_export_depend>action_msgs</buildtool_export_depend>

<buildtool_export_depend>ament_cmake_core</buildtool_export_depend>
<buildtool_export_depend>rosidl_cmake</buildtool_export_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_generator_packages -->
<buildtool_export_depend>rosidl_generator_c</buildtool_export_depend>
<buildtool_export_depend>rosidl_generator_cpp</buildtool_export_depend>
<buildtool_export_depend>rosidl_generator_py</buildtool_export_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_typesupport_c_packages -->
<buildtool_export_depend>rosidl_typesupport_c</buildtool_export_depend>
<buildtool_export_depend>rosidl_typesupport_fastrtps_c</buildtool_export_depend>
<buildtool_export_depend>rosidl_typesupport_introspection_c</buildtool_export_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_typesupport_cpp_packages -->
<buildtool_export_depend>rosidl_typesupport_cpp</buildtool_export_depend>
<buildtool_export_depend>rosidl_typesupport_fastrtps_cpp</buildtool_export_depend>
<buildtool_export_depend>rosidl_typesupport_introspection_cpp</buildtool_export_depend>
<buildtool_export_depend>rosidl_core_generators</buildtool_export_depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>

<group_depend>rosidl_generator_packages</group_depend>
<group_depend>rosidl_typesupport_c_packages</group_depend>
<group_depend>rosidl_typesupport_cpp_packages</group_depend>

<export>
<build_type>ament_cmake</build_type>
</export>
Expand Down

This file was deleted.

7 changes: 4 additions & 3 deletions rosidl_default_runtime/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@ project(rosidl_default_runtime NONE)

find_package(ament_cmake REQUIRED)

ament_export_dependencies(ament_cmake_core)
ament_export_dependencies(rosidl_core_runtime)

if(BUILD_TESTING)
find_package(ament_lint_auto REQUIRED)
ament_lint_auto_find_test_dependencies()
endif()

ament_package(
CONFIG_EXTRAS "rosidl_default_runtime-extras.cmake.in"
)
ament_package()
12 changes: 3 additions & 9 deletions rosidl_default_runtime/QUALITY_DECLARATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,14 +86,9 @@ Results of linter tests can be found [here](https://ci.ros2.org/view/nightly/job

### Direct Runtime ROS Dependencies [5.i]/[5.ii]

`rosidl_default_runtime` has the following group dependencies all of which are at **Quality Level 1** for **Quality Level 1** middlewares:
* `rosidl_runtime_packages` At the time of writing, this group contains the following runtime packages:
- `rosidl_runtime_c` [QUALITY DECLARATION](https://github.com/ros2/rosidl/blob/master/rosidl_runtime_c/QUALITY_DECLARATION.md)
- `rosidl_runtime_cpp` [QUALITY DECLARATION](https://github.com/ros2/rosidl/blob/master/rosidl_runtime_cpp/QUALITY_DECLARATION.md)
- `rosidl_typesupport_c` [QUALITY DECLARATION](https://github.com/ros2/rosidl_typesupport/blob/master/rosidl_typesupport_c/QUALITY_DECLARATION.md)
- `rosidl_typesupport_cpp` [QUALITY DECLARATION](https://github.com/ros2/rosidl_typesupport/blob/master/rosidl_typesupport_cpp/QUALITY_DECLARATION.md)
* `rosidl_typesupport_c_packages` At the time of writing, this group does not contain middleware independent runtime dependencies. It will likely include `typesupport_c` packages for your chosen middleware, which need to be **Quality Level 1** for this package to be considered **Quality Level 1**.
* `rosidl_typesupport_cpp_packages` At the time of writing, this group does not contain middleware independent runtime dependencies. It will likely include `typesupport_cpp` packages for your chosen middleware, which need to be **Quality Level 1** for this package to be considered **Quality Level 1**.
`rosidl_default_runtime` has the following depedencies, all of which are at **Quality Level 1** for **Quality Level 1** middlewares:
* `rosidl_core_runtime` [QUALITY DECLARATION](https://github.com/ros2/rosidl_core/blob/rolling/rosidl_core_runtime/QUALITY_DECLARATION.md)
* `action_msgs` [QUALITY DECLARATION](https://github.com/ros2/rcl_interfaces/blob/rolling/action_msgs/QUALITY_DECLARATION.md)

Note that interface generation or interface typesupport dependencies used only by Python client libraries are not considered in this assessment.

Expand All @@ -107,7 +102,6 @@ Note that interface generation or interface typesupport dependencies used only b
Currently nightly results can be seen here:
* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/rosidl_default_runtime/)
* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/rosidl_default_runtime/)
* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/rosidl_default_runtime/)
* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/rosidl_default_runtime/)

## Security [7]
Expand Down
19 changes: 2 additions & 17 deletions rosidl_default_runtime/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,28 +10,13 @@

<buildtool_depend>ament_cmake</buildtool_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_runtime_packages -->
<build_export_depend>rosidl_runtime_c</build_export_depend>
<build_export_depend>rosidl_runtime_cpp</build_export_depend>
<build_export_depend>rosidl_generator_py</build_export_depend>
<build_export_depend>rosidl_core_runtime</build_export_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_typesupport_c_packages -->
<build_export_depend>rosidl_typesupport_c</build_export_depend>
<build_export_depend>rosidl_typesupport_fastrtps_c</build_export_depend>
<build_export_depend>rosidl_typesupport_introspection_c</build_export_depend>

<!-- Bloom does not support group_depend, so this unrolls rosidl_typesupport_cpp_packages -->
<build_export_depend>rosidl_typesupport_cpp</build_export_depend>
<build_export_depend>rosidl_typesupport_fastrtps_cpp</build_export_depend>
<build_export_depend>rosidl_typesupport_introspection_cpp</build_export_depend>
<exec_depend>action_msgs</exec_depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>

<group_depend>rosidl_runtime_packages</group_depend>
<group_depend>rosidl_typesupport_c_packages</group_depend>
<group_depend>rosidl_typesupport_cpp_packages</group_depend>

<export>
<build_type>ament_cmake</build_type>
</export>
Expand Down
24 changes: 0 additions & 24 deletions rosidl_default_runtime/rosidl_default_runtime-extras.cmake.in

This file was deleted.

0 comments on commit 718c8c0

Please sign in to comment.