← Back to issue list

[feature] ROS plugins v2 out of source tree builds

View original Github issue

Metadata

Project
snapcraft
Number
#3405
Type
pull request
State
merged
Author
artivis
Labels
Created
Updated
Closed

Current evaluation

Merged. Enables out-of-source-tree builds for ROS plugins v2, allowing snapcraft.yaml placement in the package root. Replaces PR #3348. Approved by two reviewers and passed CI.

Suggested action:

No scores available.

Issue body

This PR changes the ROS plugins v2 so that they use the 'out of source tree builds' feature introduced in https://github.com/snapcore/snapcraft/pull/3392. It allows for distributing the `snapcraft.yaml` config file directly alongside a ROS package (in the package root directory) whereas it can currently only be distributed with a ROS workspace. Replaces a previous attempt https://github.com/snapcore/snapcraft/pull/3348. - [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`? -----

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged. Enables out-of-source-tree builds for ROS plugins v2, allowing snapcraft.yaml placement in the package root. Replaces PR #3348. Approved by two reviewers and passed CI.
qwen3.6-35b-a3b-mtp-q6 Merged. Updates ROS plugins v2 to use out-of-source tree builds, permitting snapcraft.yaml placement in the package root rather than a workspace. Replaces PR #3348. Accepted with a 0.01% coverage decrease.
qwen3.6-35b-a3b-mtp-q6 Merged. Enables out-of-source tree builds for ROS plugins v2, allowing snapcraft.yaml to reside in the ROS package root instead of requiring a full workspace. Replaces PR #3348 and passed all tests.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#3392 plugins v2: add support for out of source tree builds snapcraft merged Merged. Introduces an out_of_source_build property to PluginV2, disabling automatic source copying. Applied to meson and cmake plugins, adjusted for consistency per review, and merged with 100% diff coverage.
73%
#3664 ROS plugins v2: respect source-subdir key snapcraft merged Merged. Updates ROS plugins v2 to respect the source-subdir key, removes an unnecessary catkin_tools dependency, and adds tests for Colcon and catkin v2 subdir handling. Approved by reviewers and passed CI.
72%
#3536 ROS plugins v2 misc fixes snapcraft merged Merged. Fixes ROS plugins v2 staging failures by checking local ROS directories and skipping rosdep resolution for locally available packages. Updated tests for core20. Approved by two reviewers and passed CI.
72%