Koji 1.21.0 Release notes¶
Announcement: We’re going to drop python 2 support for hub and web in koji 1.22. Please, prepare yourself for deploying python 3 versions of these. Both are already supported and this is the next step in retiring python 2 codebase.
All changes can be found at pagure. Most important changes are listed here.
Add –no-delete option to clone-tag
clone-tag command was enhanced to produce ‘copy’ operation without deleting
what is in the target tag. See PR for detailed semantics, as it could be
confusing a bit.
display merge mode for external repos
Merge modes are now listed in taginfo command (and also in web ui)
koji download-build resuming downloads
download-build could often break for bigger builds. Resuming truncated
download after relaunch is now default behaviour.
add-host work even if host already tried to log in
Previously, if builder contacted before its user was created in db, it was hard
to fix it. Now, it could be forced via cli’s
Allow to skip SRPM rebuild for scratch builds
Rebuilding SRPMs doesn’t make much sense in most of scratch builds. There is an
--no-rebuild-srpm which can be used to skip this step. Note, that it
doesn’t work for regular builds, which needs to adhere to policy set by
Deprecating list-tag-history and tagHistory
These commands are superseded by
will be removed in near future.
Add detail about known koji signatures to buildinfo
If koji knows about any signatures, they are now also printed.
deprecation of krb_login
gssapi_login should be now used wherever possible
Remove deprecated functions
md5/sha1 constructors and cgi.escape functions were removed.
editTagExternalRepo is able to set merge_mode
Removing and re-adding external repo is no more needed if user just needs to change merge strategy.
Remove debugFunction API
Removed deprecated call
make xz options configurable
xz compression for images now can be configured on builder level. It can be tuned accordingly to CPU/memory ratio available.
Delete oldest failed buildroot when there is no space
If there is no space on builder, we try to delete buildroots from oldest to newest. It could be harder to debug some failed builds, as those data can be already deleted, on the other hand, builders will not refuse to work due to lack of space.
new policy for dist-repo
Previously only users with
dist-repo permission were allowed to run it. Now,
there could be a policy defined, mostly based on tag or user names.
Add ‘target’ policy
We used it before, but with generic tests like
match. Now we have proper
target policy test.
always set utf8 pg client encoding
We’re now forcing utf8 client encoding for database connection.
Limit final query by prechecking buildroot ids
Significant performance improvement for
use real time for events
Events now should be created with real-world time, not with the beginning of transaction. It could have led to non-clear history in some cases, it should be better now.
log –force usage by admins
--force to override policies is now logged.
Add smtp authentication support
SMTP authentication is now available in kojid and koji-gc.
Sidetag plugin is now part of koji
We’ve integrated sidetag plugin to koji, so we can add more integrated functionality to it.
allow debuginfo for sidetag repos
sidetag repos can now contain debuginfo packages (
--debuginfo option for
New call editSideTag
New API call allowing users of sidetags to modify certain values (debuginfo, package lists).
Emit user in PackageListChange messages
protonmsg now sends also user name and id.
limit size of extra field in proton msgs
extra field can be omitted from proton message if it exceeds configured
threshold. Some content generators can create very big
extra data which
needn’t to be sent via message bus and can be queried on demand via API.
file locking for koji-gc
As GC can run for long periods of time, ensuring, that there is only one
instance running is worthwile.
kojira monitors external repos changes
External repositories are now monitored and kojira will trigger
tasks when their content changed.
reverse score ordering for tags
Fixed bug which regenerated repositories in least-important-first order.
Lot of documentation was added in last release in API and also in docs pages.