Fix the use of go-use (Go Workspaces) when using dependencies that include `replace <dep> => <relative path` in the go.mod file
Metadata
Current evaluation
go-use symlink-resolution fix for relative `replace` directives in dependency go.mod files; changes requested, 3 unresolved comments, test-other-plugins and title-policy CI failing, author moved the approach to PR #1466.
Suggested action: close superseded
Reason: The author explicitly abandoned this approach: "The fix didn't pass the test ... I think I found more of an issue than we faced before (which requires a bigger solution)" and later "For now, I created a new PR #1466 which implements the 'comment out' ... of those replace statements by the go-use plugin," after @tigarmo steered him to the go-work replace-conflict rationale. The PR is left with changes_requested and 3 unresolved review comments, a failing test-other-plugins matrix (the author himself notes a broken expectation in test_get_build_commands_go_use_with_go_dependency, which still exists in tests/unit/plugins/test_go_plugin.py), and a failing Conventional Commits title check, with no maintainer activity for 223 days.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha |
Impact:
28
Quick Win:
1
Complexity:
42
Confidence:
88
Actionability:
8
|
close superseded | go-use symlink-resolution fix for relative `replace` directives in dependency go.mod files; changes requested, 3 unresolved comments, test-other-plugins and title-policy CI failing, author moved the approach to PR #1466. | |
| qwen/qwen3.6-35b-a3b |
Impact:
40
Quick Win:
4
Complexity:
55
Confidence:
90
Actionability:
20
|
close superseded | Fixes go-use plugin to handle replace directives in go.mod by resolving symlinks. Superseded by PR #1466 which implements a different approach (commenting out replace statements). Author acknowledges the superseding PR. | |
| qwen/qwen3.8-27b |
Impact:
45
Quick Win:
18
Staleness:
82
Complexity:
60
Confidence:
78
|
close stale | Fixes go-use failing on deps with relative `replace` directives in go.mod by resolving symlinks to absolute paths. Changes requested; author abandoned this approach and opened PR #1466 implementing the maintainer-endorsed 'comment out replace' fix instead. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
85
Complexity:
45
Confidence:
90
|
close stale | Addresses Go workspace replace directive conflicts in the go-use plugin by resolving symlinks. Currently superseded by a newer PR implementing reviewer feedback. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
90
Complexity:
40
Confidence:
95
|
close stale | Addresses go-workspace replace directive conflicts in the go-use plugin. Superseded by PR #1466 after maintainer feedback suggested modifying go.mod directives instead of resolving symlinks. |
Update history
No update history recorded yet.
Related work
-
Superseded By:
canonical/craft-parts#1466
(confidence 92%)
Author states he created #1466 to implement the maintainer-preferred 'comment out relative replace statements' approach; that PR is open, and a maintainer there noted the *-use plugins are obsolete post-Madrid.
-
Related To:
canonical/craft-parts#1478
(confidence 55%)
Later merged commit e5af6aab 'feat(go-use): error early if go.mod is missing' also modifies craft_parts/plugins/go_use_plugin.py, the same file this PR changes.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1466 feat: Comment out replace statements to relative paths in go.mod | craft-parts | open | Adds awk-based stripping of relative replace directives in go.mod to the go-use plugin, plus an integration test. Its go.mod existence check was already merged separately; maintainer says *-use plugins are obsolete post-Madrid. |