go.mod: update gogen to fix XGot_ template recv type inference (goplus/gogen#634)#2778
go.mod: update gogen to fix XGot_ template recv type inference (goplus/gogen#634)#2778fennoai[bot] wants to merge 1 commit into
Conversation
Updates goplus/gogen to the fix-xgot-template-recv-inference branch (goplus/gogen#634), which fixes type inference for XGot_ template recv methods when the receiver type is a type parameter. Generated with [FennoAI](https://github.com/apps/fennoai) Co-authored-by: xushiwei <396972+xushiwei@users.noreply.github.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2778 +/- ##
=======================================
Coverage 94.11% 94.11%
=======================================
Files 32 32
Lines 10147 10147
=======================================
Hits 9550 9550
Misses 427 427
Partials 170 170 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Summary
This PR bumps github.com/goplus/gogen from v1.23.1 to v1.23.2-0.20260621101116-714f4947919e to pull in the type-inference fix for XGot_ template recv methods (goplus/gogen#634). The mechanical change is correct: go.mod and go.sum are internally consistent, both required go.sum entries for the new version are present, and the unchanged /go.mod hash is expected (gogen's own go.mod was not modified by the upstream commit).
One non-blocking concern to be aware of:
go.mod — dependency pinned to a pre-release pseudo-version from an unmerged upstream PR
The new version string v1.23.2-0.20260621101116-714f4947919e references a commit on an in-progress branch (goplus/gogen#634) rather than a tagged release. The go.sum h1: hash does cryptographically pin the source tree, so the build is reproducible and tamper-resistant. However, this is a temporary state:
- If the upstream PR is amended (rebased, squashed, or revised to address review comments), this repo will be pinned to code that diverges from whatever eventually ships as
v1.23.2. - Publishing a module with a pseudo-version dependency is generally considered a short-lived stopgap.
Recommendation: Once goplus/gogen#634 is merged and a tagged release (e.g., v1.23.2) is cut, update this pin to the tagged version. If merging before that tag is available is intentional, a follow-up tracking issue is worth creating.
No performance or security issues were found. The PR title and description accurately describe the change.
| github.com/goccy/go-yaml v1.19.2 | ||
| github.com/goplus/cobra v1.10.7 //xgo:class | ||
| github.com/goplus/gogen v1.23.1 | ||
| github.com/goplus/gogen v1.23.2-0.20260621101116-714f4947919e |
There was a problem hiding this comment.
This pins gogen to a pseudo-version from an unmerged upstream branch (goplus/gogen#634) rather than a tagged release. The go.sum h1: hash ensures reproducibility, but the upstream commit may be amended before v1.23.2 is tagged, leaving this pin pointing at code that diverges from the final release. Consider opening a follow-up to re-pin to the tagged v1.23.2 once it is published.
Summary
github.com/goplus/gogenfromv1.23.1tov1.23.2-0.20260621101116-714f4947919e(boundTypeParams: include receiver in inferArgs for XGot_ template recv methods gogen#634)XGot_template recv methods when the receiver type is a type parameter (e.g.AppT iAppProto), which is required for the Template Recv Method feature described in Proposal: Template Recv Method #2769Test plan
XGot_template recv method type inference works correctly once boundTypeParams: include receiver in inferArgs for XGot_ template recv methods gogen#634 is merged and version is stabilizedFixes #2769
🤖 Generated with FennoAI