[Ros-release] Wet Prereleases

Daniel Stonier d.stonier at gmail.com
Fri Feb 15 01:51:25 UTC 2013

I recently spent quite a bit of time catkin bugfixing inbetween a
successful pre-release and a successful release, so I thought I'd post some

Previously, one important part of pre-releasing was catching stack
dependency bugs. Wet pre-releases on the other hand, let through alot of
dependency bugs that are only found in the actual release. I believe the
cause is due to the fact that the pre-release runs catkin on the whole
stack, whereas the release works on individual packages.

In a pre-release a missing package dependency (e.g. you used
geometry_msgs/Pose.h, but didn't include geometry_msgs in the package.xml)
sometimes gets installed by another unrelated package in the stack which,
just by chance, also happened to use it and did include it in the
package.xml correctly... and no error results. On the build farm, where it
builds packages independantly, you get a fail.

These fails also happen in other ways - e.g. a missing find_package(catkin
REQUIRED ...) in just one package in the stack also gets past pre-release.

I know that once you're familiar with the development process, these
problems are not so common. In this case, however, I had someone new trying
on the catkin release process, and the 12-24 hr delay ping-ponging back and
forth between trying a release, bugfixing it and trying again meant broken
packages for a considerable period of time.

Also as a result - it rather feels that the pre-release isn't doing much
more for me than a compile check that I can do on my own machine.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-release/attachments/20130215/647b3417/attachment-0008.html>

More information about the Ros-release mailing list