wstool failing with tf2_msgs

asked 2019-02-05 23:40:42 -0500

KenYN gravatar image

updated 2019-02-14 22:06:40 -0500

Note this is similar, but not identical to this question - the other question was when repositories had been renamed; this looks like a GitHub release process bug, perhaps?

I'm using rosinstall_generator to create a list of modules to feed into wstool, and the lines include:

- tar:
    local-name: geometry2/tf2_msgs
    uri: https://github.com/ros-gbp/geometry2-release/archive/release/kinetic/tf2_msgs/0.5.20-0.tar.gz
    version: geometry2-release-release-kinetic-tf2_msgs-0.5.20-0

This gives an error:

ERROR [vcstools] Tarball download unpack failed: "geometry2-release-release-kinetic-tf2_msgs-0.5.20-0 is not a subdirectory with contents in members ['geometry2-release-release-kinetic-tf2_msgs']"[/vcstools]

Directly downloading the URL from GitHub, I see that unlike other projects, the tarball has the directory geometry2-release-release-kinetic-tf2_msgs without any version number.

Other packages like tf2_eigen, tf2_geometry_msgs bond_core/smclib and image_common/calibration_parsers fail for identical reasons.

Of course, editing the version with something like this works:

sed -i 's/version: \(geometry2-release-release-kinetic-tf2_msgs\)-[0-9\.\-]\+/version: \1/g' input_file.txt

However, is there a neater workaround, or can the GitHub end be fixed?

UPDATE: I've had a go at fixing the source; see my GitHub fork.

edit retag flag offensive close merge delete

Comments

You're running into (something similar to) ros/geometry2#306. We ran into that as well in robust-rosin/robust#69, but only when trying to fetch old releases.

I'm curious: are you trying to build ..

gvdhoorn gravatar image gvdhoorn  ( 2019-02-06 02:32:13 -0500 )edit

.. an old checkout of tf2 packages?

As to a fix: see the comments on ros/geometry2#306. I believe that summarises it quite well.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-06 02:34:12 -0500 )edit

Yes, I've seen these conversations, but I think mine is different as rather than a renamed base name, my problem is a missing version number. I'm just doing rosinstall_generator --rosdistro kinetic --from-path my_project --deps --exclude opencv" +wstool init` basically.

KenYN gravatar image KenYN  ( 2019-02-11 23:52:07 -0500 )edit

You're correct, I'd read your question too hastily.

Perhaps Github has changed something recently? This might warrant an issue on the wstool issue tracker? If you do post there, could you please post a comment with a link to your issue here? Just so we keep things connected.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-12 02:30:31 -0500 )edit

I've reported it here: vcstools/wstool#130.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-12 10:00:48 -0500 )edit

UPDATE: I've had a go at fixing the source; see my GitHub fork.

Already commented on the PR you submitted, but just for completeness: the proposed changes are a work-around, not a fix. The problem is with GH: either they've change something in their API/backend and haven't communicated ..

gvdhoorn gravatar image gvdhoorn  ( 2019-02-15 03:38:18 -0500 )edit

.. that, or they've introduced a regression and should fix it.

Until we know which it is, we can't really fix anything in wstool.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-15 03:38:43 -0500 )edit