fedpkg 1.47 Release Notes
Released on November 26, 2025
This release requires rpkg >= 1.69-2. rpkg-1.69 release notes
Python compatibility
fedpkg works with Python 3.6, 3.9, 3.12, 3.13 and 3.14
What’s new in fedpkg 1.47
Not everything listed here is strictly “new”: many changes were previously released as patches. The following summarizes all changes since the previous fedpkg version.
request-unretirement: new command added
Introduces a new request-unretirement command. Supported branch names correspond to active Fedora and EPEL releases. Release names can be obtained using the releases-info command. If a branch was retired more than 8 weeks ago, an open Bugzilla ticket is required.
request-repo: creating project and package in Anitya
Adds fields needed for creating a project and package in Anitya (via toddlers). When the monitoring option is active, the tool checks whether the package exists in Anitya, and if not, prompts the user for additional data.
Use ruff code checker instead of bandit
In the testing CI (Jenkins), stop using bandit in favour of ruff. Bandit is deprecated in the latest Fedora release (F43). Added an environment for code coverage analysis.
Switch to %pyproject_* macros
Drops setuptools support for most environments and performs cleanup. Python 3.6 is still supported and therefore setuptools cannot be fully removed. Bash and zsh completions were removed in favor of Python argcomplete. Python 3.14 classifiers and test environments were added.
Clone the API key info into all help messages
Help text for several commands did not clearly reference the instructions found under request-repo, causing users to overlook them. To improve discoverability, shared help-text fragments were added and cloned into all relevant commands. Explicit uses of fedpkg were also cleaned up via string interpolation in modified sections.
update: Add unspecified update type
Adds support for an unspecified update type in the update command. See upstream Bodhi pull requests for details:
srpm: --offline arg to prevent connecting to Koji
Introduces a new –offline mode for the srpm command, using a recently added rpkg flag. In some branches, offline mode remains unavailable due to required macros in Koji.
Fixes: #600
Other small fixes
README documentation and Jenkins link updates - documentation links in the README were updated and a new Jenkins link was added.
retire: extended console help - the retire command now includes extended help text.
Jenkinsfile: use local declaration instead of global - adjusts Jenkinsfile to use a local variable declaration rather than a global one.
Change Logs
Use ruff code checker instead of bandit (onosek)
Clone the API key info into all help messages (mpospisi)
README: Documentation link change, and new Jenkins link – #606 (gleiro)
update: Add unspecified update type (priv.luk@gmail.com)
request-unretirement: Added a new command (amedvede)
request-repo: creating project and package in Anitya (amedvede)
Switch to %pyproject_* macros (onosek)
retire: extend the command’s console help - rhbz#2189969 (onosek)
Jenkinsfile: use local declaration instead of global (onosek)
srpm: –offline arg to prevent connecting to Koji – #600 (onosek)