Release notes 1.32

Related: https://pagure.io/koji/issue/3621
This commit is contained in:
Tomas Kopecek 2023-02-03 10:13:46 +01:00
parent 88d9f8cd13
commit d545aafbe7
4 changed files with 232 additions and 2 deletions

View file

@ -0,0 +1,22 @@
Migrating to Koji 1.32
======================
You should consider the following changes when migrating to 1.32:
DB Updates
----------
There is a simple schema change adding new index.
As in previous releases, we provide a migration script that updates the database.
::
# psql koji koji < /usr/share/doc/koji/docs/schema-upgrade-1.31-1.32.sql
Other changes
-------------
There are numerous other changes in 1.32 that should not have a direct impact on migration. For
details see: :doc:`../release_notes/release_notes_1.32`

View file

@ -0,0 +1,183 @@
Koji 1.32.0 Release notes
=========================
All changes can be found in `the roadmap <https://pagure.io/koji/roadmap/1.32/>`_.
Most important changes are listed here.
Migrating from Koji 1.31/1.31.1
-------------------------------
For details on migrating see :doc:`../migrations/migrating_to_1.32`
Security Fixes
--------------
None
Client Changes
--------------
**download-tasks has sorted tasks in check closed/not closed tasks**
| PR: https://pagure.io/koji/pull-request/3672
Simple change to have deterministic output
API Changes
-----------
**Remove krbLogin API**
| PR: https://pagure.io/koji/pull-request/3599
This call is deprecated for long and should have been replaced by ``sslLogin``
everywhere. In this case ``sslLogin`` is backed up by GSSAPI.
**Add checksum API**
| PR: https://pagure.io/koji/pull-request/3628
We've added complete API for computing/storing/querying full file checksums for
individual RPM files. Basic set of checksum types is computed when RPM is
imported into koji (via import or build task). This set is defined in
``hub.conf`` via ``RPMDefaultChecksums`` which is md5 and sha256 by default.
All users can query stored checksums via ``getRPMChecksums`` call.
Builder Changes
---------------
**Handle migrated rpmdb path**
| PR: https://pagure.io/koji/pull-request/3618
RPM db was in recent Fedora's moved from ``/var/lib/rpm`` to
``/usr/lib/sysimage/rpm``. For builds based on that koji was unable to determine
buildroot content correctly resulting in empty buildroot listings.
System Changes
--------------
**Use_fast_upload=True as default everywhere**
| PR: https://pagure.io/koji/pull-request/3530
It is seamless change for almost everybody. Fast upload mechanism is here for
more than ten years. Clients now has one less call to do (determining if server
supports it)
**rpmdiff: replace deprecated rpm call**
| PR: https://pagure.io/koji/pull-request/3562
``rpmdiff`` was adapted to current rpm API
**Move hub code to site-packages**
| PR: https://pagure.io/koji/pull-request/3588
We've moved hub code to site-packages allowing further refactoring. Important is
that _everybody_ needs to fix their ``httpd.conf`` to point to new app location:
.. code-block:: diff
- Alias /kojihub /usr/share/koji-hub/kojixmlrpc.py
+ Alias /kojihub /usr/share/koji-hub/kojiapp.py
**Continuing internal refactoring for safer SQL handling.**
| PR: https://pagure.io/koji/pull-request/3589
| PR: https://pagure.io/koji/pull-request/3632
| PR: https://pagure.io/koji/pull-request/3668
**Fix default archivetypes extensions**
| PR: https://pagure.io/koji/pull-request/3614
Simple fix of default extensions for VHDX compressed images.
**unify migration scripts**
| PR: https://pagure.io/koji/pull-request/3624
Merged few older redundant migration scripts.
**Deprecated get_sequence_value**
| PR: https://pagure.io/koji/pull-request/3636
For plugin writers - this internal method is now deprecated and similar method
``koji.db.nextval`` should be used instead.
**Remove DisableGSSAPIProxyDNFallback option on Hub**
| PR: https://pagure.io/koji/pull-request/3649
Deprecated setting finally removed.
**replace deprecated distutils**
| PR: https://pagure.io/koji/pull-request/3654
We've dropped deprecated distutils.
**Add custom_user_metadata to build info for wrapperRPM build type**
| PR: https://pagure.io/koji/pull-request/3660
**Recreate timeouted session**
| PR: https://pagure.io/koji/pull-request/3664
| PR: https://pagure.io/koji/pull-request/3659
| PR: https://pagure.io/koji/pull-request/3657
Sessions now can have defined lifetime. After that they'll be marked as
``expired`` still allowing client to reauthenticate and reuse that session.
Calling ``logout`` will finally destroy the session with no possibility of
reviving. This change should be seamless for most users. (E.g. builder code
needed no change as it is completely transparent behaviour for pythong client)
Expiration time is not defined anywhere now. It is up to admins to either expire
sessions selectively or set up cron job expiring all sessions after some time.
If not handled, koji sessions will behave exactly same way as in previous
releases.
This is a new behaviour to improve koji's security.
Utilities
---------
**koji-gc: use history to query trashcan contents**
| PR: https://pagure.io/koji/pull-request/3608
Performance improvement lowering memory usage on the hub.
VM
--
**kojikamid: remove clamav scanner**
| PR: https://pagure.io/koji/pull-request/3584
As ClamAV is no more supported on cygwin, we're going to drop source and
artifcats scanning support for windows build expecting that this scanning should
happen outside of koji (or via plugin). We're not scanning any other artifact
type, so it makes more sense to outsource it here also.
Content Generator Changes
-------------------------
**metadata for koji task id**
| PR: https://pagure.io/koji/pull-request/3656
Metadata format was extended to allow linking to koji task. So new key
``metadata['build']['task_id']`` is allowed now. For OSBS there is a
compatibility fallback on ``metadata['extra']['container_koji_task_id']`` for
older builds.
Documentation
-------------
**Fix auth unit tests**
| PR: https://pagure.io/koji/pull-request/3661
**Improve help for call --python option**
| PR: https://pagure.io/koji/pull-request/3663

