catkin plugin: support recursive rosinstall files
Metadata
Current evaluation
Merged PR #1934 (commit 6bb63bb25) adds an opt-in `recursive-rosinstall` option to the Catkin plugin, merging nested rosinstall files from fetched repos. Fixes issue #1714; tested on the stable/pr-1934-recursive-rosinstall channel.
Resolution: closed resolved
Reason: The PR was approved and merged as commit 6bb63bb25, introducing the `recursive-rosinstall` option (default false) that keeps merging/updating the catkin workspace until no further rosinstall files are found, thereby resolving issue #1714.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh unit`?
-----
Currently, the Catkin plugin supports rosinstall files in that, if you hand it a list of rosinstall files in the source, it'll merge them into the workspace and fetch the repositories listed therein. However, what happens if _those_ repositories have rosinstall files of their own? This is not a situation wstool handles, and is something vendors script around.
This PR resolves #1714 by adding explicit support in Snapcraft for this situation by way of a new boolean option: `recursive-rosinstall`. This option defaults to false (since that's typically how wstool behaves), but if it's true, it'll continue merging/updating the workspace with newly-fetched rosinstall files until no more are found.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1934 (commit 6bb63bb25) adds an opt-in `recursive-rosinstall` option to the Catkin plugin, merging nested rosinstall files from fetched repos. Fixes issue #1714; tested on the stable/pr-1934-recursive-rosinstall channel. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #1934 as commit 6bb63bb25, adding an opt-in recursive-rosinstall Catkin option that processes nested rosinstall files and resolves #1714. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged. Introduces a recursive-rosinstall boolean option to the Catkin plugin, enabling automatic resolution of nested rosinstall files unsupported by wstool. Defaults to false. Resolves #1714 following successful review and CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Adds a recursive-rosinstall boolean option to Snapcraft's Catkin plugin, enabling recursive fetching and merging of nested rosinstall files to work around wstool limitations. Defaults to false. |
Update history
No update history recorded yet.
Related work
-
Duplicate Of:
snapcraft#1714
(confidence 90%)
Tracking issue 'catkin plugin: recursively merge rosinstall files' was closed by this PR's implementation of the recursive-rosinstall option.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1714 catkin plugin: recursively merge rosinstall files | snapcraft | closed | Added opt-in recursive rosinstall support to the Catkin plugin, discovering and merging nested rosinstall files in canonical/snapcraft#1934. | |
| #1314 catkin plugin: add support for rosinstall files | snapcraft | merged | Merged PR #1314 as commit 97a416d0a, adding ordered multi-file rosinstall support to the Catkin plugin and resolving Launchpad #1533735. | |
| #1533735 Catkin plugin: Support rosinstall files | snapcraft (launchpad) | closed | Catkin rosinstall support was merged in PR #1314 (commit 97a416d0a); rosinstall-files was later corrected to a pull property in #1473. | |
| #1473 catkin plugin: rosinstall-files is a pull property | snapcraft | merged | Merged PR #1473 corrected the catkin plugin to treat rosinstall-files as a pull property, committed as 09fcddf13. | |
| #1715 catkin plugin: detect and gracefully handle rosinstall clashes | snapcraft | closed | Abandoned as unnecessary: recursive rosinstall fetching was supported via #1934 (6bb63bb25), and @kyrofa said clash detection offered no gain. | |
| #1581 catkin plugin: support rosdep pip dependencies | snapcraft | merged | Merged PR #1581 in commit 186ae7f91, adding pip-based rosdep dependency support to the Catkin plugin and fixing LP bug #1683036. | |
| #152 Catkin plugin: Add support for ROS tools. | snapcraft | merged | Merged #152 as fc5142126, adding ROS package installation, roslaunch/rosrun support, updated examples, and doubled Catkin test coverage. | |
| #1367 catkin plugin: add support for ROS Lunar | snapcraft | merged | Merged PR #1367 (commit ba722e847), adding ROS Lunar support and the lsb-release build workaround for Launchpad bug #1677002. |