Highlights from 2024-05-22 release

Updated client packages are shipped in Fedora 39, Fedora 40, EPEL 7, EPEL 8, and EPEL 9 Bodhi updates.


  • Users can now set the default build timeout per package, see PR#3259.

  • The end-of-life process for disabled chroots (started, for example, for fedora-37-x86_64 when Fedora 37 went EOL) includes an e-mail notification mechanism to inform users that built RPMs are being removed. Previously, for users with many projects and many enabled chroots, these e-mails were too long and hard to understand. Jakub simplified them in this release.

  • The list of projects in Copr’s UI (the default global list, per-group, and per-user) is now sorted differently. Temporary projects get lower priority and are presented behind the normal “stable” projects, giving more visibility to the “stable” projects (where people care more).

  • Jirka completed the long migration of Copr’s APIv3 to flask-restx, which provides users with a very neat self-documentation. This is the first release where all the API routes are documented.


  • Jakub fixed two long-standing bugs/TODOs in the Copr’s Rawhide branching script in this release. First, the script now branches all the Copr chroots, including those representing pull-request directories, and second, Copr tries to generate the post-branching repository multiple times, for cases when the repo generator (the createrepo_c utility) fails. These problems were frequently reported to the Copr team as the build-time failure Giving up waiting for copr_base repository.

  • The button for feeding LogDetective was fixed to provide valid options.

Warnings/Future changes

  • The team is working on automatic cleanup of old Copr Backend data (build results) for lifeless rolling chroots (e.g., Fedora Rawhide, Fedora ELN, etc.). The effect of the policy will probably not come into effect until the end of the year 2024, but be prepared that you might be affected by this change.

  • The long-term known gray zone in Copr is the ability to build the exact same package NEVRA multiple times into the same project/repositories (i.e., Copr does not require you to bump Release). This is allowed now and will be in the future. However, if such duplicates are placed into RPM repositories, it is undefined which one is installed by end-users. This “presentation” layer is likely going to change with the Copr-move-to-PULP in the future.


  • Comptibility fixes for the new Flask/SQLAlchemy versions were done.