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

Checklist for supporting document generation for ament_python packages #48

Closed
17 of 18 tasks
Yadunund opened this issue Mar 10, 2023 · 1 comment · Fixed by #49
Closed
17 of 18 tasks

Checklist for supporting document generation for ament_python packages #48

Yadunund opened this issue Mar 10, 2023 · 1 comment · Fixed by #49

Comments

@Yadunund
Copy link
Collaborator

Yadunund commented Mar 10, 2023

Automatic document generation for python (ament_python) packages in the ROS ecosystem has been a long pending ask and the purpose of this ticket is to serve as a checklist of PRs/patches to land to deliver this functionality.

PRs/Code to merge into this repo in specific order:

I've incorporated all these changes into temporary branch for my testing and I'm pleased to share that document generation has gone well for most of the ament_python packages in the ros2 org. Along the way I've had to make some changes some packages to successfully generate documentation. Most of the changes are related to populating the package.xml with missing exec_depends. Without this, autodoc will try to import these dependency modules when importing the module to be documented. The downside of this is that cross-reference across pkgs is not yet supported but I'll discuss this and other todo's for the future later below. Other changes include fixes to docstrings to comply with sphinx/autodoc spec.

PRs to merge to generate documentation without any warnings

Document generation results using combined changes

Pkg Works?
action_tutorials_py
demo_nodes_py
domain_coordinator
examples_rclpy_executors
examples_rclpy_guard_conditions
examples_rclpy_minimal_action_client
examples_rclpy_minimal_action_server
examples_rclpy_minimal_client
examples_rclpy_minimal_publisher
examples_rclpy_minimal_service
examples_rclpy_minimal_subscriber
examples_rclpy_pointcloud_publisher
examples_tf2_py
launch
launch_pytest
launch_ros
launch_testing
launch_testing_examples
launch_testing_ros
launch_xml
launch_yaml
lifecycle_py
quality_of_service_demo_py
rclpy
ros2action
ros2bag
ros2cli
ros2component
ros2doctor
ros2interface
ros2launch
ros2lifecycle
ros2multicast
ros2node
ros2param
ros2pkg
ros2run
ros2service
ros2test
ros2topic
ros2trace
rosidl_cli
rosidl_pycommon
rosidl_runtime_py
rpyutils
sensor_msgs_py
sros2
test_launch_ros
test_tracetools_launch
tf2_ros_py
tf2_tools
topic_monitor
tracetools_launch
tracetools_read
tracetools_test
tracetools_trace
@ros-discourse
Copy link

This issue has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2023-03-16/30432/1

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

Successfully merging a pull request may close this issue.

2 participants