catkin plugin _Catkin.find always fails
Metadata
Current evaluation
Fixed by merged PR #1526: commit ae9fd598f updated the Catkin plugin to stop assuming Catkin exists in the underlay.
Resolution: closed resolved
Reason: The PYTHONPATH failure in catkin_find was resolved by PR #1526, merged as commit ae9fd598f (“catkin plugin: don't assume catkin is in underlay”).
Evaluated by: mr-cal-bot
No scores available.
Issue body
I'm experimenting with underlays, but the catkin plugin is pulling the deb for the package despite it being present in the underlay. From stepping through snapcraft with pdb, it appears that the issue is that the script that _Catkin.find runs always fails, which the plugin interprets as the package not found in the underlay.
When I changed https://github.com/snapcore/snapcraft/blob/9e8e336deb406cbecdda11e5ca7a25c329454e98/snapcraft/plugins/catkin.py#L911 to:
subprocess.check_output(['/bin/bash', f.name, 'catkin_find'] + arguments).decode('utf8').strip()
The stderr showed the following:
Traceback (most recent call last):
File "/home/ruddick/Desktop/ros_underlay/parts/my-msgs/catkin/install/opt/ros/kinetic/bin/catkin_find", line 11, in <module>
from catkin.find_in_workspaces import find_in_workspaces
ImportError: No module named catkin.find_in_workspaces
It looks like /home/ruddick/Desktop/ros_underlay/parts/my-msgs/catkin/install/opt/ros/kinetic/lib/python2.7/dist-packages needs to be added to the PYTHONPATH in the temp script (currently it's only /home/ruddick/Desktop/ros_underlay/parts/my-msgs/catkin/install/usr/lib/python2.7/dist-packages)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Fixed by merged PR #1526: commit ae9fd598f updated the Catkin plugin to stop assuming Catkin exists in the underlay. | |
| stealth/space-bunny-alpha | — | closed resolved | _Catkin.find always failed because the generated catkin_find script ran against the underlay's catkin instead of Snapcraft's isolated copy. Fixed by merged PR #1526 (commit ae9fd598f), resolving LP #1696014. | |
| stealth/space-bunny-alpha | — | closed stale | Catkin underlay lookup was traced to a missing ROS dist-packages PYTHONPATH entry, but the report was closed as abandoned without an official fix. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed. Abandoned without official resolution. A contributor identified a missing PYTHONPATH entry causing _Catkin.find to fail and proposed a patch to include the correct dist-packages directory. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The report identified a missing PYTHONPATH causing catkin_find import failures in the snapcraft catkin plugin. With zero comments and no follow-up, the issue was abandoned due to inactivity. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcraft#1526
(confidence 99%)
The proposed fix was merged as commit ae9fd598f.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1354 catkin plugin: fix pythonpath for catkin_find | snapcraft | closed | Closed unmerged after inactivity; its linked catkin-underlay failure was later fixed by merged PR #1526 in commit ae9fd598f. | |
| #1526 catkin plugin: don't assume catkin is in underlay | snapcraft | merged | Merged #1526 in commit ae9fd598f, making the Catkin plugin use its isolated Catkin installation instead of requiring Catkin in the underlay; fixes LP #1696014. |