Catkin plugin: Add support for ROS tools.
Metadata
Current evaluation
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.
Suggested action: —
No scores available.
Issue body
The current Catkin plugin distributes only the built version of a ROS package that would typically go into the devel workspace, but that version doesn't include non-source, non-binary files, such as .launch files. This PR changes the plugin to actually install ROS packages, thereby including any non-source, non-binary files specified by the developer.
This PR also updates the wrapper environment to correctly setup the ROS environment, which allows for the use of typical ROS tools within the snapcraft.yaml, such as roslaunch, rosrun, etc., and updates the ROS examples to make use of them.
Finally, this PR also increases the test coverage of the Catkin plugin twofold.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | 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. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. The Catkin plugin now installs ROS packages with all assets, configures the ROS environment, and increases test coverage. Packaging conflicts were temporarily worked around. The standalone ros plugin may be deprecated pending a related bug fix. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Updates the Catkin plugin to install ROS packages with non-source files and configure the environment for ROS tools. Test coverage doubled. A file conflict was resolved. The redundant ros plugin may be removed pending a bug fix. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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. | |
| #180 Backport to 1.x: Catkin plugin: Add support for ROS tools. | snapcraft | merged | Merged backport of #152 to the 1.x branch, adding ROS tool support to the Catkin plugin. The update modified four files with 112 additions and 28 deletions, successfully integrating the feature. | |
| #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. | |
| #195 Catkin plugin: Improve cmake path rewrite. | snapcraft | merged | Merged updates to the Catkin plugin that replace hard-coded cmake path rewrites with a generic, robust approach. The change modifies two files to correctly redirect ROS package Config.cmake files to the install directory. | |
| #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. | |
| #163 Catkin plugin: use rosdep for dependency resolution | snapcraft | merged | Merged. Replaced manual package.xml parsing with rosdep for Catkin plugin dependency resolution. Reviewers approved the changes, with minor naming suggestions deferred to a future refactor. | |
| #3282 v2 plugins: add catkin-tools plugin | snapcraft | merged | Merged. Introduces a catkin-tools plugin using the v2 plugin API, reusing shared ROS functionality from existing Catkin and Colcon plugins. Passed static and unit tests, approved by two reviewers, and successfully integrated. | |
| #2333 catkin, catkin-tools: add support for bases | snapcraft | merged | Merged update adding base support to catkin and catkin-tools plugins. Replaces rosdistro with automatic ROS release selection per base (Kinetic/core16, Melodic/core18). Resolves Launchpad bugs #1794778 and #1794779. Approved and merged. | |
| #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. | |
| #1593 catkin tools plugin: add catkin tools support. | snapcraft | merged | Merged a new catkin tools plugin replacing catkin_make. After review, conflict resolution, and adding a beta warning, the changes were approved. Brief testing infrastructure delays preceded successful integration. |