# changelog

author: Pavel Raiskup <praiskup@redhat.com> - 4.1-1
changelog:
  - new `--include` feature, inspired by `help2man --include`
  - allow overriding build date with SOURCE_DATE_EPOCH environment variable
  - the AUTHORS section was changed to more standard AUTHOR


author: Pavel Raiskup <praiskup@redhat.com> - 4.3-1
changelog:
  - new upstream release, tomli dep instead of toml
    https://github.com/praiskup/argparse-manpage/releases/tag/v4.3


author: Pavel Raiskup <praiskup@redhat.com> - 4.4-1
changelog:
  - new upstream release: https://github.com/praiskup/argparse-manpage/releases/tag/v4.4
  - license tag in SPDX format


author: Parag Nemade <pnemade AT fedoraproject DOT org> - 20040424-30
changelog:
  - Resolves:rhbz#2218586 - Add deprecated() as aspell package is deprecated from F39
  - Migrate to SPDX license expression


author: Pierre-Yves Chibon <pingou@pingoured.fr> - 0.1.1-1
changelog:
  - Update to 0.1.1
  - Adjust Source0 to point to /archive/v<version>/hirte-<version>.tar.gz
  - Adjust the location of dbus-1/system.d/org.containers.hirte.conf and
    bus-1/system.d/org.containers.hirte.Agent.conf so they are in _datadir
  - Add the hirte-ctl subpackage (which provides hirtectl for convenience)


author: Troy Dawson <tdawson@redhat.com> - 0.7.1-3
changelog:
  - Fix determine_active_y_version bug
  - Better user output when determine_active_y_version fails
  - Skip rhel-target when doing scratch builds


author: Troy Dawson <tdawson@redhat.com> - 0.7.4-1
changelog:
  - Check package spelling (CS-767)
  - Add StreamLookasideCache specific get_download_url method
  - Exit with message if unable to look for file


