Release notes 1.29

Related: https://pagure.io/koji/issue/3361
This commit is contained in:
Tomas Kopecek 2022-05-12 16:16:02 +02:00
parent d6da86ef1d
commit 7d6d95fc66
7 changed files with 315 additions and 3 deletions

View file

@ -0,0 +1,5 @@
-- upgrade script to migrate the Koji database schema
-- from version 1.28 to 1.29
-- This version introduced no changes in db schema

View file

@ -0,0 +1,17 @@
Migrating to Koji 1.29
======================
You should consider the following changes when migrating to 1.28:
DB Updates
----------
There is no schema change this time.
As in previous releases, we provide a migration script which is no-op in this case.
Other changes
-------------
There are numerous other changes in 1.29 that should not have a direct impact on migration. For
details see: :doc:`../release_notes/release_notes_1.29`

View file

@ -5,6 +5,7 @@ Migrations
.. toctree::
:maxdepth: 1
migrating_to_1.29
migrating_to_1.28
migrating_to_1.27
migrating_to_1.26

View file

@ -5,6 +5,7 @@ Release Notes
.. toctree::
:maxdepth: 1
release_notes_1.29
release_notes_1.28.1
release_notes_1.28
release_notes_1.27.1

View file

@ -0,0 +1,237 @@
Koji 1.29.0 Release notes
=========================
All changes can be found in `the roadmap <https://pagure.io/koji/roadmap/1.29/>`_.
Most important changes are listed here.
Migrating from Koji 1.28/1.28.1
-------------------------------
For details on migrating see :doc:`../migrations/migrating_to_1.29`
Security Fixes
--------------
None
Client Changes
--------------
**Retry gssapi_login if it makes sense**
| PR: https://pagure.io/koji/pull-request/3248
Only place in CLI where we did not retried when server was inaccessible was
rewriteen to retry in some cases when there is an expecetation that it could
work.
**Fix more users in userinfo**
| PR: https://pagure.io/koji/pull-request/3325
Userinfo regressions - it now correctly list information for all users specified
on command line.
**Download output for all task types in download-task**
| PR: https://pagure.io/koji/pull-request/3343
Some types of output were not reachable via CLI (but via web yes). E.g. scratch
image builds. All content now should be downloadble via CLI (see ``-all`` and
older ``--logs`` options). Also new ``--dirperarch`` option is there now to
handle same-named artifacts/logs for different archs.
**Allow untag-build for blocked packages**
| PR: https://pagure.io/koji/pull-request/3255
When package is blocked in the tag but there was already some build for that
package, CLI refused to untag it. It is now fixed.
API Changes
-----------
**Remove taskReport API call**
| PR: https://pagure.io/koji/pull-request/3237
**Add strict option to getRPMHeaders**
| PR: https://pagure.io/koji/pull-request/3256
Similarly to other stricts it will raise an error if rpm doesn't exist. Empty
dictionary was returned instead which was indistunguishable with missing
requested key in existing RPM. This behaviour is still available with
``strict=False``.
**Add extra of builds to listTagged call result**
| PR: https://pagure.io/koji/pull-request/3282
Pattern of ``listTagged`` followed by multicall of ``getBuild`` is used often,
so we decided to put missing info (``extra`` field) directly into ``listTagged``
so only one call is required now.
**Add as_string option to showOpts for raw string or dict output**
| PR: https://pagure.io/koji/pull-request/3313
| PR: https://pagure.io/koji/pull-request/3349
Usable for koji administration - additional format for getting current
configuration in machine-readable format. ``as_string=True`` reflects old
behaviour.
Builder Changes
---------------
**Check ccache size before trying to use it**
| PR: https://pagure.io/koji/pull-request/3234
Machine restart could cause failing authentication for the builder as ccache
file is not properly deleted.
**call git rev-parse before chowning source directory**
| PR: https://pagure.io/koji/pull-request/3355
Newer git (2.35.2) fixed long-standing git security issue but we needed to adapt
our code as a result.
System Changes
--------------
**Remove koji.listFaults**
| PR: https://pagure.io/koji/pull-request/3238
This method was not used anywhere in koji code and could complicate future
exception redesign, so we've removed it.
**Add log file for match_rpm warnings in cg_import**
| PR: https://pagure.io/koji/pull-request/3257
CG import was writing errors to hub logs when rpm were not found in koji. As it
could be a problem in some workflows, we've added more visibility by uploading
separate log to the imported build which lists these errors.
**Return 400 codes when client fails to send a full request**
| PR: https://pagure.io/koji/pull-request/3269
Changing to errcode instead of exception will allow client to retry it. So,
another type of network problems can be handled more transparently.
**Weak dep on httpd.service for kojid/ra - koji**
| PR: https://pagure.io/koji/pull-request/3277
In case more services are running on same node (e.g. hub + kojira) this change
will trigger ``kojid``/``kojira`` after hub is running resulting in no initial
errors due to inaccessible hub.
**Log content-length when we get an error reading request**
| PR: https://pagure.io/koji/pull-request/3289
Additional logging information for unstable networks.
**Hub, plugins and tools inputs validation**
| PR: https://pagure.io/koji/pull-request/3318
Internal changes improving security via better input handling.
**Add admin check when priority has negative value in wrapperRPM**
| PR: https://pagure.io/koji/pull-request/3321
| PR: https://pagure.io/koji/pull-request/3347
It was a bug present in the code, where ``wrapperRPM`` s could have been set to
negative priority even by their owners. Negative priorities are reserved just
for admins.
**Permit forcing releasever/arch within mock per tag**
| PR: https://pagure.io/koji/pull-request/3358
Mock's ``forcearch`` and ``relver`` options are now accesible via tag extras.
Web
---
**Add free task for admin**
| PR: https://pagure.io/koji/pull-request/3272
In addition to cancelling task, admin now has also "free" button available.
**Add blocked option to packages page**
| PR: https://pagure.io/koji/pull-request/3334
| PR: https://pagure.io/koji/pull-request/3329
New filter to see blocked packages in webui.
**Display load/capacity at hosts page**
| PR: https://pagure.io/koji/pull-request/3346
It is sometimes useful to see these values there.
Kojira
------
**Use PrivateTmp for kojid/kojira**
| PR: https://pagure.io/koji/pull-request/3276
More safe/secure handling of tempdirs.
Plugins
-------
**Adding Driver Update Disk building support**
| PR: https://pagure.io/koji/pull-request/3217
Previously Driver Update Disks were done by custom scripts or by `ddiskit
<https://github.com/orosp/ddiskit/blob/master/bin/ddiskit>`_. Now it can be done
in koji, so it benefits from auditability, etc.
**koji-sidetag-cleanup: delete inactive tags**
| PR: https://pagure.io/koji/pull-request/3294
New cleanup option allow to delete sidetags which are no longer active (no new
builds are tagged there).
**Add tag2distrepo plugin to hub**
| PR: https://pagure.io/koji/pull-request/3326
Plugin will trigger ``distrepo`` tasks for configured tags when a new build
arrives.
**Fix age to max_age in protonmsg**
| PR: https://pagure.io/koji/pull-request/3344
Incoherent naming in documentation and code is now unified.
Documentation
-------------
**Clarify rpm imports**
| PR: https://pagure.io/koji/pull-request/3301
**Better description for kiwi channel requirements**
| PR: https://pagure.io/koji/pull-request/3331
**Winbuild documentation updates**
| PR: https://pagure.io/koji/pull-request/3333
**Document "list-signed" requires filesystem access**
| PR: https://pagure.io/koji/pull-request/3342

