catkin plugin: check stage-snaps for ROS dependencies
Metadata
Current evaluation
Merged to master. Updates the catkin plugin to check stage-snaps for ROS dependencies, preventing redundant fetching by treating them like underlays. Resolves Launchpad bug #1823788. Approved, passed CI, and merged.
Suggested action: —
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] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh tests/unit`?
-----
Similar to building snaps with a separate underlay (i.e. content sharing), the introduction of `stage-snaps` means that ROS dependencies can already be satisfied by the time rosdep runs to determine what dependencies are required. This PR resolves [LP: #1823788](https://bugs.launchpad.net/snapcraft/+bug/1823788) by reusing the functionality that prevents fetching already-satisfied dependencies in an underlay to ensure that dependencies already satisfied by stage-snaps are treated the same way (i.e. not fetched again).
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged to master. Updates the catkin plugin to check stage-snaps for ROS dependencies, preventing redundant fetching by treating them like underlays. Resolves Launchpad bug #1823788. Approved, passed CI, and merged. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into master. Updates the catkin plugin to check stage-snaps for ROS dependencies, preventing redundant fetching and resolving Launchpad bug #1823788. Code coverage reached 100%. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into master. Updates the catkin plugin to check stage-snaps for ROS dependencies, preventing redundant fetching by reusing underlay logic. Resolves Launchpad bug #1823788. Merged with 100% diff coverage. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1823788 Catkin plugin doesn't notice ROS dependencies satisfied by stage-snaps | snapcraft (launchpad) | closed | Closed without resolution. The Catkin plugin limitation regarding stage-snap ROS dependencies was abandoned, with no fix implemented. | |
| #1314 catkin plugin: add support for rosinstall files | snapcraft | merged | Merged. Introduces a rosinstall-files property to the Catkin plugin, allowing Snapcraft to manage ROS workspace dependencies. Approved by a reviewer and merged after resolving CI test delays. Resolves Launchpad bug 1533735. | |
| #1130 catkin plugin: produce build-ready staging area. | snapcraft | merged | Merged update to the Catkin plugin generating a build-ready staging area by adjusting ROS files post-build, resolving LP #1663385. Approved, passed CI, and modified two files to prevent future parts from referencing the old install directory. | |
| #1367 catkin plugin: add support for ROS Lunar | snapcraft | merged | Merged the catkin plugin update to support ROS Lunar alongside Indigo, Jade, and Kinetic. CI initially failed due to a Launchpad bug, resolved by adding lsb-release to build-packages. Approved and merged after passing integration tests. | |
| #842 Catkin plugin: Support ROS Kinetic. | snapcraft | merged | Merged. Adds ROS Kinetic support to the Catkin plugin by refactoring source handling for extensibility and mapping ROS to Ubuntu releases. Fixed a fileutils coverage gap during review. Approved and merged. | |
| #152 Catkin plugin: Add support for ROS tools. | snapcraft | merged | Merged Catkin plugin updates to properly install ROS packages, include non-source files, and enable ROS tools via an updated wrapper environment. Resolved an xml2-config conflict while planning to remove the redundant roscore plugin. Tests doubled. | |
| #2585 catkin plugin: check workspace for dependencies | snapcraft | merged | Merged. Resolves LP: #1832044 by updating the Catkin plugin to use rospack for workspace dependency resolution instead of relying solely on the rosdep index. Approved by reviewers and passed all CI checks. | |
| #331 Catkin plugin: Handle rosdep empty and multiple dependencies. | snapcraft | merged | Merged refactoring of the Catkin plugin rosdep resolver to handle empty results and multiple dependencies per line. Fixes Launchpad bugs #1548406 and #1548404. Approved by maintainer sergiusens. | |
| #1779 catkin-tools plugin: use stage-packages | snapcraft | merged | Merged a fix switching the catkin-tools plugin from build-packages to stage-packages, resolving clean system failures. Added an integration test. Approved by two reviewers and passed CI. | |
| #1070 catkin plugin: don't stage compilers. | snapcraft | merged | Merged to master. The catkin plugin now routes compilers to an alternate working area instead of staging them, resolving LP #1658828 and preventing their inclusion in the final snap. Approved, passed CI, and merged. |