moveit / moveit_setup_assistant

THIS REPO HAS MOVED TO https://github.com/ros-planning/moveit
8 stars 20 forks source link

Missing run_depends in generated pkgs: rviz, fake_ctrlr_mgr, warehouse_ros #94

Open gavanderhoorn opened 10 years ago

gavanderhoorn commented 10 years ago

Could it be that generated MoveIt configuration packages are missing a run_depend on the moveit_fake_controller_manager, rviz and warehouse_ros packages?

Doing a rosdep install .. on a cfg pkg on a clean system (ie: no MoveIt whatsoever, minimal ROS) installs loads of packages, but seems to miss the mentioned pkgs. As a result, demo.launch fails to load properly fi.

RViz will probably be installed by other stuff anyway, but the others might not be.

davetcoleman commented 10 years ago

Yes, you are right. However I believe I've had this same discussion before and the issue is that some robots may want to use MoveIt! on a headless or otherwise light-weight system where requiring to install those extra packages is not a good idea. All MoveIt! robots kind of need to use the ROBOT_moveit_config package for their config files and launch files. While some of those launch files require the dependencies you are referring to, many of them do not.

I see your point and kind of agree with you. I think the best solution would be to split the config package into two packages - the root launch files like move_group.launch and the config files, and a secondary package like ROBOT_moveit_demos. But that would make package maintenance much more difficult for the MoveIt! Setup Assistant. I'm open to thoughts.

gavanderhoorn commented 10 years ago

[..] some robots may want to use MoveIt! on a headless or otherwise light-weight system where requiring to install those extra packages is not a good idea.

Right, I hadn't considered that usecase.

I see your point and kind of agree with you. I think the best solution would be to split the config package into two packages - the root launch files like move_group.launch and the config files, and a secondary package like ROBOT_moveit_demos. But that would make package maintenance much more difficult for the MoveIt! Setup Assistant. I'm open to thoughts.

Hm, I'm all for the smallest-reusable-artefact approach, but this would indeed lead to a rather excessive number of packages. If only ROS had something like suggested packages, or we had some runtime detection capability to detect whether users had installed required prerequisites (ie: fake controllers, rviz, warehouse, ..) and then error out appropriately.

Perhaps the best 'solution' is just to document this. Something explaining that ROBOT_moveit_config is just the base package, and that the visual aspects of the planning interface (ie: demo.launch, warehouse stuff) have additional dependencies.

davetcoleman commented 10 years ago

+1 more documentation. I think it would be nice if moveit_setup_assistant generated a README.md

In my experience I've just added those dependencies in other MoveIt! packages I develop