https://fedoraproject.org/wiki/Changes/golang1.19
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.
== Summary == Rebase of Golang package to upcoming version 1.19 in Fedora 37, including the rebuild of all dependent packages(the pre-release version of Go will be used for the rebuild if released version will not be available at the time of the mass rebuild).
== Owner == * Name: [[User:alexsaezm| Alejandro Sáez Morollón]], [[User:Jcajka| Jakub Čajka]] * Email: asm@redhat.com, jcajka@redhat.com
== Detailed Description == Rebase of Golang package to upcoming version 1.19 in Fedora 37. Golang 1.19 is expected to be released in August 2022. Due to Go packages' current nature and state, the rebuild of dependent packages will be required.
== Feedback == No feedback yet.
== 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 https://tip.golang.org/doc/go1.19
== Scope == * Proposal owners: Rebase Golang package in Fedora 37, and help resolve possible issues found during package rebuilds.
* Other developers: Fix possible issues, with help from Golang maintainers.
* Release engineering: 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 Objectives:
== Upgrade/compatibility impact == None.
== How To Test == ;0. :a) Install golang 1.19 from rawhide and use it to build your application(s)/package(s). :b) Scratch build against rawhide. ;1. :Your application/package built using golang 1.19 should work as expected.
== User Experience == None
== Dependencies == <pre> 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 'compiler(golang)' dnf repoquery -q --releasever=rawhide --disablerepo='*' --qf='%{name}' --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires 'go-rpm-macros' </pre> <pre> Omitted due to the number of packages listed: ~2000. </pre> Not all of listed require re-build as they might not ship binaries and/or do not use golang compiler during build, but only use Go rpm macros that pull it in to every build root.
== Contingency Plan == * Contingency mechanism: Reverting to golang version 1.18.X if significant issues are discovered. * Contingency deadline: Beta freeze * Blocks release? No
== Documentation ==
https://tip.golang.org/doc/go1.19
== Release Notes ==
On Thu, Jun 16, 2022 at 04:54:14PM -0400, Ben Cotton wrote:
Why is this small language bump classified as a system-wide change?
Rich.
On Thu, Jun 16, 2022 at 9:16 PM Richard W.M. Jones rjones@redhat.com wrote:
Why is this small language bump classified as a system-wide change?
I believe it is the mass rebuild process requirement.
On 16 Jun 2022, at 23:24, Gary Buhrmaster gary.buhrmaster@gmail.com wrote:
On Thu, Jun 16, 2022 at 9:16 PM Richard W.M. Jones rjones@redhat.com wrote:
Why is this small language bump classified as a system-wide change?
I believe it is the mass rebuild process requirement. ______
Exactly. We need a mass rebuild so we made a proposal. Other similar packages have similar proposals like Python, Perl or LLVM.
devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
On Fri, Jun 17, 2022 at 06:18:35AM +0200, Alejandro Sáez Morollón wrote:
On 16 Jun 2022, at 23:24, Gary Buhrmaster gary.buhrmaster@gmail.com wrote:
On Thu, Jun 16, 2022 at 9:16 PM Richard W.M. Jones rjones@redhat.com wrote:
Why is this small language bump classified as a system-wide change?
I believe it is the mass rebuild process requirement. ______
Exactly. We need a mass rebuild so we made a proposal. Other similar packages have similar proposals like Python, Perl or LLVM.
It's also good publicity. This will be picked up by the linux press, and raises awareness among users that we're keeping things up-to-date.
Zbyszek
I imagine I could answer this myself by looking carefully at the history of the golang package, but what happens if you end up doing the mass rebuild with a pre-release version? Would you need to do a second mass rebuild with the final version between the beta and final freezes?
The Beta Freeze is currently scheduled for 2022-08-23, and Go 1.19 final is scheduled for sometime in August, so getting the mass rebuild done with the final version before the beta freeze might be tight or it might be just fine.
On Saturday, June 25, 2022 9:46:17 AM CDT Benjamin Beasley wrote:
what happens if you end up doing the mass rebuild with a pre-release version? Would you need to do a second mass rebuild with the final version between the beta and final freezes?
Yes. as go binaries are statically linked, if we wanted the go binaries that we provide to have the code of the final release, we'd have to rebuild all of them again. The change owners would be able to answer your second question better than me.
On Sat, 25 Jun 2022, 16:46 Benjamin Beasley, code@musicinmybrain.net wrote:
I imagine I could answer this myself by looking carefully at the history of the golang package, but what happens if you end up doing the mass rebuild with a pre-release version? Would you need to do a second mass rebuild with the final version between the beta and final freezes?
The Beta Freeze is currently scheduled for 2022-08-23, and Go 1.19 final is scheduled for sometime in August, so getting the mass rebuild done with the final version before the beta freeze might be tight or it might be just fine.
The beta mass rebuild allows us to detect problems early and sometimes even escalading to the Go team for an incorrect behaviour. They are generally responsive at that stage.
devel@lists.stg.fedoraproject.org