Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions source/Releases/Release-Lyrical-Luth.rst
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,16 @@ TODO
New features in this ROS 2 release
----------------------------------

``ament_cmake``
^^^^^^^^^^^^^^^

Allow multiple ``ament_python_install_package()`` calls per package
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
This enables shipping a single package with both python code and generated interfaces (from ``rosidl_generate_interfaces()``).
Source directories from each call are merged at install time, with the last call winning on file conflicts.

See https://github.com/ament/ament_cmake/pull/587 for more details.

``class_loader``
^^^^^^^^^^^^^^^^

Expand Down Expand Up @@ -190,6 +200,19 @@ See https://github.com/ros2/rcl/issues/1178, https://github.com/ros2/rcl/pull/12
See `ros2/rclcpp#2984 <https://github.com/ros2/rclcpp/issues/2984>`__ and
`ros2/rclcpp#2985 <https://github.com/ros2/rclcpp/pull/2985>`__ for more details.

``rclpy``
^^^^^^^^^

Native asyncio support with ``AsyncNode`` (experimental)
""""""""""""""""""""""""""""""""""""""""""""""""""""""""

Added ``AsyncNode``, a new node type that runs on the ``asyncio`` event loop.
Subscription, service, and timer callbacks can now ``await`` any asyncio operation.
The new async ``client.call(request)`` and sim-time aware ``clock.sleep(...)`` are awaitable from any asyncio task.
CPU usage is significantly reduced compared to the ``SingleThreadedExecutor``.

See the :doc:`Writing an async node with asyncio <../Tutorials/Intermediate/Writing-An-Async-Node-With-Asyncio-Python>` tutorial and https://github.com/ros2/rclpy/pull/1620 for more details.

``rosbag2``
^^^^^^^^^^^

Expand Down
Loading