Welcome to the latest release of ROS 2 software named Bouncy Bolson!
This version of ROS 2 is supported on four platforms (see REP 2000):
- Ubuntu 18.04 (Bionic)
- Debian packages for amd64 as well as arm64
- Ubuntu 16.04 (Xenial)
- no Debian packages but building from source is supported
- Mac OS X 10.12 (Sierra)
- Windows 10 with Visual Studio 2017
Binary packages as well as instructions for how to compile from source are provided (see install instructions <Installation> as well as documentation).
- New launch system <Launch-system> featuring a much more capable and flexible Python API.
- Parameters can be passed as command line arguments <Node-arguments> to C++ executables.
- Static remapping via command line arguments <Node-arguments>.
- Various improvements to the Python client library.
- Support for publishing and subscribing to serialized data. This is the foundation for the upcoming work towards a native rosbag implementation.
- More command line tools <Introspection-with-command-line-tools>, e.g. for working with parameters and lifecycle states.
- Binary packages / fat archives support three RMW implementations by default (without the need to build from source):
- eProsima's FastRTPS (default)
- RTI's Connext
- ADLINK's OpenSplice
For an overview of all features available, including those from earlier releases, please see the Features <Features> page.
Changes since the Ardent Apalone <Release-Ardent-Apalone> release:
- The Python package
launch
has been redesigned. The previous Python API has been moved into a submodulelaunch.legacy
. You can update existing launch files to continue to use the legacy API if a transition to the new Python API is not desired. - The ROS topic names containing namespaces are mapped to DDS topics including their namespaces. DDS partitions are not being used anymore for this.
- The recommended build tool is now
colcon
instead ofament_tools
. This switch has no implications for the code in each ROS 2 package. The install instructions have been updated and the read-the-docs page describes how to map an existingament_tools
call tocolcon
. - The argument order of this rclcpp::Node::create_subscription() signature has been modified.
- New-style launch files may hang on shutdown for some combinations of platform and RMW implementation.
- Static remapping of namespaces not working correctly when addressed to a particular node.
- Opensplice error messages may be printed when using
ros2 param
andros2 lifecycle
command-line tools.