plugins: add snapcraft python plugin
Metadata
Current evaluation
Merged PR #4044 (commit 302e58eeb, CRAFT-1630) added a Snapcraft-specific Python plugin subclassing Craft-parts' plugin to set venv symlinks per runtime environment.
Resolution: closed resolved
Reason: The PR itself was merged into main as commit 302e58eeb 'plugins: add snapcraft specific python plugin (#4044)', creating snapcraft/parts/plugins/python_plugin.py with the PythonPlugin subclass and python_common helpers; the file remains in the tree and was later extended by commits such as #4946 and #6437.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Subclass the generic Python plugin provided by Craft-parts and add Snapcraft-specific logic to set venv symlinks according to the runtime environment.
- [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/)?
- [ ] Have you successfully run `make lint`?
- [ ] Have you successfully run `pytest tests/unit`?
-----
CRAFT-1630
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #4044 (commit 302e58eeb, CRAFT-1630) added a Snapcraft-specific Python plugin subclassing Craft-parts' plugin to set venv symlinks per runtime environment. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in PR #4044 (4b23921), adding a Snapcraft-specific Python plugin with runtime-dependent venv symlink handling. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged into main. Introduces a Snapcraft-specific Python plugin that subclasses Craft-parts to set venv symlinks based on the runtime environment. Approved by reviewers, passed CI, and rebased prior to merge. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the snapcraft Python plugin, subclassing Craft-parts to implement Snapcraft-specific venv symlink logic for the runtime environment. Rebased on main and passed coverage checks. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcraft#4946
(confidence 55%)
Later commit 952a8e04d (PR #4946) extended the plugin's venv handling for core24 classic snaps.
-
Related To:
snapcraft#6437
(confidence 45%)
Commit 35853fff8 (PR #6437) further fixed interpreter path handling in the same plugin file.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #67 plugins: add python plugin | craft-parts | merged | Merged PR #67 (commit 2110a224, from cb95a246/4ae91142) added the Python plugin ported from Snapcraft, landing craft_parts/plugins/python_plugin.py plus tests/docs (+332 lines). |