From Fedora Project Wiki
(Created page with "<!-- Self Contained or System Wide Change Proposal? Use this guide to determine to which category your proposed change belongs to. Self Contained Changes are: * changes to is...")
 
(Add trackers)
 
(5 intermediate revisions by 2 users not shown)
Line 45: Line 45:


== Current status ==
== Current status ==
[[Category:ChangeReadyForWrangler]]
[[Category:ChangeAcceptedF36]]
[[Category:SystemWideChange]]


* Targeted release: [[Releases/36 | Fedora Linux 36 ]]  
* Targeted release: [[Releases/36 | Fedora Linux 36 ]]  
Line 57: Line 58:
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
-->
-->
* FESCo issue: <will be assigned by the Wrangler>
* [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/OXOGNSLTD7HEAZU5AAELMU4WKWALQA75/ devel thread]
* Tracker bug: <will be assigned by the Wrangler>
* FESCo issue: [https://pagure.io/fesco/issue/2720 #2720]
* Release notes tracker: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=2037868 #2037868]
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/713 #713]


== Detailed Description ==
== Detailed Description ==
Line 138: Line 140:


<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism:Reverting to golang version 1.16.X if significant issues are discovered.  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism:Reverting to golang version 1.17.X if significant issues are discovered.  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: Beta Freeze(?)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency deadline: Beta Freeze(?)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->

Latest revision as of 17:33, 6 January 2022


Golang 1.18

Summary

Rebase of Golang package to upcoming version 1.18 in Fedora 36, 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

Current status

Detailed Description

Rebase of Golang package to upcoming version 1.18 in Fedora 36. Golang 1.18 is scheduled to be released in February 2022. Due to Go packages' current nature and state, the rebuild of dependent packages will be required.

Benefit to Fedora

Stay closely behind upstream by providing the latest release of Go, which includes improved support of the risc-v processor architecture and added support for aarch64 based darwin(macOS) machines, among other bug fixes, enhancements and new features. For a complete list of changes, see upstream change notes at https://tip.golang.org/doc/go1.18 . Therefore Fedora will be providing a reliable development platform for Go language and projects written in it.

Scope

  • Proposal owners: Rebase Golang package in Fedora 36, 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
  • Trademark approval: N/A

Upgrade/compatibility impact

None

How To Test

0.
a) Install golang 1.18 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.18 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 ~1600.

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.17.X if significant issues are discovered.
  • Contingency deadline: Beta Freeze(?)
  • Blocks release? No
  • Blocks product? No

Documentation

https://tip.golang.org/doc/go1.18

Release Notes