From Fedora Project Wiki

Revision as of 11:28, 13 November 2024 by Amoloney (talk | contribs)


Update Zlib-ng to version 2.2.x

Summary

Update Zlib-ng on Fedora 42 to version 2.2.x. Currently, Fedora distributes Zlib-ng 2.1.7.

Owner


Current status

Detailed Description

Update zlib-ng to the latest version from branch 2.2.x. Currently, that's version 2.2.2, but it could change until the release considering that updates on the same branch are expected to be API/ABI stable.

The PR for the rebase: https://src.fedoraproject.org/rpms/zlib-ng/pull-request/26

Notable changes

  • On x86-64 compression speedup of ~12% on default level
  • Single memory allocation deflate or inflate, ensuring fewer system calls
  • Optimizations throughout the functions

Feedback

Early feedback from community in fedora devel mailing list

Benefit to Fedora

Major version 2.2.x provides new optimizations, rewrites deflate memory allocation and improves the buildsystem and tests.

More details are available in the following pages:

Discussion about changes is in:

Scope

  • Proposal owners: New zlib-ng packages will be built. The SONAME version was not bumped (no side-tag rebase needed).
  • Other developers: Check if their packages continue to work as expected and report issues using Bugzilla.
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with the Fedora Strategy:

Upgrade/compatibility impact

Considering that API and ABI are expected to be kept the same, no impacts are expected.

Early Testing (Optional)

Do you require 'QA Blueprint' support? N

An initial test has already been executed on CentOS Stream 10 Copr.

Further testing for Fedora in Fedora Copr

How To Test

User Experience

Dependencies

There are 1300 packages that depends on zlib-ng library, thus listing them here would spam the whole page.

The list was gathered using command (on the Fedora Rawhide machine): repoquery --whatdepends zlib-* --source | pkgname

All of these dependencies are being rebuilt against the new zlib-ng version in Fedora Copr project

Contingency Plan

If we find zlib-ng 2.2.x is not suitable for Fedora 42, we will revert back to version 2.1.x.

  • Contingency mechanism: Revert back to version 2.1.x and increment to epoch
  • Contingency deadline: Fedora 42 branching from Rawhide.
  • Blocks release? No


Documentation

Release notes added to the upstream tags mentioned in "Benefits" part of this change.

Release Notes