Changes in Fedora 44 For Developers

LLVM 22

All LLVM subprojects in Fedora 44 have been updated to version 22. See the upstream release notes for detailed information.

GNU toolchain update

The GNU toolchain in Fedora 44 has been updated to:

  • GNU C Compiler (gcc) 16.1

  • GNU Binary Utilities (binutils) 2.46

  • GNU C Library (glibc) 2.43

  • GNU Debugger (gdb) 16.3

See the upstream release notes for GCC, Binutils, GLibC NEWS, and GDB NEWS.

Boost 1.90

Fedora 44 includes Boost version 1.90. For more information, see the upstream release notes.

Golang 1.26

Go in Fedora 44 has been updated to version 1.26. See the upstream documentation for more details.

Django 6.0

Django has been updated to version 6.0. See the upstream release notes for full information about this release.

Helm 4

Helm 4 has been released upstream with intentional backwards-incompatible changes relative to Helm 3. To ensure a smooth transition for Fedora and EPEL users, this Change introduces Helm 4 as the default helm package in Fedora 44, while providing a parallel-installable helm3 package for users and tooling that still rely on Helm 3.

Helm 3 will continue to be available and maintained as helm3 in Fedora and EPEL, while the helm package will track the latest major release (Helm 4 going forward).

For information about Helm 4, see the overview in upstream docs.

The packages nodejs24-bin, nodejs22-bin, and nodejs20-bin, along with their npm counterparts nodejs{24,22,20}-npm-bin, are currently available.

Depending on which -bin packages are installed, node and npm commands will be configured to be pointing to different NodeJS versions.

Use # dnf install nodejs24-bin or equivalent to install node command that will run NodeJS v24.x. Use # dnf swap --allowerasing nodejs24-bin nodejs22-bin to change the NodeJS version used.

PHP 8.5

The latest stable release of the PHP programming language is available in Fedora 44. For a full list of changes, see:

Deprecation and upcoming removal of some of 'ding-libs' sub-packages

The libpath_utils, libcollection, and libbasicobjects libraries, formerly parts of the ding-libs package, are deprecated and scheduled for removal in the next release. The standalone librefarray will be removed as well, but its API and functionality will be available via libini_config. Additionally, the previously deprecated interface 'ini_config.h' of libini_config will be removed.

Ruby 4.0

Ruby 4.0 is the latest stable version of Ruby. Many new features and improvements are included for the increasingly diverse and expanding demands for Ruby. With this major update from Ruby 3.4 in Fedora 43 to Ruby 4.0 in Fedora 44, Fedora becomes the superior Ruby development platform.

Ruby 4.0 bumps soname, and therefore Ruby packages which use binary extensions should be rebuilt. Nevertheless, since upstream paid great attention to source compatibility, no changes to your code might be needed. See section Stdlib compatibility issues on the Fedora Wiki.

For more information about Ruby 4.0, see the upstream release notes.

Split Ruby build

The ruby-build package has been split into a main package and several subpackages (ruby-build-jruby, ruby-build-truffleruby, …​). This allows users to install only the build dependencies required for their specific Ruby implementation, significantly reducing the default installation size and dependency footprint.

Users will notice a significantly faster and smaller installation process for ruby-build. Advanced users may need to manually install specific subpackages (such as ruby-build-truffleruby) if they are working with non-standard Ruby implementations, but the vast majority of users (MRI Ruby) will see no change in workflow, only in disk savings.

Java

With Fedora 44, only the latest version of the JDK and version 25 LTS are available as RPMs in Fedora.

When upgrading from Fedora 43 to 44, the installed version 21 LTS is deleted. Version 25 LTS is installed and set as the default (unversioned) version.

A Java application that was previously set manually to Java 21 must be switched manually to 25. Otherwise, applications will automatically use version 25 after the update.

If an older runtime version is required, the Eclipse Adoptium project (Eclipse Temurin) provides LTS versions dating back to JDK 8. These RPMs are fully compatible with Fedora RPMs, integrate just as seamlessly into the distribution and can be managed using alternatives.

TagLib 2

The TagLib audio tagging library has been updated to version 2.x from version 1.13 in Fedora 44. Note that the updated version is an ABI and API break. For information about this release, see the upstream release notes.

CMark 0.31

The cmark library, which provides the C reference implementation of CommonMark, has been updated to version 0.31 in Fedora 44.

For more information, see the upstream release notes for cmark 0.31.0 and cmark 0.31.1.

Package builds automatically hardlink identical files. This reduces the installation footprint a bit and also makes packages builds more reproducible. Also see the Fedora Wiki page for this change.