← Back to issue list

catkin plugin: support building entire workspace

View original Github issue

Metadata

Project
snapcraft
Number
#1743
Type
pull request
State
merged
Author
kyrofa
Labels
—
Created
Updated
Closed

Current evaluation

Merged #1743 in commit ec4cac26a, making catkin-packages optional so the Catkin plugin builds the entire workspace when omitted; this also resolves snapcraft#1713.

Resolution: closed resolved

Reason: PR #1743 was merged as commit ec4cac26a, implementing workspace-wide Catkin builds and closing the related request in #1713.

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 requires one to specify each and every Catkin package in the workspace that needs to be built and installed into the snap. This is a hindrance for larger projects, especially as oftentimes the entire workspace is needed. This PR resolves LP: [#1721168](https://bugs.launchpad.net/snapcraft/+bug/1721168) (and #1713) by making the `catkin-packages` property optional. If it's not specified, simply build the entire workspace. Thus the only API change is making what was previously a required property optional, and assigning meaning to its absence.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged #1743 in commit ec4cac26a, making catkin-packages optional so the Catkin plugin builds the entire workspace when omitted; this also resolves snapcraft#1713.
stealth/space-bunny-alpha — closed resolved Merged PR #1743 (commit ec4cac26a) by kyrofa made catkin-packages optional: omitting it now builds the entire ROS workspace, closing LP bug #1721168 and GitHub issue #1713.
stealth/space-bunny-alpha — closed resolved Merged #1743 (ec4cac26a): made catkin-packages optional, so the Catkin plugin builds the entire workspace when the property is omitted.
qwen/qwen3.6-35b-a3b — — Merged. The catkin-packages property is now optional. When omitted, the plugin builds the entire workspace. Resolves LP: #1721168. Approved by two reviewers with passing CI checks.
qwen3.6-35b-a3b-mtp-q6 — — Merged PR making the catkin-packages property optional in the Catkin plugin. When omitted, the plugin builds the entire workspace, resolving Launchpad bug #1721168.

Update history

No update history recorded yet.

Related work

  • Related To: snapcraft#1713 (confidence 100%)

    The workspace-wide Catkin build request was implemented by PR #1743.

Related issues

Issue Project State Summary Similarity
#1721168 Catkin plugin: support building the entire workspace snapcraft (launchpad) closed Implemented in snapcraft PR #1743 (commit ec4cac26a, "catkin plugin: support building entire workspace"), merged ~Nov 2017. catkin-packages became optional: omitting it builds the whole workspace, while an empty list still means no packages.
93%
#1713 catkin plugin: support for building all packages in a given workspace snapcraft closed Implemented workspace-wide Catkin builds: omitting catkin-packages now builds every package. Merged in canonical/snapcraft#1743 via commit ec4cac26a.
91%
#2459 catkin plugin: describe how to build all packages snapcraft merged Merged as commit 5f8c2061: adds the missing Catkin plugin doc blurb noting catkin-packages builds all workspace packages when unset, documenting the earlier LP: #1721168 fix (PR #1743, ec4cac26a).
80%
#2585 catkin plugin: check workspace for dependencies snapcraft merged Merged PR #2585 (b88e37814) fixed Catkin builds by using rospack to enumerate workspace packages and exclude their internal dependencies from rosdep resolution; resolves LP #1832044.
76%
#175 Catkin plugin: Refactor build. snapcraft merged Merged in snapcraft#175 via commit 9045874fd, refactoring Catkin environment, dependency handling, build logic, source-space support, and tests.
76%
#2847 Catkin plugin: consider only 'local' workspaces snapcraft merged Merged PR #2847 (commit 1d476f622) sources ROS setup with --local, preventing destructive-mode Catkin builds from using host workspaces and skipping dependency installation.
74%
#1779 catkin-tools plugin: use stage-packages snapcraft merged Merged #1779 (ebc4f2ce2): catkin-tools now uses stage-packages for clean-system builds, with a snapd-suite integration test.
74%
#1832044 Catkin plugin doesn't check the workspace for dependencies snapcraft (launchpad) closed Catkin plugin failed on whole-workspace builds because rosdep (#685) couldn't resolve deps satisfied by in-workspace packages. Workaround merged in snapcraft PR #2585 (commit b88e37814); the workaround was later dropped in #2833 once rosdep was fixed upstream.
74%
#2545 catkin plugin: use build-packages for compilers snapcraft merged Merged PR #2545 in commit ddb2d2627, replacing Catkin's side-loaded compiler workaround with required build-packages and fixing LP: #1827148 rebuild failures.
73%
#840 Catkin plugin: build with in-snap python. snapcraft merged Merged #840 as 7f9fa3ac1, fixing LP #1628990 by using in-snap Python during Catkin builds and adding gcc, libc-dev, and make as build packages.
71%