From Fedora Project Wiki
(Update to current situation.)
m (Add trackers)
 
(7 intermediate revisions by 2 users not shown)
Line 55: Line 55:
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
-->
-->
* Tracker bug:  
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1792475 #1792475]
* Release Notes tracking:
* Release Notes tracking: [https://pagure.io/fedora-docs/release-notes/issue/437 #437]


== Detailed Description ==
== Detailed Description ==
Line 76: Line 76:
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Release engineering: Rebuild of dependent packages as part of planned mass-rebuild. Tracking ticket TBD <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Release engineering: Rebuild of dependent packages as part of planned mass-rebuild. Tracking ticket https://pagure.io/releng/issue/9136 <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuid required?  If a rel-eng ticket exists, add a link here.  
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuid required?  If a rel-eng ticket exists, add a link here.  
Please work with releng prior to feature submission, and ensure that someone is on board to do any process development work and testing; don't just assume that a bullet point in a change puts someone else on the hook.-->
Please work with releng prior to feature submission, and ensure that someone is on board to do any process development work and testing; don't just assume that a bullet point in a change puts someone else on the hook.-->
Line 111: Line 111:
:b)Scratch build against rawhide.
:b)Scratch build against rawhide.
;1.
;1.
:Your application/package built using golang 1.14 and should work as expected.
:Your application/package built using golang 1.14 should work as expected.
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->  
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->  
== User Experience ==
== User Experience ==
Line 125: Line 125:
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(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 '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>
<pre>
<pre>
Omitted due to the number of packages listed ~1100.
</pre>
</pre>


Line 134: Line 136:


<!-- 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.12.X if significatnt issues are discovered.  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism:Reverting to  golang version 1.13.X if significatnt 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 -->
Line 162: Line 164:
<!-- Select proper category, default is Self Contained Change -->
<!-- Select proper category, default is Self Contained Change -->
[[Category:SystemWideChange]]
[[Category:SystemWideChange]]
[[Category:ChangePageIncomplete]]
[[Category:ChangeAcceptedF32]]

Latest revision as of 17:08, 17 January 2020


Golang 1.14

Summary

Rebase of Golang package to upcoming version 1.14 in Fedora 32, 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
  • Email: jcajka@redhat.com
  • Release notes ticket:

Current status

Detailed Description

Rebase of Golang package to upcoming version 1.14 in Fedora 32. Golang 1.14 is schedule to be released in Feb 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.14 . In result Fedora will be providing solid development platform for Go language.

Scope

  • Proposal owners: Rebase golang package in f32, help with resolving possible issues found during package rebuilds.
  • Other developers: Fix possible issues, with help from golang maintainers.
  • Policies and guidelines: N/A
  • Trademark approval: N/A

Upgrade/compatibility impact

None

How To Test

0.
a)Install golang 1.14 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.14 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 ~1100.

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

Documentation

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

Release Notes

  • Release Notes tracking: []