For some time now, Github displays a Used by button/badge at the top of the page for repositories containing packages/libraries/projects in Ruby, Javascript, Python, Java and some other languages (from here):
For languages with project/package management features (such as Python, Javascript (NPM) and PHP), Github parses the relevant files (pom.xml
, package.json
, requirements.txt
, etc) to derive and display this information (docs). This is currently only supported for a specific set of packaging and project infrastructures (docs).
Long ago, when this feature was first introduced, I’ve contacted Github support about this, but only got the standard “thanks for reaching out, will look into it sometime” reply. Now that it’s been around a bit longer, it may make sense to try again.
As quite a few ROS packages are hosted by/on Github (or actually: quite a lot), I was wondering what it would take to get Github to add support for ROS package manifests.
It would offer a tremendously convenient way to discover new ROS packages, show dependencies between packages (and repositories) and even allow API access to this data.
Technically, I’m thinking this could be achieved similar to how the current rosdep
/ rosinstall_generator
/ Bloom / status_pages / wiki-metadata infrastructure works. The data is all there: Github “just” needs to grab it, match it (or the cached inverse) and display it.
We could of course all start filling in the Github support contact form, but perhaps there is a better way.
Does anyone here have an idea?
PS: the ROS wiki offers similar data, but “only” for packages which have actually been released (or at least: for which the author has made the effort to register doc
or devel
jobs). The Used by feature would not need to be limited to this. It would make implementing it somewhat more diffult of course, as it cannot rely on the rosdistro
database any more in this case.
PPS: of course, index.ros.org also has this information. I’m not advocating for replacing it.