From 095f04cc6d5b145aff3a653050bf8cdafb8629f0 Mon Sep 17 00:00:00 2001 From: "Marco A. Gutierrez" Date: Tue, 14 Nov 2023 21:02:54 +0800 Subject: [PATCH] Adding Jazzy to REP 2000 (#387) * Adding Jazzy, initial pass. Signed-off-by: Marco A. Gutierrez Co-authored-by: Chris Lalancette --- rep-2000.rst | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 118 insertions(+), 2 deletions(-) diff --git a/rep-2000.rst b/rep-2000.rst index ff3cf7d8..6be02885 100644 --- a/rep-2000.rst +++ b/rep-2000.rst @@ -1,10 +1,10 @@ REP: 2000 Title: ROS 2 Releases and Target Platforms -Author: Mikael Arguedas , Steven! Ragnarok , Dirk Thomas , Audrow Nash , Geoffrey Biggs +Author: Mikael Arguedas , Steven! Ragnarok , Dirk Thomas , Audrow Nash , Geoffrey Biggs , Marco A. Gutierrez Status: Active Type: Informational Content-Type: text/x-rst -Created: 10-Apr-2018, 24-Apr-2018, 21-May-2018, 10-Dec-2018, 20-May-2019, 21-May-2019, 29-Aug-2019, 25-Feb-2020, 18-Nov-2021, 10-Nov-2022 +Created: 10-Apr-2018, 24-Apr-2018, 21-May-2018, 10-Dec-2018, 20-May-2019, 21-May-2019, 29-Aug-2019, 25-Feb-2020, 18-Nov-2021, 10-Nov-2022, 10-Nov-2023 Abstract @@ -1065,6 +1065,120 @@ Package manager use for dependencies: - OpenEmbedded: opkg +Build System Support: + +- ament_cmake +- cmake +- setuptools + +Jazzy Jalisco (May 2024 - May 2029) +----------------------------------- + +Targeted platforms: + ++--------------+------------------+---------------+------------------+-------------+-----------------+----------------+ +| Architecture | Ubuntu Noble | Windows 10 | RHEL 9 | macOS | Debian Bookworm | OpenEmbedded / | +| | (24.04) | (VS2019) | | | (12) | webOS OSE | ++==============+==================+===============+==================+=============+=================+================+ +| amd64 | Tier 1 [d][a][s] | Tier 1 [a][s] | Tier 2 [d][a][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 [13]_. + +" [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_cyclonedds_cpp | Eclipse Cyclone DDS | Tier 1 | All Platforms | All Architectures | ++--------------------------+------------------------+---------------+----------------------------+--------------------------------+ +| rmw_connextdds | RTI Connext | Tier 1 | Ubuntu, Windows, and macOS | All Architectures except arm64 | ++--------------------------+------------------------+---------------+----------------------------+--------------------------------+ +| 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.27.7 | 3.22.0 | 3.20.2 | 3.14.4 | 3.25.1 | 3.22.3 / 3.16.5*** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| EmPY | 3.3.4 | 3.3.2 | 3.3.4 | 3.3.4 | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Gazebo | Harmonic* | N/A | N/A | Harmonic* | Harmonic* | N/A | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| NumPy | 1.24.2 | 1.18.4 | 1.20.1 | 1.18.4 | 1.24.2 | N/A | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Ogre | 1.12.10 | N/A | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| OpenCV | 4.6.0 | 3.4.6* | 4.6.0 | 4.2.0 | 4.6.0 | 4.1.0 / 3.2.0*** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| OpenSSL | 3.0.10 | 1.1.1l | 3.0.7 | 1.1.1f | 3.0.11 | 1.1.1d / 1.1.1b*** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Python | 3.11.6 | 3.8.3 | 3.9.16 | 3.10.8 | 3.11.2 | 3.8.2 / 3.7.5*** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Qt | 5.15.10 | 5.12.12 | 5.15.3 | 5.12.3 | 5.15.8 | 5.14.1 / 5.12.5*** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| | **Linux only** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| PCL | 1.13.0 | N/A | 1.12.0 | N/A | 1.13.0 | 1.10.0 | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| **RMW DDS Middleware** | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Cyclone DDS | 0.10.4 | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Fast-DDS | 2.11.2 | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Connext DDS | 6.0.1 | N/A | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ +| Gurum DDS | 4.2.0 | N/A | ++----------------+----------------+----------------+----------+---------------+------------------+---------------------+ + +" * " 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: Chocolatey, pip +- macOS: Homebrew, pip +- RHEL: dnf +- OpenEmbedded: opkg + + Build System Support: - ament_cmake @@ -1118,6 +1232,8 @@ References and Footnotes .. [11] Humble ROS 2 Repos File (https://github.com/ros2/ros2/blob/humble/ros2.repos) .. [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/rolling/ros2.repos) Copyright