Highlights from 2026-08-12 release

Enhancements

  • #2645 - --chroot and --exclude-chroot now support Unix file pattern matching in the frontend and CLI.

  • #4373 - copr-cli buildpypi now supports --with-deps. Read more in a blog post - PyPI dependencies, resolved and built for you

  • #4354 - Locking now uses fair FIFO Redis queues.

  • copr-cli now supports --chroot-denylist for add-package and edit-package.

  • copr-cli now documents permission management commands in the man page.

  • Kafka was added as a new message bus backend.

  • rpmeta build time predictions are now enabled.

  • Markdown rendering in the frontend was ported to markdown-it-py.

  • Copr now supports direct RPM upload builds. Users can upload already-built RPM files and publish them directly into a selected chroot. This feature will not be enabled on the Fedora Copr instance.

  • OpenShift deployment templates were converted to a Helm chart.

Integration with Pulp

  • #4317 - Failed Pulp background tasks are now retried with exponential backoff.

  • #4417 - Fixed waiting for Pulp publications when creating devel repositories.

  • #4363 - Fixed a race in PulpStorage.delete_builds().

  • The backend now handles asynchronous Pulp distribution updates.

  • The backend now waits for Pulp publication tasks to finish.

  • Pulp request handling was refactored around PulpRequest and deliver_and_wait.

Bugfixes

  • #4371 - The EOL chroot notification script no longer crashes when failing to send a notification

  • #4398 - Forking also empty repositories

  • #4392 - Fixed dependency on python3-rich for colors in copr-cli

  • #4375 - Documented client permission commands.

  • rpmbuild no longer build-depends on scl-utils.

  • Fixed create_file_logger compatibility with pytest 9.1 and newer.