F40 Change Proposal: Golang 1.22 (System-Wide)

Golang 1.22

Wiki
Announced

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

:link: Summary

Update of Go (golang package) to the upcoming version 1.22 in Fedora 40.

:link: Owner

:link: Detailed Description

Update of Go (golang package) to the upcoming version 1.22 in Fedora 40. Go 1.22 is expected to be released in February 2024. A mass rebuild of all of the dependent packages is required.

:link: Feedback

No feedback yet.

There is an ongoing conversation about removing a patch and revert to the defaults a couple of variables.

:link: Benefit to Fedora

Up-to-date and latest Go release will be delivered to Fedora users. Being close to upstream allows us to avoid security issues and provide more up-to-date features. Therefore Fedora will be providing a reliable development platform for Go language and projects written in it.

For a complete list of changes, see upstream change notes at Go 1.22 Release Notes - The Go Programming Language

:link: Scope

  • Proposal owners:

Rebase Golang package in Fedora 40, and help resolve possible issues found during package rebuilds.

  • Other developers:

Fix possible issues, with help from Golang maintainers.

Rebuild of dependent packages as part of planned mass-rebuild.

  • Policies and guidelines: N/A (not needed for this Change)

  • Trademark approval: N/A (not needed for this Change)

  • Alignment with Community Initiatives:

It doesn’t align directly with the current objectives but it helps maintain the quality of the project.

:link: Upgrade/compatibility impact

No upgrade or compatibility impact.

:link: How To Test

  1. Install golang 1.22 from rawhide and use it to build your application(s)/package(s). 2. Scratch build against rawhide. 3. Your application/package built using golang 1.22 should work as expected.

:link: User Experience

Users will have a newer version of Go, with new features described in the release notes and security fixes

:link: Dependencies

dnf repoquery -q --releasever=rawhide --disablerepo=‘’ --qf=‘%{name}’ --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires ‘golang’ dnf repoquery -q --releasever=rawhide --disablerepo='’ --qf=‘%{name}’ --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires ‘compiler(go-compiler)’ dnf repoquery -q --releasever=rawhide --disablerepo=‘*’ --qf=‘%{name}’ --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires ‘go-rpm-macros’

Omitted due to the number of packages listed: ~2000.

:link: Contingency Plan

  • Contingency mechanism: Revert to Go 1.21.X if significant issues are discovered
  • Contingency deadline: Beta freeze
  • Blocks release? No

:link: Documentation

:link: Release Notes

…snip…

Update of Go (golang package) to the upcoming version 1.22 in Fedora 40. Go 1.22 is expected to be released in February 2024. A mass rebuild of all of the dependent packages is required.

Rebuild of dependent packages as part of planned mass-rebuild.

The mass rebuild for f40 is scheduled for 2024-01-17.

So, if 1.22 is going to be released in 2024-02, it can’t really use the
planned rebuild. ;(

Is there likely to be a early release/beta that could be used then?
Or would there just be a later mass rebuild of just golang packages?
If so, when? Branching is scheduled for 2024-02-06, so if it’s after
that it would have to be done in f40 and f41/rawhide. ;(

This change proposal has now been submitted to FESCo with ticket #3132 for voting.

To find out more, please visit our Changes Policy documentation.