micro-ROS / micro-ROS-Agent

ROS 2 package using Micro XRCE-DDS Agent.
Apache License 2.0
101 stars 58 forks source link

Request official ROS release #188

Closed qw8z5fUB closed 1 year ago

qw8z5fUB commented 1 year ago

I have a client package which is dependent on micro_ros_agent. I'd like to add to my package.xml the dependency <depend>micro_ros_agent</depend>, then have micro_ros_agent installed automatically via rosdep install --from-paths my_package. However this does not work.

(I'm migrating from a rosserial client, where declaring a dependency on rosserial_arduino was enough to have all dependencies installed and get the client running, without any additional steps).

Looking at the ROS package index I see that micro_ros_agent is not officially released (it shows release:UNRELEASED). I assume this is why the packages are not available through rosdep.

I see from related issues (#96, #163) that you have other distribution channels via snap and third-party apt repos, is there a particular reason the official ROS channels are not supported?

My understanding is that to release through official channels you need to create a bloom release repository - is that something you could look at? This would make it much easier for end-users to adopt this package.

pablogs9 commented 1 year ago

micro-ROS Agent is released via Vulcanexus Micro packages: https://docs.vulcanexus.org/en/latest/rst/installation/linux_binary_installation.html

qw8z5fUB commented 1 year ago

Yes I'm aware of that, the request was for release through official channels, as is the convention for ROS packages.

The micro-ros project claims "Seamless integration with ROS 2" as a key feature - I regard a requirement to setup non-ROS apt repositories as a clear "seam" in the integration, clearly at odds with basic ROS packaging conventions. The ticket was opened because I was wondering if there is a particular reason for this. Can you comment on the rationale? Would you consider an official ROS release in future?

gavanderhoorn commented 1 year ago

A bit of a me too, but I just wanted to add that we've encountered the same situation.

As the agent is a ROS package, we can exec_depend on it, but we can't tell users to just rosdep it, as without the additional repository setup and the addon to the rosdep DB, that won't work.

It would be really nice to find a solution for this.


Edit: just to clarify: I do appreciate the Vulcanexus tutorials and package infrastructure. It makes some things easier. This is just one of those seams @qw8z5fUB mentions that might be nice to sort out.

pablogs9 commented 1 year ago

Hi @qw8z5fUB , We're sorry if this solution is not the one you were looking for. However, we do take note of your feedback and we'll take it into account for future decision-making.

qw8z5fUB commented 1 year ago

Thanks for the comment. Yes I was mostly curious if there was a particular reason for not releasing the package, or if an official release just hasn't been considered yet. If the later I'd definitely suggest considering it as it would greatly facilitate use/adoption of micro ROS, for the reasons mentioned above.

gavanderhoorn commented 1 year ago

@pablogs9: I'm not sure what the requirements / criteria are these days, but OSRF has infrastructure to import specific .debs into the main package repositories. catkin_lint and a couple other packages are imported into repositories.ros.org that way -- same thing for some ROS 2 dependencies.

That would not need any more work/maintenance on your side, except a couple of PRs every now and then to import a new version.

Not sure whether packages that depend on other ROS 2 packages are handled though. That might make OSRF hesitant to do this with micro_ros_agent.

tonybaltovski commented 1 year ago

+1 for this. We would like to have micro_ros_agent available from the Open Robotics buildfarm as well.

reinzor commented 1 year ago

+1 here

rgariepy commented 1 year ago

@pablogs9 (cc @JaimeMartin) Any update on the plans here? Can we help at all? We have the same desire as @qw8z5fUB , though possibly with a bit more scale :)