Golang 1.15
Summary
Rebase of Golang package to upcoming version 1.15 in Fedora 33, including rebuild of all dependent packages(pre-release version of Go will be used for rebuild, if released version will not be available at the time of the mass rebuild).
Owner
- Name: Jakub Čajka, Alejandro Sáez Morollón
- Email: jcajka@redhat.com, alexsaezm@redhat.com
- Release notes ticket:
Current status
- Targeted release: Fedora 33
- Last updated: 2020-07-21
- FESCo issue: #2450
- Tracker bug: #1859241
- Release Notes tracking: #537
Detailed Description
Rebase of Golang package to upcoming version 1.15 in Fedora 33. Golang 1.15 is schedule to be released in August 2020. Due to current nature and state of Go packages, rebuild of dependent package will be required to pick up the changes.
Benefit to Fedora
Staying closely behind upstream by providing latest release of golang, which includes performance improvements and improvements in support for currently supported platforms among other bug fixes and new features. For complete list of changes see upstream change notes at https://tip.golang.org/doc/go1.15 . In result Fedora will be providing solid development platform for Go language.
Scope
- Proposal owners: Rebase golang package in Fedora 33, help with resolving 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. Tracking ticket https://pagure.io/releng/issue/9548 .
- List of deliverables: N/A
- Policies and guidelines: N/A
- Trademark approval: N/A
Upgrade/compatibility impact
None
How To Test
- 0.
- a)Install golang 1.15 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.15 should work as expected.
User Experience
None
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 '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'
Omitted due to the number of packages listed ~1300.
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.14.X if significatnt issues are discovered.
- Contingency deadline: Beta Freeze(?)
- Blocks release? No
- Blocks product? No
Documentation
https://tip.golang.org/doc/go1.15