Skip to content

Commit

Permalink
Add Kilted Kaiju to REP 2000 (#412)
Browse files Browse the repository at this point in the history
* Add Kilted Kaiju to REP 2000

* Update Kilted package versions

This change reflects latest version number available in the supported
package manager(s), or the version number that we're using in CI tests.

These platforms were surveyed:
- Ubuntu
- Windows
- RHEL
- Debian
- macOS

* Update to Gazebo Ionic for Kilted

* Switch Windows package manager to pixi/conda

* Add cargo to build system list

* Add Zenoh and rmw_zenoh_cpp, reorder RMW and DDS entries

* Drop DDS nomenclature around middleware

Co-authored-by: Chris Lalancette <clalancette@gmail.com>
  • Loading branch information
cottsay and clalancette authored Dec 19, 2024
1 parent 165f8dc commit a671e22
Showing 1 changed file with 121 additions and 0 deletions.
121 changes: 121 additions & 0 deletions rep-2000.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1185,6 +1185,125 @@ Build System Support:
- cmake
- setuptools

Kilted Kaiju (May 2025 - November 2026)
---------------------------------------

Targeted platforms:

+--------------+------------------+---------------+------------------+-------------+-----------------+----------------+
| Architecture | Ubuntu Noble | Windows 10 | RHEL 9 | macOS | Debian Bookworm | OpenEmbedded / |
| | (24.04) | (VS2019) | | | (12) | Yocto Project |
+==============+==================+===============+==================+=============+=================+================+
| amd64 | Tier 1 [d][a][s] | Tier 1 [a][s] | Tier 2 [d][a][s] | Tier 3 [s] | Tier 3 [s] | Tier 3 [s] |
+--------------+------------------+---------------+------------------+-------------+-----------------+----------------+
| arm64 | Tier 1 [d][a][s] | | | | Tier 3 [s] | Tier 3 [s] |
+--------------+------------------+---------------+------------------+-------------+-----------------+----------------+
| arm32 | Tier 3 [s] | | | | Tier 3 [s] | Tier 3 [s] |
+--------------+------------------+---------------+------------------+-------------+-----------------+----------------+

The following indicators show what delivery mechanisms are available for each platform.

" [d] " Distribution-specific (Debian, RPM, etc.) packages will be provided for this platform for packages submitted to the rosdistro.

" [a] " Binary releases are provided as a single archive per platform containing all packages in the Jazzy ROS 2 repos file [14]_.

" [s] " Compilation from source.

Middleware Implementation Support:

+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| Middleware Library | Middleware Provider | Support Level | Platforms | Architectures |
+==========================+========================+===============+============================+================================+
| rmw_fastrtps_cpp | eProsima Fast-DDS | Tier 1 | All Platforms | All Architectures |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| rmw_connextdds | RTI Connext | Tier 1 | Ubuntu, Windows, and macOS | All Architectures except arm64 |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| rmw_cyclonedds_cpp | Eclipse Cyclone DDS | Tier 1 | All Platforms | All Architectures |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| rmw_zenoh_cpp | Eclipse Zenoh | Tier 1 | All Platforms | All Architectures |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| rmw_fastrtps_dynamic_cpp | eProsima Fast-DDS | Tier 2 | All Platforms | All Architectures |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+
| rmw_gurumdds_cpp | GurumNetworks GurumDDS | Tier 3 | Ubuntu and Windows | All Architectures except arm32 |
+--------------------------+------------------------+---------------+----------------------------+--------------------------------+

Middleware implementation support is dependent upon the platform support tier.
For example a Tier 1 middleware implementation on a Tier 2 platform can only receive Tier 2 support.

Minimum language requirements:

- C++17
- Python 3.9


Dependency Requirements:

+----------------+---------------------------------+-------------------------------------------------------------------+
| | Required Support | Recommended Support |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Package | Ubuntu Noble | Windows 10** | RHEL 9 | macOS** | Debian Bookworm | OpenEmbedded** |
+================+================+================+==========+===============+==================+=====================+
| CMake | 3.28.3 | 3.28.3 | 3.26.5 | 3.31.1 | 3.25.1 | 3.22.3 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| EmPY | 3.3.4 | 3.3.4 | 3.3.4a | 3.3.4 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Gazebo | Ionic* | N/A | N/A | Ionic* | Ionic* | N/A |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| NumPy | 1.26.4 | 1.26.4 | 1.20.1 | 2.1.3 | 1.24.2 | N/A |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Ogre | 1.12.10 | N/A |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| OpenCV | 4.6.0 | 4.9.0 | 4.6.0 | 4.10.0 | 4.6.0 | 4.1.0 / 3.2.0*** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| OpenSSL | 3.0.13 | 3.3.2 | 3.2.2 | 1.1.1w | 3.0.15 | 1.1.1d / 1.1.1b*** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Python | 3.12.3 | 3.12.3 | 3.9.19 | 3.13.0 | 3.11.2 | 3.8.2 / 3.7.5*** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Qt | 5.15.13 | 5.15.8 | 5.15.9 | 5.15.16 | 5.15.8 | 5.14.1 / 5.12.5*** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| | **Linux only** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| PCL | 1.14.0 | N/A | 1.12.0 | 1.14.1 | 1.13.0 | 1.10.0 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| **RMW Middleware** |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Connext DDS | 6.0.1.25 | N/A |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Cyclone DDS | 0.10.5 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Fast-DDS | 2.14.4 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Gurum DDS | 4.2.0 | N/A |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+
| Zenoh | 1.0.4 |
+----------------+----------------+----------------+----------+---------------+------------------+---------------------+

" * " means that this is not the upstream version (available on the official Operating System repositories) but a package distributed by OSRF or the community (package built and distributed on custom repositories).

" ** " means that the dependency may see multiple version changes, because the dependency uses a package manager that continually updates the dependency without a stable API.

" \*** " webOS OSE provides this different version.

This document only captures the version at the first release of a ROS distribution and will not be updated as the dependencies move forward.
These versions are thus a low watermark.


Package manager use for dependencies:

- Ubuntu, Debian: apt, pip
- Windows: pixi/conda, pip
- macOS: Homebrew, pip
- RHEL: dnf
- OpenEmbedded: opkg


Build System Support:

- ament_cmake
- cargo
- cmake
- setuptools

Rolling Ridley (June 2020 - Ongoing)
------------------------------------

Expand Down Expand Up @@ -1234,6 +1353,8 @@ References and Footnotes
.. [12] Iron ROS 2 Repos File
(https://github.com/ros2/ros2/blob/iron/ros2.repos)
.. [13] Jazzy ROS 2 Repos File
(https://github.com/ros2/ros2/blob/jazzy/ros2.repos)
.. [14] Kilted ROS 2 Repos File
(https://github.com/ros2/ros2/blob/rolling/ros2.repos)
Copyright
Expand Down

0 comments on commit a671e22

Please sign in to comment.