Catkin plugin stages compilers
Metadata
Current evaluation
Catkin no longer stages compilers: snapcore/snapcraft#1070 (ea8736af4) moved them to an alternate work area, keeping compiler bloat out of ROS snaps.
Resolution: closed resolved
Reason: Merged PR snapcore/snapcraft#1070 as commit ea8736af4, making Catkin fetch required compilers for builds without staging them in the final snap.
Evaluated by: mr-cal-bot
No scores available.
Issue body
The Catkin plugin currently fetches compilers via stage-packages so it uses the compilers that correspond to the version of ROS it's using. However, this has the side effect of putting compilers (and their associated bloat) into every ROS snap. Using the plugin's archives for this is fine (and probably necessary), but the compilers shouldn't be staged unless they're explicitly requested.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Catkin no longer stages compilers: snapcore/snapcraft#1070 (ea8736af4) moved them to an alternate work area, keeping compiler bloat out of ROS snaps. | |
| stealth/space-bunny-alpha | — | closed resolved | Catkin compilers were moved to an alternate work area, keeping them available during builds but out of final ROS snaps; merged as canonical/snapcraft#1070 (ea8736af4). | |
| stealth/space-bunny-alpha | — | closed resolved | Merged snapcore/snapcraft#1070 (commit ea8736af4), making Catkin fetch compilers into an alternate work area instead of staging them, keeping compiler bloat out of final ROS snaps. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed by merged PR canonical/snapcraft#1070 (commit ea8736af4), which uses a separate working area for Catkin compilers instead of staging them into ROS snaps. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The Catkin plugin report highlighted that default compiler staging causes unnecessary snap bloat, but no fix was implemented or merged. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The issue reported that the Catkin plugin unnecessarily stages compilers via stage-packages, adding bloat to ROS snaps. No comments or fixes were implemented. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcore/snapcraft#1070
(confidence 100%)
Merged as ea8736af4; the PR explicitly fixes LP #1658828.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1070 catkin plugin: don't stage compilers. | snapcraft | merged | Merged PR #1070 as commit ea8736af4, moving required Catkin compilers to an alternate work area so they are available during builds but excluded from final snaps; fixes LP #1658828. | |
| #1663385 Catkin plugin: Staging area not suitable for building other parts | snapcraft (launchpad) | closed | Catkin staging output was made reusable by later parts: merged snapcraft#1130 rewrote ROS-specific paths after building, fixing LP #1663385. | |
| #1638317 Catkin plugin doesn't build pure python workspaces | snapcraft (launchpad) | closed | Catkin plugin only staged g++ when roscpp was a dependency, breaking pure-Python ROS workspaces. Fixed by snapcore/snapcraft PR #881 (merged as 2f0c8ba04), staging gcc/g++ unconditionally; issue closed by maintainer ~kyrofa. | |
| #1823788 Catkin plugin doesn't notice ROS dependencies satisfied by stage-snaps | snapcraft (launchpad) | closed | Catkin stage-snap dependency detection was implemented by merged snapcraft PR #2525 (commit d1c5f1b00), avoiding redundant ROS dependency fetches. | |
| #2525 catkin plugin: check stage-snaps for ROS dependencies | snapcraft | merged | Merged #2525 as d1c5f1b00, updating the catkin plugin to honor ROS dependencies supplied by stage-snaps and avoid redundant fetches. | |
| #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. | |
| #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. | |
| #881 Catkin plugin: Python nodes require gcc/g++ too. | snapcraft | merged | Merged as commit 2f0c8ba04: catkin plugin now stages gcc/g++ unconditionally at the start of the build (instead of only when roscpp is a dependency), fixing LP bug #1638317. | |
| #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. | |
| #1130 catkin plugin: produce build-ready staging area. | snapcraft | merged | Merged PR #1130 (commit e34b7ab19) makes the Catkin plugin rewrite ROS-specific paths after building, creating a staging area reusable by later parts and fixing LP #1663385. |