ros-infrastructure / rosdoc2

Command-line tool for generating documentation for ROS 2 packages.
Apache License 2.0
29 stars 9 forks source link

Allow ament-cmake-python build types #75

Closed rkent closed 3 months ago

rkent commented 3 months ago

This enables displaying python API in a mixed module with C++.

You can see the effects in the full_package test case. That is, run the tests. Locate the test directory (which is typically at /tmp/pytest-of-), serve http from there (I use python -m http.server 8001), connect to localhost:8001 in your browser, and navigate to the latest full_package directory.

The index on the left should contain (and tests confirm) two items, "Python API" and "C++ API". Previously "C++ API" was expanded in the index to include the subitems "Class Hierarchy", "File Hierarchy", and "Reference". That only makes sense if the rosdoc2 output only contains the C++ API. It is intentional that those are now collapsed under a single heading "C++ API" We are adding other items there, now "Python API" and soon messages, standard documents, user documentation, and more, so we need to be clearer about what the items in the index are.

kscottz commented 3 months ago

@rkent these pull requests are great. We really appreciate it!

We should let the community know about the new features in rosdoc2. Would you be willing to make a post on ROS Discourse about these changes? I am more than happy to write the post, but I would prefer it come from the actual author. Please let me know.

rkent commented 3 months ago

@kscottz a post will be appropriate at some point, but right now this is a WIP so I don't really want anyone adapting to these changes yet. I did this work two years ago, but ultimately abandoned the effort because PR #28 which was a critical prerequisite just could not get landed. Reviews and landings are moving now again (thanks, @tfoote!), so I thought I would return to it.

You can see where this is going, at least what I previously implemented, at https://rosdabbler.github.io/fqdemo

We still need to land at least:

It might be appropriate do a post after all of these major pieces have landed. But there are still some serious questions about layout of how all this looks that could be addressed, and some larger issues I would like to address. So this is a moving target, but moving fairly quickly.

kscottz commented 3 months ago

@rkent I skimmed that repository and AFAICT it looks like you are trying to put together a high-quality template project? Is that a fair assessment? That's really exciting work and please keep us informed!

I was speaking to the improvements in ROSDoc2 in particular, not necessarily your downstream project.

I suggest that a post of the form, "I just added these new features to ROSDoc2, and I am working on this larger full quality project, would love some help / feedback" might be helpful. We're really trying to push on ROS documentation right now and this would really help us out. Happy to chat more; I would love to see your project through to completion.

ros-discourse commented 3 months ago

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

https://discourse.ros.org/t/rosdoc2-undergoing-significant-change/36905/2