Because rake and ruby are system dependencies and do not provide a ROS-compatible package manifest, the "correct" way to list them in manifest.xml would be
<rosdep name="ruby" />
<rosdep name="rake" />
The patch in #111 fixes the InvalidManifest exception, but rosdep is still not able to resolve and install the dependencies:
johannes@im-laptop-007:/opt/orocos/kinetic/src/orocos_toolchain$ rosdep install --from-path . -i --rosdistro kinetic
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
orogen: Missing resource rake
ROS path [0]=/opt/orocos/src/orocos_toolchain
ROS path [1]=/opt/ros/kinetic/share
Compatibility between AutoProj and ROS tools regarding interpretation of manifest.xml is a long-lasting issue (https://github.com/orocos-toolchain/utilrb/issues/5). Ideally ROS tools would simply ignore manifest.xml if package.xml is present, but this request has been denied for reasons of backwards compatibility (https://github.com/ros-infrastructure/rosdep/issues/353). As long as this is not the case, the manifest.xml files need to be compatible to the ROS conventions if we want to allow users to use tools like rosdep, which implies distinguishing ROS and system dependencies using different tags. Luckily unknown tags like <depend_optional> or <test_depend> are simply ignored by rosdep instead of returning with an error, but still it fails to verify or install those deps.
Remaining commits are to synchronize dependencies, maintainer and version number in package.xml with the toolchain-2.9 branch.
Follow-up on #111 (@NikolausDemmel).
Unfortunately the old format 1 of the ROS package manifest (
manifest.xml
) differentiates between ROS packages and third-party software provided by the operating system and managed by rosdep: http://docs.ros.org/independent/api/rospkg/html/manifest_xml.htmlBecause
rake
andruby
are system dependencies and do not provide a ROS-compatible package manifest, the "correct" way to list them inmanifest.xml
would beThe patch in #111 fixes the
InvalidManifest
exception, but rosdep is still not able to resolve and install the dependencies:Compatibility between AutoProj and ROS tools regarding interpretation of
manifest.xml
is a long-lasting issue (https://github.com/orocos-toolchain/utilrb/issues/5). Ideally ROS tools would simply ignoremanifest.xml
ifpackage.xml
is present, but this request has been denied for reasons of backwards compatibility (https://github.com/ros-infrastructure/rosdep/issues/353). As long as this is not the case, themanifest.xml
files need to be compatible to the ROS conventions if we want to allow users to use tools like rosdep, which implies distinguishing ROS and system dependencies using different tags. Luckily unknown tags like<depend_optional>
or<test_depend>
are simply ignored by rosdep instead of returning with an error, but still it fails to verify or install those deps.Remaining commits are to synchronize dependencies, maintainer and version number in
package.xml
with the toolchain-2.9 branch.