Skip to content

Conversation

@jykanase
Copy link
Contributor

@jykanase jykanase commented Sep 9, 2025

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

  • The toolchain has been rebuilt successfully (or no changes were made to it)
  • The toolchain/worker package manifests are up-to-date
  • Any updated packages successfully build (or no packages were changed)
  • Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
  • Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
  • All package sources are available
  • cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
  • LICENSE-MAP files are up-to-date (./LICENSES-AND-NOTICES/SPECS/data/licenses.json, ./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md, ./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)
  • All source files have up-to-date hashes in the *.signatures.json files
  • sudo make go-tidy-all and sudo make go-test-coverage pass
  • Documentation has been updated to match any changes to the build system
  • Ready to merge

Summary

Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.1

Change Log
  • gh.spec
  • vitess.spec
  • moby-container-cc.spec
Does this affect the toolchain?

YES/NO

Associated issues
  • #xxxx
Links to CVEs
Test Methodology
  • Pipeline build id: xxxx

@jykanase jykanase requested a review from a team as a code owner September 9, 2025 08:46
@microsoft-github-policy-service microsoft-github-policy-service bot added Packaging 3.0-dev PRs Destined for AzureLinux 3.0 labels Sep 9, 2025
@jykanase jykanase marked this pull request as draft September 9, 2025 08:52
@jykanase jykanase force-pushed the topic_golang-1.23 branch 2 times, most recently from 587d26d to b77a169 Compare September 23, 2025 14:40
@Kanishk-Bansal
Copy link
Contributor

Buddy Build

@Kanishk-Bansal Kanishk-Bansal marked this pull request as ready for review September 25, 2025 09:17
@Kanishk-Bansal Kanishk-Bansal changed the title Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.1 [3.0] Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.1 Sep 25, 2025
BuildRequires: go-md2man
BuildRequires: make
BuildRequires: systemd-rpm-macros
BuildRequires: glibc-static >= 2.38-13%{?dist}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you explain more about this, and why this change was needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After enabling CGO, the build failed again with the following errors:
/usr/bin/ld: cannot find -lresolv: No such file or directory
/usr/bin/ld: cannot find -lc: No such file or directory

This indicates that the static libraries for libc and libresolv are missing.
To resolve this, added the glibc-static package, which provides -lc and -lresolv.


%build
export BUILDTAGS="-mod=vendor"
export SHIM_CGO_ENABLED=1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please explain + comment what this is for?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When rebuilding moby-container-cc with golang-1.25.1, the build failed due to this error:
(untyped string constant "\n\tUsing a crypto backend requires CGO_ENABLED=1.\n\t..." is not used).
To fix this, enabled CGO by setting "export SHIM_CGO_ENABLED=1".

Name: vitess
Version: 19.0.4
Release: 7%{?dist}
Version: 21.0.0
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What was the rationale on selecting this version? Does 19.0.4 not compile with a newer golang? (Do we know why?)

Also note that 21.0.x is now on 21.0.3--and it will be EOL in ~1 month.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

when vitess-19.0.4 build tried with newer golang, build has failed due to following error:
"link: vitess.io/vitess/go/hack: invalid reference to runtime.roundupsize"

The issue is mentioned in vitessio/vitess#16015.
Vitess makes use of the Go runtime's internal roundupsize symbol via go:linkname. Go 1.22+ significantly restricts this kind of linking; the symbol is not exported for external linking, causing the build/link to fail.
this linkname is removed in vitessio/vitess#16016

@jykanase jykanase force-pushed the topic_golang-1.23 branch 3 times, most recently from 3abc713 to 683428c Compare October 9, 2025 06:58
@Kanishk-Bansal
Copy link
Contributor

Buddy Build

@Kanishk-Bansal Kanishk-Bansal changed the title [3.0] Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.1 [3.0] Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.2 Oct 10, 2025
SPECS/gh/gh.spec Outdated
%{_datadir}/zsh/site-functions/_gh

%changelog
* Tue Sept 09 2025 Jyoti Kanase <[email protected]> - 2.62.0-10
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you please change Sept to Sep

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed.

Summary: Go
Name: golang
Version: 1.25.1
Version: 1.25.2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should skip 1.25.2 due to the following issue: golang/go#75828 (comment)

There is another PR up for 1.25.3 already - #14863

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once #14863 is merged, I will remove the golang-1.23.2 changes from this PR.

@jykanase jykanase changed the title [3.0] Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.2 [3.0] Upgrade vitess and rebuild gh, moby-containerd-cc with golang-1.25.3 Oct 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3.0-dev PRs Destined for AzureLinux 3.0 Packaging

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants