update go version to v1.26.4#426
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the Go version to 1.26.4 and adds the -checklinkname=0 flag to the Go linker flags in app/build.gradle.kts. Feedback is provided regarding the use of -checklinkname=0, which disables strict linker checks and introduces stability and compatibility risks. It is recommended to update the dependencies causing this issue or at least document this workaround with a TODO comment for future removal.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| "-trimpath", | ||
| "-androidapi", "21", | ||
| "-ldflags=-s -w -buildid=", | ||
| "-ldflags=-s -w -buildid= -checklinkname=0", |
There was a problem hiding this comment.
Using -checklinkname=0 disables the Go linker's strict checks for unallowed //go:linkname directives. While this serves as a temporary workaround to get the build passing, it introduces stability and maintainability risks:
- Stability Risk: It allows linking against internal, unexported Go runtime/standard library APIs. These internal APIs are not covered by Go's compatibility promise and can change or be removed in any Go release, potentially causing runtime crashes.
- Future Compatibility: This flag is a transitional workaround and may be removed or restricted in future Go versions.
Recommendation: Consider identifying the dependencies (such as Xray/V2Ray core or other Go libraries) that rely on invalid //go:linkname references and update them to compliant versions. If this workaround must be kept for now, please document it with a TODO comment so it can be tracked and removed later.
"-ldflags=-s -w -buildid= -checklinkname=0", // TODO: Remove once dependencies are updated to comply with Go's linkname restrictions
No description provided.