View file

@ -83,7 +83,7 @@
%define release %{baserelease}
%endif
Name: koji
Version: 1.28.1
Version: 1.29.0
Release: %{release}%{?dist}
License: LGPLv2 and GPLv2+
# the included arch lib from yum's rpmUtils is GPLv2+
@ -644,6 +644,57 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
* Thu May 12 2022 Tomas Kopecek <tkopecek at redhat.com> - 1.29.0-1
- PR#3349: Py3 re pattern fix
- PR#3338: Add header separaton to list-hosts and list-channels
- PR#3336: Fix list-permissions ordering and header
- PR#3325: cli: fix more users in userinfo
- PR#3355: call git rev-parse before chowning source directory
- PR#3353: Fix wrapper-rpm unit test
- PR#3326: Add tag2distrepo plugin to hub
- PR#3321: Add admin check when priority has negative value in wrapperRPM
- PR#3347: Fix input validation
- PR#3282: Add extra of builds to listTagged call result
- PR#3344: Fix age to max_age in protonmsg
- PR#3289: log content-length when we get an error reading request
- PR#3334: Add blocked option to packages page
- PR#3346: www: display load/capacity at hosts page
- PR#3278: Download-logs with nvr without task ID downloads a logs
- PR#3313: Add as_string option to showOpts for raw string or dict output
- PR#3217: Adding Driver Update Disk building support
- PR#3318: Hub, plugins and tools inputs validation
- PR#3256: add strict option to getRPMHeaders
- PR#3342: cli: document "list-signed" requires filesystem access
- PR#3257: Add log file for match_rpm warnings in cg_import
- PR#3276: Use PrivateTmp for kojid/kojira
- PR#3333: doc: winbuild documentation updates
- PR#3329: Fix number of packages without blocked
- PR#3331: doc: better description for kiwi channel requirements
- PR#3279: Skip activate_session when logged
- PR#3272: Webui: add free task for admin
- PR#3301: doc: clarify rpm imports
- PR#3306: Koji 1.28.1 release notes
- PR#3309: cli: rename "args" var for list-tags command
- PR#3248: Retry gssapi_login if it makes sense
- PR#3303: www: fix attribute test
- PR#3292: docs: Task flow diagram
- PR#3290: web: encode filename as UTF-8
- PR#3259: kojira: don't call listTags more than once
- PR#3262: Fix parsing of URLs with port numbers
- PR#3298: Use buildins.type when option is called type in readTaggedRPMS
- PR#3300: Same format output for list-builroot with verbose for py3/py2
- PR#3297: doc: fix readTaggedRPMs rpmsigs option description
- PR#3234: Check ccache size before trying to use it
- PR#3270: Increase CLI test cases
- PR#3208: hub: improve inheritance priority collision error message
- PR#3269: return 400 codes when client fails to send a full request
- PR#3265: Set dst permissions same as src permissions
- PR#3255: allow untag-build for blocked packages
- PR#3252: Fix tag and target shows as string, not as dict to string
- PR#3238: Remove koji.listFaults
- PR#3237: Remove taskReport API call
* Mon Mar 28 2022 Tomas Kopecek <tkopecek at redhat.com> - 1.28.0-1
- PR#3263: Fix syntax error
- PR#3303: www: fix attribute test
@ -659,7 +710,7 @@ rm -rf $RPM_BUILD_ROOT
- PR#3265: Set dst permissions same as src permissions
- PR#3252: Fix tag and target shows as string, not as dict to string
* Wed Feb 2 2022 Tomas Kopecek <tkopecek at redhat.com> - 1.28.0-1
* Wed Feb 2 2022 Tomas Kopecek <tkopecek at redhat.com> - 1.27.0-1
- PR#3028: Add limits on name values
- PR#3105: Deprecated --paths option in list-buildroot
- PR#3108: Remove rename-channel CLI and use editChannel in renameChannel

View file

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