A Blog of The DNF Team

Announcing DNF 3 development

We are pleased to announce that development of DNF 3 has started. This version focused on performance improvements, new API and consolidating the whole software management stack. That's why the rest of the text is more about libdnf than DNF, which should become smaller and only wrap underlying libdnf library.

DNF performance boost

Since the last blog there were several releases that enhance functionality and mostly performance especially visible with multiple package arguments. Just try "dnf --assumeno reinstall $(rpm -qa)" with libdnf-0.9.0 and libdnf-0.11.1 and differences is easily visible. But the real huge improvement can be seen when results are compared to YUM.





  • Huge performance boost for queries with arch and name filters (20x boost)
  • Additionally 4 bug reports solved

The first DNF update for Fedora 26

The release of Fedora 26 provides the new DNF-2.x to wide pool of users. The first DNF update reflect the first user's feed backs and additionally it solves 23 bugs. The latest release has provided the following highlights: DNF-2.6.2

  • New option --forcearch=<arch> that force to use given architecture. However, use of an architecture not supported natively by your CPU will require emulation of some kind. This is usually through QEMU
  • New option --groupmember for repoquery command
  • New option --downloaddir <path> that can be combine with --downloadonly option
  • Inform about skipped packages during installation of groups
  • New conf options (basearch, arch, ignorearch)
  • Detailed information about DNF releases
  • Changed priorities in NEVRA parsing. This change should provide user preferred results especially in cases where multiple valid solution available.

Release of the latest candidates of dnf stack for Fedora 26

I think if I will start to talk that Fedora 26 is coming and that there will be DNF-2.x as default packager, I am not providing any new information. But If I will say that DNF made a huge progress not only from point of presence of new features, enhanced stability and over all user experience, probably it would be something to attract  people's attention. The latest releases have provided the spirit with following highlights: DNF-2.5.1 (since 2.4.1)

  • Redesigned reports of problem. Now package upgrades will be not skipped silently
  • Implemented progress of DRPM
  • Localized datetime format
  • Enhanced documentation
  • Detailed information about DNF releases
DNF-PLUGINS-CORE-2.1.1 (since 2.0.0)
  • Introduced DNF-UTILS subpackage that provides binaries previously known from YUM-UTILS
  • Enhanced documentation of plugin Versionlock
  • Plugin Versionlock will be not applied for commands without transaction like list, info, repoquery ...
  • Detailed information about DNF-PLUGINS-CORE releases
DNF-PLUGINS-EXTRAS-2.0.1 (since 2.0.0) LIBDNF-0.9.1 (since 0.8.3)
  • Improved handling of installonly packages and running kernel protection
  • Improved reports from libsolv (no redundant messages in particular problem set)
  • Install packages with lover version than already installed will allow downgrade of dependencies
  • Methods (problem_conflicts(),  problem_broken_dependency())  from python API where moved into C code
  • Python property problem_rules where changed to method and moved into C code
Additionally all of this releases fixes together over 30 bugs in whole DNF stack.

DNF 2.4.1, DNF-PLUGINS-CORE 2.0.0, DNF-PLUGINS-EXTRAS 2.0.0, and LIBDNF 0.8.3 have been released

The main aspect of the release is movement of several plugins from dnf-plugins-extras to dnf-plugins-core that became a part of core package or a separate sub-package. The release also provides new dnf option --enableplugin= , new option --userinstalled for REPOQUERY, and enables auto-detection of releasever from host if --releasever=/ is used. Additionally it fixes over 14 bugs in whole DNF stack, like a performance issue of VERSIONLOCK plugin, and added progress bar for download packages from command-line. For complete list of changes see DNF, DNF-PLUGINS-CORE and DNF-PLUGINS-EXTRAS release notes.