author: Troy Dawson <tdawson@redhat.com> - 0.8.0-1
changelog:
  - Update stabilization phase detection (CS-1726)
  - Correctly clone tests/* (CS-1725)
  - Added current-state option (CS-1551)
  - Fix exit codes and error messages (Issue: 81)


author: Than Ngo <than@redhat.com> - 114.0.5735.133-1
changelog:
  - update to 114.0.5735.133 
  - Enable AllowQt feature flag
  - Fix Qt deps
  - Fix Qt logical scale factor


author: Miroslav Suchý <msuchy@redhat.com> 1.82-1
changelog:
  - move symlink of fedora-rawhide to fedora-39
  - add openEuler new key
  - update copr keys
  - add fedora 40 gpg key


author: Miroslav Suchý <msuchy@redhat.com> 1.84-1
changelog:
  - add tumbleweed key
  - Added RPM Fusion keys for Fedora 39.
  - update copr keys
  - add elastic gpg key


author: Miroslav Suchý <msuchy@redhat.com> 1.86-1
changelog:
  - update copr keys
  - Add Jenkins 2023
  - Add keys for Bacula & Baculum
  - Add keys for Google Cloud
  - Add VeraCrypt keys
  - add Element keys


author: Miroslav Suchý <msuchy@redhat.com> 1.88-1
changelog:
  - update copr keys
  - add per distro/version link to proper key for remi
  - update brave keys
  - add Docker key
  - add mullvad key


author: Benjamin A. Beasley <code@musicinmybrain.net> - 0.1.0-10
changelog:
  - Update to 2e2893c
  - Added replace.hpp
  - Now throwing exception in case of stack underflow
  - Updated serialization support
  - More use of auto
  - Use cend()
  - More UTF-32 support
  - Added stream_num.hpp
  - Fixed #include


author: Benjamin A. Beasley <code@musicinmybrain.net> - 0.1.0-12
changelog:
  - Update to 5bd3180
  - Changed from std::size_t to uint16_t for ease of use
  - Added missing #include and functions
  - regex macro BOL and EOL fixes
  - Added exit state syntax check for missing right chevron


author: Dodji Seketeli <dodji@redhat.com> - 2.0-1
changelog:
  - Update to upstream 2.0 tarball
  - Change License to ASL 2.0 to comply with the upstream license change.


author: Dodji Seketeli <dodji@redhat.com> - 2.3-1
changelog:
  - Update to upstream 2.3 release
  - Don't do "dos2unix doc/manuals/html/_static/jquery.js"
    The file doc/manuals/html/_static/jquery.js is no more.
    Hence, don't BuildRequires: dos2unix anymore.
  - The libaigail binary is now libabigail.so.2.0.0.


author: Remi Collet <remi@remirepo.net> - 1.5.1-1
changelog:
  - update to 1.5.1
  - open https://jira.mongodb.org/browse/MONGOCRYPT-451 build with shared libbson
  - open https://jira.mongodb.org/browse/MONGOCRYPT-460 ABI/API breakage


author: Remi Collet <remi@remirepo.net> - 0.8.4-1
changelog:
  - initial package
  - open https://github.com/rnpgp/sexp/issues/32 build as shared
  - open https://github.com/rnpgp/sexp/issues/33 clarify license


author: Frantisek Sumsal <frantisek@sumsal.cz> - 1.2.0-7
changelog:
  - Initial EPEL 9 build for BZ#2029481
  - Temporarily skip building docs due to work around BZ#2031879


author: Neal Gompa <ngompa@fedoraproject.org> - 7.12.0-4
changelog:
  - Build the ffmpeg and xine plugins in the main package
  - Rename freeworld to ndi subpackage since it has only ndi plugin


author: Mattias Ellert <mattias.ellert@physics.uu.se> - 5.0.1-1
changelog:
  - Update to version 5.0.1
  - Drop patch oidc-agent-webkit.patch (previously backported
  - Drop patch oidc-agent.patch (accepted upstram)


author: Packit <hello@packit.dev> - 0.74.0-1
changelog:
  - Allow configuring tmt tests with fmf root outside of git root. (#1936)
  - Removed adding the "Signed-off-by" tag to commits created by Packit. (#1934)
  - Packit's source_git functionality installs/loads the `_packitpatch` script in a more reliable manner that doesn't rely on deprecated setuptools functionality. (#1926)


author: Packit <hello@packit.dev> - 0.75.0-1
changelog:
  - Detection of `%autorelease` usage in dist-git spec file during `propose-downstream` and `pull-from-upstream` has been improved and Packit will always preserve it. (#1949)
  - Changed build tool to hatchling and moved metadata to `pyproject.toml`. (PEP621) (#1913)
  - Respect `upstream_ref` for tags that start with "a", "b", "c", "e", "n", "r", "s". This was caused by an issue with a `branches` prefix being treated as a set of letters to remove. (#1943)
  - Reset `Release` field in dist-git spec file to `1` when the version in upstream spec file is not up-to-date with the release that triggered `propose_downstream`. (#1940)
  - Correctly catch the logs, if any of the user actions fail during the propose-downstream. (#1939)
  - `packit source-git` related commands can skip dist-git repos, where the git trailer is not found, when looking for the right dist-git dir where to work. (#1938)
  - More monorepo related fixes. (#1946, #1947, #1948)


author: Packit <hello@packit.dev> - 0.76.0-1
changelog:
  - Unsuccessful Image Builder requests now provide error details so you can fix the Image configuration. (#1981)
  - Copr projects created by Packit will not follow the Fedora branching from now on.
    This decision has been made to lower the load on Copr from the temporary Copr projects created, mainly, for the PR builds.
    If you are releasing your packages to Copr, please use the new setting `follow_fedora_branching`.
    Already existing projects are not affected by this change and it is also not enforced with the custom Copr repositories. (#1970)


author: Packit <hello@packit.dev> - 0.77.0-1
changelog:
  - Packit now includes dist-git branch in the title of the PRs for `propose-downstream` and `pull-from-upstream`. (#1996)
  - We have fixed an issue with `files_to_sync` filters not being applied properly. (#1977)


author: Packit <hello@packit.dev> - 0.78.1-1
changelog:
  - Temporarily disabled test dependencies on Fedora Rawhide because of missing `python3-deepdiff`. (#2008)


author: Packit <hello@packit.dev> - 0.78.2-1
changelog:
  - Packit's license in RPM specfile is now confirmed to be SPDX compatible. (#2026)
  - `source-git init --ignore-missing-autosetup` help was improved to be less confusing. (#2016) (#2017)


author: Packit <hello@packit.dev> - 0.79.0-1
changelog:
  - 2 new configuration options for filtering when getting latest upstream release tag were introduced: `upstream_tag_include` and `upstream_tag_exclude`. They should contain a Python regex that can be used as an argument in `re.match`. (#2030)


author: Packit <hello@packit.dev> - 0.79.1-1
changelog:
  - We have fixed a bug in getting allowed GPG keys when syncing the release for projects with Packit config
    in monorepo format in dist-git. (#2037)


author: Packit <hello@packit.dev> - 0.80.0-1
changelog:
  - Packit CLI now provides a new command `pull-from-upstream`, offering the same functionality as `propose-downstream` but suited for usage from the dist-git repository with Packit configuration placed there. This was primarily added to help reproduce the behaviour of the service's [pull_from_upstream job](https://packit.dev/docs/configuration/downstream/pull_from_upstream). (#2063)
  - Packit now exposes `PACKIT_PACKAGE_NAME`, `PACKIT_UPSTREAM_PACKAGE_NAME` and `PACKIT_DOWNSTREAM_PACKAGE_NAME` environment variables to all actions. (#2061)
  - We have fixed a bug in `packit source-git init` caused by changed behaviour in a newer version of rpmbuild. (#2048)


author: Paul Howarth <paul@city-fan.org> - 3.04-13
changelog:
  - Fix decryption of ciphertext created with 'header' => 'randomiv'
    https://bugzilla.redhat.com/show_bug.cgi?id=2235322
    https://github.com/lstein/Lib-Crypt-CBC/issues/6
    https://github.com/lstein/Lib-Crypt-CBC/pull/7


author: Emmanuel Seyman <emmanuel@seyman.fr> - 1.00-39
changelog:
  - Rework dependencies
  - migrated to SPDX license
  - Replace calls to %{__perl} with /usr/bin/perl
  - Use %{make_build} and %{make_install} where appropriate


author: Benjamin A. Beasley <code@musicinmybrain.net> - 0.1.9-2
changelog:
  - Patch to explicitly distribute brukerapi.config
  - Fixes a warning from setuptools about ambiguous configuration


author: Carl George <carl@george.computer> - 20.1.0-7
changelog:
  - Convert to pyproject macros
  - Build docs with make
  - Sync eventlet worker patch with upstream, resolves rhbz#2082925


author: Mattias Ellert <mattias.ellert@physics.uu.se> - 6.28.00-1
changelog:
  - Update to 6.28.00
  - ROOT now uses llvm/clang version 13 (updated from version 9)
  - Clean up specfile by removing EPEL 7 conditionals
  - Drop dataframe, roofit and tmva-sofieparser on EPEL 8 ppc64le due to
    "pure virtual method called" errors
  - Split the root-geom sub-package into three separate sub-packages:
    root-geom, root-geom-builder and root-geom-painter
  - Enable uring support in EPEL 9 (liburing now available)
  - New sub-packages: root-geom-webviewer, root-roofit-jsoninterface,
    root-testsupport, root-tree-ntuple-utils, root-tree-webviewer, root-xroofit
  - Dropped patches: 31
  - New patches: 17
  - Updated patches: 4


author: Mattias Ellert <mattias.ellert@physics.uu.se> - 6.28.04-1
changelog:
  - Update to 6.28.04
  - Drop patch root-RF-Rewrite-RooProdPdf.TestGetPartIntList-unit-test.patch
    (previously backported)
  - Enable Apache Arrow support (64 bit architectures only)


author: Mattias Ellert <mattias.ellert@physics.uu.se> - 6.28.04-3
changelog:
  - Fix build on Fedora 39+ where glibc has strlcpy and strlcat
  - Enable build of root-gui-qt6webdisplay sub-package if Qt6 is available


author: Mattias Ellert <mattias.ellert@physics.uu.se> - 6.28.06-1
changelog:
  - Update to 6.28.06
  - Drop patches root-testRooAbsL-test-compares-two-doubles-and-fails.patch and
    root-strlcpy.patch (fixed upstream)


author: Benjamin A. Beasley <code@musicinmybrain.net> - 0.1.7-1
changelog:
  - Update to 0.1.7 (close RHBZ#2179363) and use SPDX
  - Port to pyproject-rpm-macros
  - General spec-file modernization
  - Convert License field to SPDX


author: Packit <hello@packit.dev> - 0.40.0-1
changelog:
  - Using the method `users_with_write_access` you can generate the set of users that have write access to the project and the method `has_write_access(user)` you can find out if the user has write access to the project. (#742)


author: Packit <hello@packit.dev> - 0.41.0-1
changelog:
  - `CommitComment.comment` has been deprecated in favour of `CommitComment.body` to make the naming consistent across objects. (#748)
  - ogr now requires Python 3.9 or later. (#746)


author: Packit <hello@packit.dev> - 0.42.0-1
changelog:
  - A bug in ogr resulting in returning only first page of pull requests for Pagure has been fixed. (#761)
  - ogr now raises `GitForgeInternalError` rather than `PagureAPIException` when getting 50x response from the Pagure API. (#762)


author: Packit <hello@packit.dev> - 0.43.0-1
changelog:
  - Fixes an issue with project->service mapping where the service with an url not containing the service type wasn't matched. (#771)


author: Packit <hello@packit.dev> - 0.44.0-1
changelog:
  - OGR now understands a few community-hosted GitLab instances that could not be determined automatically from the hostname. Thanks to that, you don't need to hardcode these instances to be mapped correctly. (#775)


author: Packit <hello@packit.dev> - 0.46.0-1
changelog:
  - We have fixed a bug in `get_fork` method for Pagure about checking the usernames for a match when going through existing forks. (#800)


author: Steve Cossette <farchord@gmail.com> - 2.8.5-2
changelog:
  - Removed a BuildRequire for epel9 (for Python tests, as Django on epel9 is
    too old), See https://src.fedoraproject.org/rpms/python-pyrate-
    limiter/pull-request/1


author: Lukáš Zachar <lzachar@redhat.com> - 1.19.0-1
changelog:
  - Protect args in rsync call
  - Set tree root for the default plan tree as well
  - Properly set the `tmt` script shebang on `rhel-8`
  - Use image exists to check for container image
  - Updates docs with example on `adjust` & `prepare+`
  - Fix test duration enforcement
  - Skip missing debuginfo packages in `recommend`
  - Explicitly document extending the plan environment
  - Fix ownership of a tmp directory propagated to container
  - Support fetching remote repo for `shell` discover
  - Fix default `framework`, remove old execution methods
  - Add support for Artemis v0.0.46 upcoming release
  - Handle an fmf fetch error in remote plan clone
  - Do not truncate `RunError` output in verbose mode
  - Warn user about data erasing after prepare step
  - Formalize `data` package passed to the `Result` class
  - Change order of plugin and guest classes in files
  - Add `compatible` as a new hardware specification key
  - Add `tpm` as a new hardware specification key
  - Move the hardware specification into a separate page
  - Improve fmf-id processing
  - Add test for TTY state in test environment
  - Login after each test using the `--test` parameter
  - Mention version where important features were added
  - Handle dist-git-sources for gitlab
  - Fix getting CentOS via --how virtual
  - Capture uncaught exceptions when using testcloud
  - Update the overview of essential classes
  - When following command line --how, do not iterate over step data
  - Convert utils' Run unit tests to class-less tests
  - Enable variable expansion for dynamic references
  - Support beaker libraries as recommended packages
  - Add `SpecBasedContainer.to_minimal_spec()` method (#1637)
  - Enable context based plan parametrization
  - Coverage for tests defined under `discover.shell`
  - Fix `/tests/run/shell` access permission problem
  - Add step data classes for provisioning and report
  - Adjust support for the dynamic `ref` evaluation
  - Add support for dynamic `ref` evaluation
  - Add a test for fmf id parsing and normalization
  - Fix NO_COLOR not being honored by executed command output
  - Moves common command options into one place
  - Log full chain of exceptions, not just the first cause
  - Drop deprecated PluginIndex
  - Add message to failure tags in junit report
  - Update the pip installation plan
  - Remove pointless reimport of tmt.base in discover steps
  - Do not use f-string as a docstring
  - Fix use of variable before assignment in `Plan.go`
  - Fix variable redefinition in `discover/shell.py`
  - Fix guest distro detection, do not throw results away
  - Fix a typo in `cpu.sockets` hardware requirement
  - Make links relative for report html
  - Review all uses of `type: ignore` and link relevant issues
  - Enhance ClickOptionDecorator type to announce identity
  - Update `/tests/execute/upgrade/override` duration
  - Review all uses of `Any` and link relevant issues
  - Annotate all `cast()` calls with respective issues
  - Move the `Result` class into a separate file
  - Unblock mypy's follow-import setting
  - Use set comprehension instead of list-in-set sequence
  - Use `enumerate()` instead of `range(len())`
  - Use dict comprehension instead of tuple-in-list-in-dict
  - Replace two more list comprehensions with generators
  - Replace GeneralError's "origin" with Python's "raise from"
  - Fix normalization of the `Plan.context` key
  - Adds a missing import to polarion plugin
  - Update all linters to their most recent versions
  - Define CPU HW components with more granularity
  - Adjust the support for importing remote plans
  - Add import plan feature and tests
  - Add type annotations to `base.py`
  - Fix test depending on ordering of elements in junit XML
  - Adds type annotations to `tmt` itself
  - Remove custom yet same implementation of step's show()
  - Make sure `repo_copy` is gone before `make srpm`


author: Lukáš Zachar <lzachar@redhat.com> - 1.20.0-1
changelog:
  - Do not prune `html` and `junit` reports
  - Skip extending fmf context if cli context missing
  - Connect needs is_ready property as well
  - Cover setup.py with pre-commit Python checks
  - Do not leak "private" fields into export
  - Set guest hostname in testcloud provision
  - Capture provision error when login is used
  - Support `TMT_WORKDIR_ROOT` environment variable
  - Support step data definitions carrying CLI options
  - Adds flake8 coverage for bin/ directory
  - Prune irrelevant files during the `finish` step
  - Add junit plugin schema
  - Support to import empty key from Makefile
  - Deleting unsed and duplicite part of finish step
  - Support absolute paths in HTML reports
  - Capture exceptions when getting `image_url`
  - Enable verbose output for `provision` & `prepare`
  - Add support for Artemis v0.0.47 upcoming release
  - Remove unused variables
  - Initial support for passing ssh options from cli
  - Update specification of the `where` multihost key
  - Add a simple test demonstrating the upgrade testing
  - Use custom subclass of click.Context for better annotations
  - Extend the `duration` for tests using containers
  - Change common class constructors to use keyword arguments only
  - Make packit build with the next release.dev version
  - Add basic test coverage for `tmt story export`
  - Fix export of the story `priority` field
  - Read source from correct directory if ref is used


author: Lukáš Zachar <lzachar@redhat.com> - 1.21.0-1
changelog:
  - Fix tmt-reboot without custom command
  - Fix test /discover/libraries
  - Add serialization callbacks to data class fields
  - Use own private key for `provision.virtual`
  - Adds a template-backed export plugin
  - Polarion export fix component upload bug and upload id first
  - Convert story ReST export to use a Jinja2 template
  - Convert export-related code to plugins per format
  - Do not clone the whole remote plan in dry mode
  - Hardcode tmt git URL so test won't fail for PRs
  - Add py.typed marker for 3rd party type annotations
  - Fixes isort 5.10.1 installation issue
  - Improve logging by `tmt.utils.wait()`
  - Check packages are installed via debuginfo-install
  - Always ignore failures for recommended packages
  - Merge report plugins options into step data fields
  - Dynamically find the current Fedora release
  - Suggest using a pull request checklist template
  - Include a simple Python code among the examples
  - Apply normalization callback when updating data with CLI input
  - Bump pre-commit linters - Flake8, Mypy, JSON schema, YAML lint & pygrep
  - Use base implementation of provision plugin requirements
  - Relay 'interactive' value for podman call
  - Update Fedora versions in `upgrade` tests
  - Apply `ShellScript` for the custom reboot command
  - Update the `shell` discover specification
  - Enable to sync git repo to SUT in `shell` discover
  - Increase the default `utils.format()` indent a bit
  - Define pull request Copr build job in Packit config
  - Decouple logging from objects and base classes
  - Enable `url` and `ref` as `shell` discover options
  - Export `TMT_TREE` in other steps as well
  - Add a new key `system` to the `hardware` spec
  - Remove default for the dynamic `ref` evaluation
  - Schema update and test for order in discover step
  - Merge report plugins options into step data fields
  - Add a test for hardware schema coverage
  - Better type annotations of prepare/install scripts
  - Move `jinja2` require to the main `tmt` package
  - Define the new context dimension `initiator`
  - Respect `TMT_WORKDIR_ROOT` variable in `testcloud`
  - Annotate commands, command line elements and shell scripts
  - Adjust the `reportportal` plugin implementation
  - Implement the `reportportal` report plugin
  - Require the latest `testcloud` package
  - Define `srpm_build_deps` in the packit config
  - Include the new web link in verbose `show` mode
  - Add a clickable web link to test to polarion export
  - Enhance `Links` to allow checking for any links at all
  - Drop various guest `wake()` methods in favor of parent class
  - Catch `SystemExit` during module discovery


author: Petr Šplíchal <psplicha@redhat.com> - 1.22.0-1
changelog:
  - Change help text of the `tmt --root` option
  - Add support for `results.json` in custom results
  - Proper support for the test `duration` format
  - Prepend '/' to custom test result name if missing
  - Document necessary packages for pip install on Ubuntu
  - Tag cloud resources to `tmt` in Testing Farm
  - Display guest multihost name even in dry run (#1982)
  - Pass the `arch` option to the Beaker provider
  - Use `job-id` instead of `guestname` in Beaker class
  - Adjust the fix for the default branch handling
  - Add support to get `ref` under the git worktree
  - Fix dry mode handling when running a remote plan
  - Enable the external `polarion` plugin tests
  - Extract "run a command" functionality into a stand-alone helper
  - Increase minimal severity of `ShellCheck` defects
  - Display guest full name in `display` plugin report
  - Push using `sudo rsync` when necessary
  - Avoid warning from installing tmt as pre-commit
  - Add test checking repeated test execution results
  - Freeze the `yq` version to fix `el8` installation
  - Update the `CODEOWNERS` file with more granularity
  - Document current workaround for running scripts
  - Install `beakerlib` before the `ShellCheck`
  - Rename `Guest.full_name` to `Guest.multihost_name`
  - Display guest full name in `html` plugin report
  - Add test for template-based export plugin
  - Add `kickstart` to the `artemis` provision plugin
  - Extract just tar files in dist-git-source
  - Add missing fields to custom results test
  - Add shell linter `Differential ShellCheck`
  - Always try to run dhclient in cloud-init in virtual provision
  - Fix polarion report pruning and add or fix arguments
  - Run `chcon` only if SELinux fs supported
  - Require `beaker` provision in `tmt-all`
  - Adjust the new `mrack` plugin spec, test and plan
  - Add `beaker` provision plugin using `mrack`
  - Adjust pip install to always upgrade to the latest
  - Move `testcloud` url guessing logic out of `tmt`
  - Hotfix Ubuntu with virtual provision
  - Detect correct category when export to nitrate
  - Add an entrypoint for interactive `tmt` sessions
  - Fix internal handling of the `where` key
  - Move logging labels to the beginning of lines
  - Refactor CLI error reporting to improve readability
  - Remove no longer needed cast around our custom Click context
  - Display guest full name when showing its details
  - Add `kickstart` section as a new specification key
  - Add more controls for output colorization
  - Rephrase `results.yaml` documentation and examples
  - Fix `get_bootstrap_logger` name and docstring typo
  - Expose guest info in results
  - Enable `root` login and disable default `core` for rhcos
  - Sanitize plan/test/story names before filtering
  - Set default user `core` for rhcos in testcloud
  - Remove no longer used "err" parameter of logging methods
  - testcloud: Raise default limits
  - Update log key content of results.yaml examples (#1834)
  - Include guest name in execute phase data paths
  - Adds "bootstrap logger" for logging before CLI options are recognized (#1839)
  - Export `TMT_TEST_NAME` and `TMT_TEST_METADATA` (#1888)
  - List supported operators in hardware requirement docs (#1867)
  - Build tmt usable in inner guests for tests/full
  - Target test-complement for tests/full
  - Tag tests which are affected by how=full
  - Use PROVISION_METHODS in tests
  - Report individual test results in tests/full
  - Use Require* classes for collection & installation of plugin requirements (#1766)
  - Disable tracebacks if default branch is not found
  - Assign a data path and serial number to each test in discover (#1876)
  - Convert log path for results:custom
  - Allow report result for itself in results:custom
  - Support to import Makefile having '\\\n'
  - Require `pylero` for the `polarion` subpackage
  - Fix forgotten guest when Artemis provisioning times out
  - Turn `tests.yaml` into a list of tests
  - Simplify the `Result` class implementation
  - Use `Path` instead of `os.path` in export code
  - Use `Path` when working with logfile path
  - Fix use of old `os.path.symlink()` in discover/shell
  - Add /root/.local/bin to PATH on Centos Stream 8 in CI
  - Install jq/yq for more readable tests in tmt test suite
  - Fix Common class ignoring other branches of multiple inheritance tree
  - Use Path instead of os.path in prepare/install plugin
  - Convert path-like strings to `pathlib.Path` objects
  - Change `Plugin.go()` to accept logger and extra environment
  - Artemis API version may contain multiple integers
  - Add logging `labels` used for prefixing messages
  - Adds "full name" guest property for multihost logging


author: Lukáš Zachar <lzachar@redhat.com> - 1.23.0-1
changelog:
  - Add `Artemis` to the `provision` documentation
  - Add artemis's user defined watchdog specification
  - Add support for require of files and directories
  - Expose test serial number as an environment variable
  - Print only failed objects when linting in hook
  - Refactored metadata linting
  - Request newer os image and python version for docs
  - Explore all available plugins only once
  - Add test start/end timestamps into results
  - Implement `deprecated` for obsoleted options
  - Unify results examples in test and plan specification
  - Convert gitlab private namespace into dist-git url
  - Shorter Nitrate summary name
  - Correct the path of Ansible playbook
  - Refactor logging during plugin discovery, using tmt's logging
  - Improve names and docs around CLI context in Common classes
  - Fix ruamel.yaml type waivers that mypy sometimes ignores
  - Drop some no longer valid TODO comments
  - Replace '--t' by '-t' when creating a new plan with template
  - Add a new cpu property `flag` to the hardware spec
  - Fix duplicate export for Polarion hyperlinks
  - Option to list locally cached images for testcloud
  - Log out testcloud version in virtual provision
  - Use yq instead of grep when testing YAML content
  - Don't use specific addresses in virtual provision
  - Polish workdir pruning - pathlib transition & logging
  - Support for fuzzy matching subcommand
  - Add new link relation `test-script` definition
  - Remove `group` from the `multihost` specification
  - Move "show exception" code to utils
  - Add missing support for 0.0.55 and 0.0.48 API
  - Add type annotations to tmt.steps.STEPS/ACTIONS
  - Support logging "topics" to allow lower unnecessary verbosity
  - Add support for right-padding of logging labels
  - Move tools config to `pyproject.toml`, add Ruff
  - Example to parametrize test selection via envars
  - Merge run_command() and _run_command() into Command.run()
  - Install beakerlib into images used in test/full
  - Don't run `ShellCheck` on tests & decrease severity
  - Support multiline strings for option help texts
  - Fix tests run only in full testsuite


author: Petr Šplíchal <psplicha@redhat.com> - 1.24.0-1
changelog:
  - Do not display guest facts when showing a plan
  - Add new guide/summary for multihost testing
  - Define a "plugin registry" class
  - Hide `facts` in the `virtual` provision plugin
  - Cache resolved linters
  - Improve documentation of lint checks (#2089)
  - A custom wrapper for options instead of click.option()
  - Identify incorrect subcommand after a correct one
  - Remove one extra space between @ and decorator name
  - Assign envvars to Polarion report arguments
  - Expose "key address" to normalization callbacks (#1869)
  - Move export of special test/plan/story fields to their respective classes
  - Expose guest topology to tests and scripts (#2072)
  - Enable building downstream release using Packit
  - Add sections for environment variable groups
  - Add default envvar to plugin options
  - Load env TMT_WORKDIR_ROOT when running tmt status (#2087)
  - Opportunistically use "selectable" entry_points.
  - Explicitly convert tmpdir to str in test_utils.py.
  - Move pytest.ini contents to pyproject.toml.
  - Rename Require* classes to Dependency* (#2099)
  - Expose fmf ID of tests in results
  - Use the `tmt-lint` pre-commit hook
  - Turn finish step implementation to queue-based one (#2110)
  - Convert base classes to data classes (#2080)
  - Crashed prepare and execute steps propagate all causes
  - Support exceptions with multiple causes
  - Make "needs sudo" a guest fact (#2096)
  - Test data path must use safe guest/test names
  - Support for multi case import from Polarion and Polarion as only source (#2084)
  - Fix search function in docs
  - Make tmt test wrapper name unique to avoid race conditions
  - Change link-polarion argument default to false
  - Add export plugin for JSON (#2058)
  - Handle el6 as a legacy os too in virtual provision
  - Hint beakerlib is old when result parsing fails
  - Revert "Fix dry mode handling when running a remote plan"
  - Set a new dict instance to the Plan class
  - Replaces "common" object with logger in method hint logging
  - Parallelize prepare and execute steps
  - Formalizing guest "facts" storage
  - Support urllib3 2.x and its allowed_methods/method_whitelist
  - Require setuptools


author: Petr Šplíchal <psplicha@redhat.com> - 1.24.1-1
changelog:
  - Revert the `Source0` url to the original value
  - Use correct url for the release archive, fix docs


author: Lukáš Zachar <lzachar@redhat.com> - 1.25.0
changelog:
  - Test for pruning needs VM
  - Internal anonymous git:// access is deprecated
  - Beakerlibs pruning and merge
  - Add dynamic ref evaluation support to plan import
  - Replace self.opt() when looking for debug/verbose/quiet setting
  - Reimplement the `ReportPortal` plugin using API
  - Make `Step` class own export of step data (#2040)
  - Make relevancy/coverage linters to not re-read fmf files
  - Add a single `tmpdir` fixture for all Python versions
  - Replace named tuples with data classes
  - Replace `/` in safe name, and fix prepare step to use safe names
  - Do not export fmf id's ref when it's the default branch
  - Move the sync libraries into a separate section
  - Allow running next plan in queue when one fails to complete
  - Fix a too strict check for the detected library
  - Convert provision plugins' step data to our field implementation
  - Convert execute plugins to `tmt.utils.field()` for options
  - Cache that beakerlib/library repo is missing
  - Use code-block directive for examples and code blocks
  - Add the `show()` method for guest data packages
  - Turn fmf context into a fancy dict
  - Enable ruff checks for mutable dataclass field defaults
  - Create option metavar from listed choices
  - Document how to modify imported plans
  - Recommend needs a different option for `dnf5`
  - Ask ruff to show what it fixed
  - Bumps supported Artemis API to 0.0.58
  - Use `--version` to gather the package_manager fact
  - Use f-strings where possible
  - Bump pre-commit hooks to latest version
  - Fix ruff RUF010: Use f-strings conversion flags
  - Fix py<38 mypy type:ignore being on wrong line
  - Move isort to ruff
  - Enable passing Pylint checks
  - Fix ruff RSE102: Unnecessary parentheses on exception
  - Fix ruff PIE: flake8-pie errors
  - Remove duplicates from ruff rules selection
  - Fix ruff SIM: flake8-simplify errors
  - Fix ruff RET: flake8-return errors
  - Fix ruff PT: flake8-pytest-style errors
  - Fix ruff UP: pyupgrade errors
  - Fix ruff N: pep8-naming errors
  - Fix ruff RUF005: collection-literal-concatenation
  - Fix ruff B: flake8-bugbear errors
  - Fix flake8 C405: unnecessary literal set
  - Fix flake8 C401: unnecessary generator set
  - Fix flake8 C416: unnecessary comprehension
  - Fix flake8 C408: unnecessary collection calls
  - Polarion report set to UTC timezone
  - Add `Organize Data` as a new tmt guide chapter
  - Fix emptiness check of /var/tmp/tmt in /tests/status/base
  - Allow modification of imported plans
  - Raise error if malformed test metadata is given
  - Ensure test with empty custom results ends as an ERROR
  - Fix /tests/status/base when /var/tmp/tmt is empty
  - Remove `pytest.ini` from the `Makefile` targets
  - Bad source path for local libraries file require
  - Remove useless loop.cycle() from the HTML report
  - Implement basic filtering for the HTML report
  - Cleanup of "logging function" types
  - Do not patch verbosity in discover for --fmf-id
  - Drop enum from HW hypervisor and boot method constraints
  - Fix enforcement of workdir root in full workdir root test
  - Narrow type of file & library dependencies
  - Make web-link test play nicely with custom SSH host config
  - Use serialization callbacks for last script fields
  - Save click context in click context object
  - Add the `envvar` argument to `utils.field()`
  - Improve structure of the packit config a bit
  - Update release instructions with simplified steps
  - Sync changelog when creating downstream release


author: Lukáš Zachar <lzachar@redhat.com> - 1.26.0
changelog:
  - Do not throw an exception on missing mrack.log
  - Allow injecting credentials for git clone
  - Exception in web_link() when node root is missing
  - Rewrite url in git_clone
  - Add support for rendering error tracebacks
  - ReST export plugin should accept --template option
  - Add `role` to the Beaker provision plugin schema
  - Fix test checking custom destination for libraries
  - Create plans to cover individual step features (#2216)
  - Add cache_property for things that are generated but not often
  - Simplify public git conversion with a declarative list
  - Spec-based container becomes generic over input/output specs
  - Clean up logging in `tmt.utils.create_directory()`
  - Move test framework code into distinct framework classes
  - Add template option to polarion report
  - Group discover/fmf options, improve wording a bit
  - Record tmt command line in tmt log
  - Add note about dynamic ref to the plan import spec
  - Use the `Deprecated` class for deprecated options
  - Remove `python3-mrack-beaker` from `BuildRequires`
  - Switch discover/fmf to our field() implementation
  - Lock the `click` version < 8.1.4
  - Refine examples of plans > discover > fmf
  - Override packit actions for `propose_downstream`


author: Petr Šplíchal <psplicha@redhat.com> - 1.27.0-1
changelog:
  - Use `testcloud` domain API v2
  - Bootstrap before/after test checks (#2210)
  - Separate value formatting from key/value nature of tmt.utils.format()
  - Render `link` fields in tmt stories and specs
  - Render default friendly command for guest execution
  - Use consistently plural/singular forms in docs
  - Make file/fmf dependencies hashable
  - Rewrite git url for discover fmf: modified-only
  - Refactor Artemis and Beaker provision tests to make room for HW
  - Adjust imported plan to let its adjust rules make changes
  - Get Ansible logging on par with general command execution
  - Support Click versions newer than 8.1.4
  - Teach tmt test create to link relevant issues (#2273)
  - Add story describing CLI for multiple phases
  - When rendering exception, indetation was dropping empty lines
  - Expose tmt version as an environment variable
  - Fix handling of integers and hostname in Beaker plugin
  - Fix bug where polarion component is misinterpreted as list
  - Refactor recording of CLI subcommand invocations (#2188)
  - Put `--help` at the end of the CLI in the step usage
  - Extend the expected `pip install` fail to `f-39`
  - Make `tmt init` add .fmf directory into git index
  - Fix guest data show() and how it displays hardware requirements
  - Add lint check for matching guests, roles and where keys
  - Add -e/--environment/--environment-files to plan show/export
  - No more need to install `pre-commit` using `pip`
  - Ensure that step phases have unique names
  - Verbose regular expression for linter descriptions
  - Initial draft of hardware requirement helpers
  - Simplify the reportportal plugin test using `yq`
  - Add dynamic ref support to library type dependency
  - Remove `epel-8` and `python-3.6` specifics
  - Use the latest `sphinx-rtd-theme` for docs building
  - Full `pip install` expected to fail on `Rawhide`
  - Add missing name attribute to report plugins schema
  - Add missing arguments in polarion report schema
  - Extend sufficiently the full test suite duration
  - Add support for log types to Artemis plugin
  - Fix `tmt run --follow`, add test coverage for it
  - Remove the temporary hotfix for deep libraries


