0
$\begingroup$

I have a couple of packages that have recently been released on the ROS2 build farm: reach and reach_ros. reach is nominally a "ROS-independent" library that currently has no dependency on ROS2 or ament, but it attempts to build and install a Python bindings library. Currently this Python bindings library is being installed to an incorrect directory because I am not using the ament_get_python_install_dir function, which was introduced in ROS2 Humble.

I would like to apply a patch to the release branch for the reach humble build, that introduces the dependency on ament and leverages the function above. I only want to add this patch to the release build and not to the source code (so as not to introduce a dependency on ROS for this package).

Is the correct process for doing this simply pushing the patch to the patches/release/humble/reach branch of the release repository?

I was able to do this (apparently successfully) for the patches/release/noetic/reach branch. However, I was not able to do a similar thing for a different patch on the reach_ros release repo (see the history of the branch). In the case of the reach_ros release repo, the patch was somehow deleted (possibly by a subsequent call to bloom-release).

TLDR: what is the correct process for applying a patch to a release track of a library being built on the ROS2 build farm?

$\endgroup$

1 Answer 1

1
$\begingroup$

The tutorial section at http://wiki.ros.org/bloom/Tutorials/ReleaseThirdParty#Adding_an_Install_Rule_as_a_Patch has the basic workflow for patching software for release. The patches/* branches in bloom are essentially an "internal" implementation detail and they are updated when bloom picks up changes to the release/*, debian/*, or rpm/* branches.

In your case the past releases of your package will serve as having completed the git bloom-release ... step and you can proceed after that.

In fact, if you commit and push the changes to your release/* branch and run bloom-release ... again it will pick up and apply the changes for you without running git bloom-patch export.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.