Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

get_action_names_and_types is not implemented by the rclpy node class #748

Open
alsora opened this issue Aug 17, 2022 · 3 comments
Open
Labels

Comments

@alsora
Copy link
Contributor

alsora commented Aug 17, 2022

Bug report

The get_action_names_and_types API defined here https://github.com/ros2/ros2cli/blob/rolling/ros2action/ros2action/api/__init__.py calls an homonym method on the Node rclpy class.
It looks like this function is not implemented.

This problem applies to both Galactic and Humble.

Is there a reason for that?
Which of the two libraries (ros2cli or rclpy) should be updated?

@fujitatomoya
Copy link
Collaborator

I may be mistaken...

def get_action_names_and_types(*, node):
return node.get_action_names_and_types()

will call either of the following?

  • if ros2 daemon is NOT available. (via DirectNode)

https://github.com/ros2/rclpy/blob/6c0847a70df2a359c28ffae7e49ece2e62c1794d/rclpy/src/rclpy/node.cpp#L567-L569

  • if ros2 daemon is available, request XMLRPC server. (via DaemonNode)

bind(rclpy.action.get_action_names_and_types, node),

@alsora
Copy link
Contributor Author

alsora commented Aug 18, 2022

Interesting, I didn't see that cpp/python binding, however the rclpy node python class does not expose that function.
We have the similar functions for topics and services, but not the one for actions.

https://github.com/ros2/rclpy/blob/rolling/rclpy/rclpy/node.py#L1878

@fujitatomoya
Copy link
Collaborator

rclpy node python class does not expose that function.

(rclpy.action does) but agree, this seems to be inconsistent for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants