ros2 / ros2/rclcpp

Update client API to be able to remove pending requests for ROS2 foxy

Open
#2,100 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
805
Forks
564
Avg merge
1d 17h
Merged PRs (30d)
27

Description

Feature request

Update client API to be able to remove pending requests for ROS2 foxy (see pull request #1734)

Feature description

I am trying implement a ROS2 service client call according to
https://github.com/ros2/examples/blob/rolling/rclcpp/services/minimal_client/main.cpp which removes pending requests if rclcpp::spin_until_future_complete(node, future) != rclcpp::FutureReturnCode::SUCCESS.
I realized that Client::remove_pending_request(const FutureAndRequestId &future) is not implemented in ROS2 foxy which I am using at the moment. The minimal client example does not remove pending requests (https://github.com/ros2/examples/blob/foxy/rclcpp/services/minimal_client/main.cpp). What are the implications of not removing the pending request?
I am not sure how these pull requests work for older versions of ROS2 and I was wondering if the functionality will be available for ROS2 foxy in the future. Thanks

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing pull request #1734 and the ROS2 Foxy client API around Client::remove_pending_request(const FutureAndRequestId&). Compare the Foxy minimal client example with the referenced rolling example and examine the behavior after spin_until_future_complete returns a non-success code. Done means Foxy provides the requested pending-request removal behavior and its implications are documented or covered by the relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
api, robotics
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.