Koji 1.13 Release Notes

Migrating from Koji 1.12

For details on migrating see :doc:`../migrations/migrating_to_1.13`

Client Changes

Python 3 client support

| PR: https://pagure.io/koji/pull-request/417

The koji command and core library now support Python 3 (as well as 2). The
default spec now produces both `python2-koji` and `python3-koji`
subpackages. The `koji` package still contains the (now much smaller)
``/usr/bin/koji`` file.

Some older features are not supported by the Python 3 client

    * the `use_old_ssl` option is not supported, python-requests must be used
    * the old kerberos auth mechanism is not supported, use gssapi instead

CLI Plugins

| PR: https://pagure.io/koji/pull-request/199

The command line interface now has basic plugin support. The primary use case
is for plugins to be able to add new subcommands.
For details see: :ref:`plugin-cli-command`

list-channels CLI command

| PR: https://pagure.io/koji/pull-request/442

The new `list-channels` command lists the known channels for the system.

.. code-block:: text

    Usage: koji list-channels
    (Specify the --help global option for a list of other help options)

      -h, --help  show this help message and exit
      --quiet     Do not print header information

hostinfo CLI command

| PR: https://pagure.io/koji/pull-request/399
| Issue: https://pagure.io/koji/issue/364

The new ``hostinfo`` command shows basic information about a build host,
similar to the web interface.

.. code-block:: text

    Usage: koji hostinfo [options] <hostname> [<hostname> ...]
    (Specify the --help global option for a list of other help options)

      -h, --help  show this help message and exit

Enhancements to restart-hosts

| PR: https://pagure.io/koji/pull-request/472

The `restart-hosts` command is used by admins to safely restart the build hosts
after a configuration change.

Because multiple restarts can conflict, the command will now exit with a error
if a restart is already underway (can be overridden with --force).

There are now options to limit the restart to a given channel or arch.

The command now has a timeout option, which defaults to 24hrs.

User-Agent header

| PR: https://pagure.io/koji/pull-request/393
| Issue: https://pagure.io/koji/issue/392

Previously the Koji client library reported a confusingly out-of-date value
in the ``User-Agent`` header. Now it simply reports the major version.

raise error on non-existing profile

| PR: https://pagure.io/koji/pull-request/375
| Issue: https://pagure.io/koji/issue/370

If the requested client profile is not configured, the library will raise an
error, rather than proceeding with default values.

See also: :doc:`../profiles`

Changes to the Web interface

Build Log Display

| PR: https://pagure.io/koji/pull-request/471

The build info pages now display the log files for a build (instead of linking
directly to the directory on the download server). This works for all builds,
including those imported by content generators.

Builder changes

Configuring mock chroot behavior

| PR: https://pagure.io/koji/pull-request/400
| Issue: https://pagure.io/koji/issue/398

Koji now supports using mock's --new-chroot option on a per-tag basis.
For details see: :ref:`tuning-mock-per-tag`

pre/postSCMCheckout callbacks

The callback interface is used by plugins to hook into various Koji operations.
With this release we have added callbacks in the builder daemon for before and
after source checkout: ``preSCMCheckout`` and ``postSCMCheckout``.

Extended allowed_scms format

| PR: https://pagure.io/koji/pull-request/421

The allowed_scms option now accepts entries like:



to explicitly block a host:repository pattern.

See also: :ref:`scm-config`

System changes

mod_auth_gssapi required

| PR: https://pagure.io/koji/pull-request/444

On modern platforms, both koji-hub and koji-web now require
mod_auth_gssapi instead of mod_auth_kerb.

Longer tag names

| PR: https://pagure.io/koji/pull-request/388
| Issue: https://pagure.io/koji/issue/369

Previously, tag names were limited to 50 characters. They are now limited
to 256 characters.