View file

@ -83,7 +83,7 @@
%define release %{baserelease}
%endif
Name: koji
Version: 1.31.1
Version: 1.32.0
Release: %{release}%{?dist}
License: LGPL-2.1-only and GPL-2.0-or-later
# the included arch lib from yum's rpmUtils is GPLv2+
@ -648,6 +648,31 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
* Fri Feb 3 2023 Tomas Kopecek <tkopecek at redhat.com> - 1.32.0-1
- PR#3530: use_fast_upload=True as default everywhere
- PR#3562: rpmdiff: replace deprecated rpm call
- PR#3584: kojikamid: remove clamav scanner
- PR#3588: Move hub code to site-packages
- PR#3589: Replace _multiRow, _singleRow, _singleValue with QP
- PR#3599: Remove krbLogin API
- PR#3608: koji-gc: use history to query trashcan contents
- PR#3614: fix default archivetypes extensions
- PR#3618: handle migrated rpmdb path
- PR#3624: unify migration scripts
- PR#3632: Next rewrite Select/Update queries
- PR#3636: Deprecated get_sequence_value
- PR#3647: hub: remove print statement
- PR#3649: Remove DisableGSSAPIProxyDNFallback option on Hub
- PR#3654: replace deprecated distutils
- PR#3657: Fix callnum handling
- PR#3659: rawdata not needed for callnum update
- PR#3660: Add custom_user_metadata to build info for wrapperRPM build type
- PR#3661: Fix auth unit tests
- PR#3663: cli: improve help for call --python option
- PR#3664: Recreate timeouted session
- PR#3668: Reset build processor values with specific value only
- PR#3672: CLI download-tasks has sorted tasks in check closed/not closed tasks
* Mon Jan 9 2023 Tomas Kopecek <tkopecek at redhat.com> - 1.31.1-1
- PR#3644: www: fix target link in taskinfo page
- PR#3650: Add test cases for help

View file

@ -1,2 +1,2 @@
__version_info__ = (1, 31, 1)
__version_info__ = (1, 32, 0)
__version__ = '.'.join([str(x) for x in __version_info__])