Open gavanderhoorn opened 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.
[..] 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.
+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
Could it be that generated MoveIt configuration packages are missing a
run_depend
on themoveit_fake_controller_manager
,rviz
andwarehouse_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.