ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How is the info in the package.xml of a metapackage used?

asked 2013-04-30 08:15:12 -0500

130s gravatar image

updated 2013-04-30 08:16:03 -0500

William gravatar image

My guess is that one of the usage is to let buildfarm know which pkgs in the given metapkg to be built.

From here is just fyi of what makes me wonder about this.

I know 1 of the pkgs in my metapkg that I'm trying to release into hydro doesn't build yet since one of the dependent pkgs is not yet available in the buildfarm. Actually bloom-releaseing doesn't proceed at its internal rosdep call. In an attempt to tell the buildfarm not to build this single pkg "A-a" that depends on not-yet-available pkg, I commented out a run_depend entry of "A-a" in package.xml of the metapkg. But bloom still doesn't let me push it [0].

Am I doing something wrong with package.xml? What is the recommended usage of ROS tools (eg. bloom, package.xml etc) to release a metapkg that some of its components don't build?

I know I can make a temporary branch on my vcs tool locally but particularly I want to know how the information in package.xml in metapkg is used. Thanks!

[0] Upon bloom-releaseing a metapkg, I get:

Could not resolve rosdep key 'foo'
Resolve problem with rosdep and then continue to try again.
Continue [Y/n]? Y
Running 'rosdep update'...
Could not resolve rosdep key 'foo'
Resolve problem with rosdep and then continue to try again.
Continue [Y/n]? n

[1] the depended pkg is not available yet:

$ rosdep --rosdistro hydro resolve foo
ERROR: no rosdep rule for 'foo'

Btw, foo here is tf2_ros. I'm trying to generalize the issue.

edit retag flag offensive close merge delete


A metapackage need not necessarily be contained within the same repo as the packages on which it depends. Your question seems to assume that they are all released together, which is often done.

joq gravatar image joq  ( 2013-04-30 13:37:20 -0500 )edit

@Dirk Thomas your comment sounds like an answer to my question.

130s gravatar image 130s  ( 2013-05-01 15:00:55 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2013-04-30 09:46:10 -0500

Dirk Thomas gravatar image

The dependencies of a metapackage only effect the debian package generated for that metapackage. It does not "disable" the other package when you comment out the line.

edit flag offensive delete link more

Question Tools


Asked: 2013-04-30 08:15:12 -0500

Seen: 262 times

Last updated: Apr 30 '13