Release notes 1.24

Fixes: https://pagure.io/koji/issue/2684
This commit is contained in:
Tomas Kopecek 2021-02-04 14:33:31 +01:00
parent 53daa678ea
commit c8b1ba8ad0
6 changed files with 351 additions and 2 deletions

View file

@ -0,0 +1,26 @@
Migrating to Koji 1.24
======================
You should consider the following changes when migrating to 1.24:
DB Updates
----------
This release includes one minor schema change.
As we now can have architectures defined for individual external repos, we need
to reflect it in db. (see `PR#2564
<https://pagure.io/koji/pull-request/2564>`_).
As in previous releases, we provide a migration script that updates the database.
::
# psql koji koji < /usr/share/doc/koji/docs/schema-upgrade-1.23-1.24.sql
Other changes
-------------
There are numerous other changes in 1.24 that should not have a direct impact on migration. For
details see: :doc:`../release_notes/release_notes_1.24`

View file

@ -5,6 +5,7 @@ Migrations
.. toctree::
:maxdepth: 1
migrating_to_1.24
migrating_to_1.23
migrating_to_1.22
migrating_to_1.21

View file

@ -5,6 +5,7 @@ Release Notes
.. toctree::
:maxdepth: 1
release_notes_1.24
release_notes_1.23.1
release_notes_1.23
release_notes_1.22.1

View file

