From Fedora Project Wiki
No edit summary
(Change submitted to FESCo)
Line 20: Line 20:


== Current status ==
== Current status ==
[[Category:ChangeAnnounced]]
[[Category:ChangeReadyForFesco]]
<!-- 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 -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 38: Line 38:
ON_QA -> change is fully code complete
ON_QA -> change is fully code complete
-->
-->
* FESCo issue: <will be assigned by the Wrangler>
* FESCo issue: [https://pagure.io/fesco/issue/2579 #2579]
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: <will be assigned by the Wrangler>
* Release notes tracker: <will be assigned by the Wrangler>
* Release notes tracker: <will be assigned by the Wrangler>

Revision as of 19:55, 18 February 2021


Autoconf-2.71

Summary

Autoconf upgrade from version 2.69 to the last upstream version 2.71 in Fedora.

Owner

Current status

  • Targeted release: Fedora 35
  • Last updated: 2021-02-18
  • FESCo issue: #2579
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Upgrading autoconf from version 2.69 to version 2.71 according to new upstream release. Version 2.70 is skipped due to multiple ABI incompatibilities, where some of them were fixed in version 2.71. Years of development differ these two releases, so problems are expected.

This change might easily cause fails during builds of multiple packages, as some of them still require autoconf-2.69. This step must be properly discussed with maintainers of dependent packages, which should forward this change proposal to their upstream projects.

Feedback

Benefit to Fedora

Brings a stable and up-to-date version of autoconf according to upsteam release. It is expected, that in the future many upstream development teams will use autoconf-2.71 as their default builder, so Fedora will be prepared for such a step.

Scope

  • Proposal owners:
  • Other developers:
    • Check if their packages can be build with autoconf-2.71
  • Release engineering: #Releng issue number
    • Developers are advised to check their packages and build them in a prepared side-tag with autoconf-2.71
  • Policies and guidelines:
    • No guidelines need to be updated according to this change.
  • Trademark approval:
  • Alignment with Objectives:

Upgrade/compatibility impact

Problems during build can appear in multiple packages what can lead to build failure, as multiple packages require autoconf-2.69 as their upstream dependency. These problems have to be resolved before adding autoconf-2.71 into Fedora. It seems aprox. 20% of dependent packages are having problems during build, which could be caused by a problem with same pattern.

How To Test

Rebuilding your packages with autoconf-2.71 dependency in copr (https://copr.fedorainfracloud.org/coprs/odubaj/autoconf-2.70/).

Mass rebuild of dependent packages in a side tag.

User Experience

Users will be able to use the newer version (2.71) of autoconf, and building packages with autoconf-2.69 won't be available, as it won't be present on the specific fedora version. This can affect 3rd partly packages, which are not part of Fedora.

Dependencies

Hundreds of packages have build dependency on autoconf, therefore it is a huge step forward for Fedora, what should be properly discussed and tested. List of dependent packages with their ability to be built with autoconf-2.71 can be found in the given copr project (https://copr.fedorainfracloud.org/coprs/odubaj/autoconf-2.70/packages/)

We should also look at dependent packages of libtool and automake (other critical autotools packages), as there might be some incompatibilities with the new autoconf version.

Contingency Plan

  • Contingency mechanism: moving this change to Fedora 36, if not successfully finished until Fedora 35 branching from Rawhide
  • Contingency deadline: Fedora 35 branching from Rawhide (2021-08-10)
  • Blocks release? No

Documentation

Latest autoconf documentation: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/index.html

Release Notes

Release notes for autoconf-2.70: https://lists.gnu.org/archive/html/autotools-announce/2020-12/msg00001.html

Release notes for autoconf-2.71: https://lists.gnu.org/archive/html/autotools-announce/2021-01/msg00000.html