go plugin: support for bases
Metadata
Current evaluation
Merged. Introduces base support to the Go plugin, prioritizing the Go snap from the Snap Store and enabling golang-go installation on supported bases. Approved by reviewer and passed all CI checks.
Suggested action: —
No scores available.
Issue body
Revamp the go plugins installation candidates to prefer the go snap
from the Snap Store first and provide a mechanism to be able to
install a build-packages golang-go instead on the supported bases.
LP: #1794785
Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>
- [ ] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] 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)?
- [ ] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [ ] Have you successfully run `./runtests.sh static`?
- [ ] Have you successfully run `./runtests.sh tests/unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged. Introduces base support to the Go plugin, prioritizing the Go snap from the Snap Store and enabling golang-go installation on supported bases. Approved by reviewer and passed all CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Revamps the Go plugin to prioritize the Snap Store Go snap and enables golang-go installation via build-packages on supported bases, resolving LP #1794785. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Updates the Go plugin to prioritize the Snap Store Go snap and enables golang-go installation via build-packages on supported bases, resolving LP #1794785. Code coverage reached 100% for the diff. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2328 godeps plugin: support for bases | snapcraft | merged | Merged. Updated the godeps plugin to prioritize the Go snap and added support for installing golang-go via build-packages on supported bases. Approved, passed CI, and integrated. | |
| #2356 nodejs plugin: add support for bases | snapcraft | merged | Merged update adding base support to the Node.js plugin. Updates npm and yarn invocation to follow standard industry practices. Approved by two reviewers, passed CI, and modified 18 files. | |
| #2373 rust plugin: add support for bases | snapcraft | merged | Merged update to the Rust plugin adding base support for core16 and core18. Resolves Launchpad bug #1798681. Approved, passed CI, and achieved 100% diff coverage with a net zero line change across 23 files. | |
| #2362 python plugin: add support for bases | snapcraft | merged | Merged. Updated the Python plugin to support core16 and core18 bases. Approved by reviewer, passed CI, and migrated tests to spread with 97.36% coverage. | |
| #3046 plugins: introduce v2.GoPlugin | snapcraft | merged | Merged after approval and CI checks. Introduces v2.GoPlugin for Go plugin support requiring go.mod and adds .get_build_snaps as an abstract method to PluginV2. Changes span 26 files with 366 additions and 49 deletions. | |
| #2372 gradle plugin: add support for bases | snapcraft | merged | Successfully merged update to the Gradle plugin, restricting base support to core16 and core18. Approved by reviewer, passed CI, and integrated with 448 additions and 108 deletions across 13 files. | |
| #1057 godeps plugin: support for go-packages. | snapcraft | merged | Merged into master, adding go-packages support to the godeps plugin to match the go plugin. Approved by a reviewer, passed CI checks, and increased overall code coverage. | |
| #78 plugins: add go plugin (CRAFT-48) | craft-parts | merged | Merged a Go plugin for go.mod-based projects, adapted from Snapcraft V2. Approved by two reviewers, passed CI, and introduced 425 additions across seven files. Co-authored by Sergio Schvezov. |