@ -0,0 +1,280 @@
Koji 1.24.0 Release notes
=========================
All changes can be found at `pagure <https://pagure.io/koji/roadmap/1.24/>`_.
Most important changes are listed here.
Migrating from Koji 1.23/1.23.1
-------------------------------
For details on migrating see :doc:`../migrations/migrating_to_1.24`
Security Fixes
--------------
None
Client Changes
--------------
**support download-build --type=remote-sources**
| PR: https://pagure.io/koji/pull-request/2608
This wasn't possible via CLI before. Extensions for downloading additional artifact type.
**hide import-sig --write option**
| PR: https://pagure.io/koji/pull-request/2654
Option is not used anymore. We're hiding it from the user.
**return error if add/remove-tag-inheritance can't be applied**
Previously only a warning was printed but return code implied no problems. Now
it is returning an error-code so it has better problem visibility in scripts.
| PR: https://pagure.io/koji/pull-request/2605
**raise NotImplementedError with btype name**
| PR: https://pagure.io/koji/pull-request/2610
More verbose error when downloading unsupported archives.
**list-tasks --after/--before/--all**
| PR: https://pagure.io/koji/pull-request/2566
New options for list-tasks. Formerly only running tasks could have been
displayed. Now also closed tasks can be displayed with ``--all`` and
``--after``/``--before`` options. Anyway, use it wisely - returning all tasks
can hurt the hub's performance.
**list-hosts can display description/comment**
| PR: https://pagure.io/koji/pull-request/2562
``--comment`` and ``--description`` options could be used to display additional
info in listing command. They are not enabled by default.
**allow removal of unused external repo even with --alltags**
| PR: https://pagure.io/koji/pull-request/2560
Fixed confusing behaviour when if ``--altags`` was used when removing external
repo repo itself wasn't deleted.
**history query by key**
| PR: https://pagure.io/koji/pull-request/2589
Additional filter option ``--xkey`` for list-history limiting history records
only for given extra key.
Library Changes
---------------
**better print with debug_xmlrpc**
| PR: https://pagure.io/koji/pull-request/2598
Fix of py3 migration regression. Even printable data were base64-encoded. If it
is a printable unicode string it is printed directly as in py2 version.
API Changes
-----------
**readFullInheritance stops/jumps deprecation**
| PR: https://pagure.io/koji/pull-request/2655
Deprecation of unused options.
**backward compatible hub call**
| PR: https://pagure.io/koji/pull-request/2649
**fix nightly getNextRelease format**
| PR: https://pagure.io/koji/pull-request/2630
Additional format allowed for ``getNextRelease`` - ``{str}.{str}.{id}``.
**[listBuilds] add nvr glob pattern support**
| PR: https://pagure.io/koji/pull-request/2555
``listBuilds`` now can have ``pattern`` glob option which is used in same way
like in ``search`` call.
Builder Changes
---------------
**Add option to use repos from kickstart for livemedia builds**
| PR: https://pagure.io/koji/pull-request/2571
``--ksrepo`` option for livemedia task. If specified, repos in kickstart are not
overriden by koji.
**Add nomacboot option for spin-livemedia**
| PR: https://pagure.io/koji/pull-request/2540
``--nomacboot`` option could be passed to livemedia-creator.
System Changes
--------------
**make policy test thread safe**
| PR: https://pagure.io/koji/pull-request/2651
**spec: pythonic provides**
| PR: https://pagure.io/koji/pull-request/2667
Spec file now provides python3dist(koji) provides.
**requires python[23]-requests-gssapi for rhel[78]**
| PR: https://pagure.io/koji/pull-request/2664
**explicit encoding for text file operations**
| PR: https://pagure.io/koji/pull-request/2647
In some mod_wsgi configuration hub can raise error because of non-default
encoding usage when opening text files. This was now unified to force UTF-8
everywhere.
**Lower default multicall batch values**
| PR: https://pagure.io/koji/pull-request/2644
In high-load environments long-running transactions can lead even to db
deadlocks. We suggest to use lower batches for multicalls and lowered all
default we currently have in the code. Rule of thumb is that everything running
longer than two minutes should be split into smaller batches. Anyway, you'll
always need to think about transaction consistency in the particular usecase.
**require gssapi-requests 1.22**
| PR: https://pagure.io/koji/pull-request/2584
Older versions of library have a bug which break the gsaapi login for builders.
Upgrading to this versions solves the problem.
**limit CGImport to allow only one CG per import**
| PR: https://pagure.io/koji/pull-request/2574
We've found that nobody is using the option to include multiple CGs output in
one CG import. It makes things easier if we limit it directly to one CG per
import. In such case we know which CG generated which build and policies can
work with this value, etc.
**external repos can have specified arch list**
| PR: https://pagure.io/koji/pull-request/2564
| PR: https://pagure.io/koji/pull-request/2682
Some external repositories can have split architectures (e.g. primary
architectures in one repo and secondary in the second). On the other hand tags
expect that external repo has all the architectures as the tag has. New option
can define that external repo contain only subset of tag's architectures.
Multiple external repos with different architectures can then be attached to the
tag. This behaviour can be tuned by ``--arches`` option in ``add-external-repo``
and ``edit-external-repo`` commands.
**remove deprecated --ca option**
| PR: https://pagure.io/koji/pull-request/2529
Formerly deprecated ``--ca`` option is finally removed for all executables.
Web
---
**return correct content-length**
| PR: https://pagure.io/koji/pull-request/2639
Regressions for py3 code - ``Content-Length`` header was erroneously computed so
some browsers fetched incomplete page. It is not visible in most cases (as final
html tags are corrupted and added by the browser) but in some cases it could
led to broken web page.
**order methods by name in select box**
| PR: https://pagure.io/koji/pull-request/2559
With growing number of task types it makes more sense to order them
alphabetically these days compared to previous *importance* ordering.
**more accessible task colors/icons**
| PR: https://pagure.io/koji/pull-request/2653
For higher accessibilit we've changed a bit colors corresponding to task and
build states. We've also added more informative icons to taskinfo page.
**display VCS/DistURL rpm tags**
| PR: https://pagure.io/koji/pull-request/2683
Buildinfo and rpminfo pages now display also VCS and DistURL tags if they are
present in rpm (srpm for buildinfo page).
Plugins
-------
**handle plugins and generator results in count and countAndFilterResults**
| PR: https://pagure.io/koji/pull-request/2633
These functions couldn't have been used for methods provided by plugins and
methods which returned generators. This is now fixed.
**plugin hooks for repo modification**
| PR: https://pagure.io/koji/pull-request/2637
New ``postCreateRepo`` and ``postCreateDistRepo`` plugin hooks were introduced
on builder. They can be used to modify repodata with intent to allow sign the
repodata by plugins but it can be used for additional repodata modification.
Utilities
---------
Kojira
......
**move checkTasks near its usage**
| PR: https://pagure.io/koji/pull-request/2140
We've moved checking running ``newRepo`` tasks to different place. Now, number
of running tasks should be more close to set capacity as kojira will check
finished tasks just before spawning new ones, so estimation should be better.
Documentation
-------------
**mention the final destination for new dist-repos**
| PR: https://pagure.io/koji/pull-request/2621
**link to tag2distrepo hub plugin**
| PR: https://pagure.io/koji/pull-request/2617
**types param for content generators**
| PR: https://pagure.io/koji/pull-request/2609
**remove global SSLVerifyClient option**
| PR: https://pagure.io/koji/pull-request/2627

