From Fedora Project Wiki
m (fix typo)
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:


== Summary ==
== Summary ==
It was always the intent that on Fedora for x86-64, only the `glibc-headers.x86_64` was installed and available from composes. However, due to compose tool limitations, the `glibc-headers.i686` package sometimes leaks into the compose, and end users my install it, causing future upgrade problems.
Replace the `glibc-headers.i686` and `glibc-headers.x86_64` package with a `glibc-headers-x86.noarch` package, and merge `glibc-headers` into `glibc-devel` on the other architectures.


== Owner ==
== Owner ==
Line 13: Line 13:
== Current status ==
== Current status ==


[[Category:ChangeAnnounced]]
[[Category:ChangeAcceptedF33]]


<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
Line 31: Line 31:
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>
* FESCo issue: [https://pagure.io/fesco/issue/2371 #2371]
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1828332 #1828332]
* Release notes tracker: <will be assigned by the Wrangler>
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/499 #499]


== Detailed Description ==
== Detailed Description ==
It was always the intent that on Fedora for x86-64, only the `glibc-headers.x86_64` was installed and available from composes. However, due to compose tool limitations, the `glibc-headers.i686` package sometimes leaks into the compose, and end users may install it, causing future upgrade problems.


If `glibc-headers.i686` is installed for some reason and it vanishes again from the compose, the system cannot be updated anymore using `dnf update`.
If `glibc-headers.i686` is installed for some reason and it vanishes again from the compose, the system cannot be updated anymore using `dnf update`.


We cannot remove the `glibc-headers.i686` package from the build because the i686 buildroot needs it. The current solution is to provide a `glibc-headers-x86.noarch` package on i686 and x86_64. Since it is a noarch package, the existing compose tool is no longer a problem.
We cannot remove the `glibc-headers.i686` package from the build because the i686 buildroot needs it. The current solution is to provide a `glibc-headers-x86.noarch` package on i686 and x86_64. Since it is a noarch package, the existing compose tool is no longer a problem.
(For s390x, we may or may not do the `glibc-devel` merge; this depends on whether some people are still building the `glibc.s390` package locally.)


[https://pagure.io/releng/issue/8337 releng issue #8337] contains further background information.
[https://pagure.io/releng/issue/8337 releng issue #8337] contains further background information.

Latest revision as of 16:19, 21 July 2020

🔗 Removal of the glibc-headers package

🔗 Summary

Replace the glibc-headers.i686 and glibc-headers.x86_64 package with a glibc-headers-x86.noarch package, and merge glibc-headers into glibc-devel on the other architectures.

🔗 Owner

🔗 Current status

🔗 Detailed Description

It was always the intent that on Fedora for x86-64, only the glibc-headers.x86_64 was installed and available from composes. However, due to compose tool limitations, the glibc-headers.i686 package sometimes leaks into the compose, and end users may install it, causing future upgrade problems.

If glibc-headers.i686 is installed for some reason and it vanishes again from the compose, the system cannot be updated anymore using dnf update.

We cannot remove the glibc-headers.i686 package from the build because the i686 buildroot needs it. The current solution is to provide a glibc-headers-x86.noarch package on i686 and x86_64. Since it is a noarch package, the existing compose tool is no longer a problem.

(For s390x, we may or may not do the glibc-devel merge; this depends on whether some people are still building the glibc.s390 package locally.)

releng issue #8337 contains further background information.

🔗 Benefit to Fedora

System upgrades will work more reliably.

🔗 Scope

  • Proposal owners: Implement the glibc changes and remove some of the build dependencies on glibc-headers.
  • Other developers: Help with the removal of glibc-headers dependencies will be appreciated.
  • Release engineering: #9384 (a check of an impact with Release Engineering is needed)
  • Policies and guidelines: The packaging guidelines already recommend a dependency on gcc or gcc-c++ for the appropriate compiler, so they do not need changing.
  • Trademark approval: N/A (not needed for this Change)

🔗 Upgrade/compatibility impact

The goal is more seamless in-place upgrades.

The removal of glibc-headers dependencies is optional because there are compatibility Provides:.

🔗 How To Test

Regular system upgrades of rawhide will implicitly test this change, and so will upgrades from previous Fedora versions.

🔗 User Experience

There is no change in user experience.

🔗 Dependencies

This change can be implemented on its own.

🔗 Contingency Plan

  • Contingency mechanism: Revert the change and bring back the glibc-headers package as it exists today.
  • Contingency deadline: before Beta
  • Blocks release? no
  • Blocks product? no

🔗 Documentation

No documentation update is needed.

🔗 Release Notes

The removal of the glibc-headers package should be mentioned, and that build-time dependencies should be on the compiler packages (or glibc-devel, if that makes more sense for some reason.)