View file

@ -78,7 +78,7 @@
%define release %{baserelease}
%endif
Name: koji
Version: 1.23.1
Version: 1.24.0
Release: %{release}%{?dist}
License: LGPLv2 and GPLv2+
# the included arch lib from yum's rpmUtils is GPLv2+
@ -590,6 +590,47 @@ rm -rf $RPM_BUILD_ROOT
%systemd_postun kojira.service
%changelog
* Thu Feb 4 2021 Tomas Kopecek <tkopecek at redhat.com> - 1.24.0-1
- PR#2637: plugin hooks for repo modification
- PR#2680: fix the mode of tarfile.open
- PR#2608: cli: support download-build --type=remote-sources
- PR#2674: cli: fix tests
- PR#2667: spec: pythonic provides
- PR#2671: fix typo
- PR#2651: make policy test thread safe
- PR#2664: requires python[23]-requests-gssapi for rhel[78]
- PR#2655: readFullInheritance stops/jumps deprecation
- PR#2589: history query by key
- PR#2633: handle plugins and generator results in count and countAndFilterResults
- PR#2649: kojid: backward compatible hub call
- PR#2647: explicit encoding for text file operations
- PR#2661: web: add comment explaining null start_time values
- PR#2639: web: return correct content-length
- PR#2654: cli: hide import-sig --write option
- PR#2644: Lower default multicall batch values
- PR#2584: require gssapi-requests 1.22
- PR#2576: db: add debian package archivetype
- PR#2627: hub: remove global SSLVerifyClient option
- PR#2605: cli: return error if add/remove-tag-inheritance can't be applied
- PR#2630: fix nightly getNextReelase format
- PR#2610: cli: raise NotImplementedError with btype name
- PR#2598: lib: better print with debug_xmlrpc
- PR#2621: docs: mention the final destination for new dist-repos
- PR#2617: docs: link to tag2distrepo hub plugin
- PR#2609: hub: doc listArchive types param for content generators
- PR#2595: unify sql case
- PR#2566: cli: list-task --after/--before/--all
- PR#2574: hub: limit CGImport to allow only one CG per import
- PR#2564: external repos can have specified arch list
- PR#2562: cli: list-hosts can display description/comment
- PR#2529: remove deprecated --ca option
- PR#2555: hub: [listBuilds] add nvr glob pattern support
- PR#2560: cli: allow removal of unused external repo even with --alltags
- PR#2571: Add option to use repos from kickstart for livemedia builds
- PR#2559: web: order methods by name in select box
- PR#2540: Add nomacboot option for spin-livemedia
- PR#2561: hub: fix tests
* Mon Jan 4 2021 Tomas Kopecek <tkopecek at redhat.com> - 1.23.1-1
- PR#2603: hub: fix py2-like 'stop' usage in getFullInheritance
- PR#2593: docs: assign multicall to "m" in code example

View file

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