tmt-1.25.0-1.el8 > 6 6_6 3!y덏%!E/֡d- !E/֡z iAz,8'ĢFg1=V&V7ճڽ\4t28EtQ%|?R-L+l`e.+i:;Wd& ͮ;D5@1 homgj{'C #5RU`|,&.BM'((zaǶh}({:2 q*6q.c{Ӵg_ͤjj0qhGX#k{;. ($p) >:1gTݲ3eqA cww%\Eј )CZ׎8iqiC m6C?gk.B2hNܜ푴@r[r6-KqrGdA\HV`Xz;H8 *mL`AaT x;Ϧ#Zh"uht]> @-!KP%Rt 'mc:B8tEKK3Kf2da6df8f4c7dc8f44e7d63c3a3f677670f34f54c88418f9783a6f947ac8c44c96cbfbc18c84e0fed3721728c17bf0ff7c66bffd(3!y덏%!E/֡d- !E/֡8$̲` B.=9%)Cv@iz/3Ew:^hi=KX==nr!q=1Fvnr:~QJOx^TЉdT #q$92.W2_3L A)G -0422JU[TN9lwn]/<1EӮ_tCԱZpCq >FWa g,{%+8~?ːHyEyК#%l&`?xpJT0{JvB{]k> dApvdg!PKQaq.=q O"bCQQ6Gj;05`yƧ27 #ȿ oWj^wK!JẉҬ`keևbRyY. a "ܗ 'Vax^/Lb% ^ p YCρ{F>p=zD?z4d   (&* 9Edjt     !1##%% & & (&8&29'2:02G\LH^`I`tX`Ya\a]c$^g2bndpLepQfpTlpVtppurvtwuxwyyyyyyz0Ctmt1.25.01.el8Test Management ToolThe tmt Python module and command line tool implement the test metadata specification (L1 and L2) and allows easy test execution. This package contains the command line tool.d-buildvm-x86-21.iad2.fedoraproject.orgvFedora ProjectFedora ProjectMITFedora ProjectUnspecifiedhttps://github.com/teemtee/tmtlinuxnoarch+8AK*i[3zXWa g=.   o ]A큤AAA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤AAAAAA큤AA큤A큤AA큤A큤A큤A큤bd-d-dyd!dd!d!d!d!d!d!bbd!bbd!bbd!_bb_d!bbd!d!bbd!d!bb^d!d!^^d!^^Jbb^Jd!d!d!d!d!d!d!bbd!d\bbd\db b b b b b d=dd=^bb^^d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!bbd!d!d!d!d!d!d!bbd!d!d!d!d!d!d!d!d!d!d!d-d!d848b1457a6367f481f3d1d40f62b421823f151bd640a19292cb77762a4986b898b066d0a2342fb314029711b6f38c0e661b9bdb2542742eaa2de3ead08028e236303b5962cfddcac4e3355295f32f96261eaaa600d21a1383fa0d02336bde8634355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8650607f97dd1b6611a37531fc426530af8eed027c38e977eddec1f27d895837cd6e618a83bd23d1ca9d6905a23393c1dd39b53f454b1212413cb6f2dd8dadcd399866e5810aaa70abae12c644d28eebdfc1de542fbaafcbd176e8d4da9d8bc27314355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd865586ff424f8e932721db3f9096fcd37411cc9ea1cc02a74b96484a9bd717cb94ad8f91fbeedbac1a37e5469b2aedea05b46d958478ce1c5aa52ce0489f394610994b7583bb094aa73cd4d5288c5a10aed64ee1b2e4421831b16e3767424aef5384355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd865337550f311acee1a25673058f092ca3e336e50926dce6fc860c1910c4973c6c44355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd865372bb294ca3f9dad6184c6b4e7616d713703f15bbe49ed615482a61f7d650d8d4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd86525401aed6b4dbdddb8636f30eb773074468f68e65444db53c81fa9ef601ad6db4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8656f1fd6f535de73342a46b2aed439df98dc7ad076eef3ccd68351181597dc17c44355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8651c6d0dd4490694fee24d51d31c0c486a5922508912f61dd317aa1f632535ce45dc3f4db8daee778b028c445463607de30e24c123b108cdfd9cbd9a86b658046f8364f8b58fa3cb4a3a9a90d7ea1f0e802be4b1dd4431fc91ae04293202cbb4b3cedea6ce5e8e71e74ca58b787fd89524696ef3417440edaea481e180169d787c40188ed9618965bc8afb1238db1f30c4d567c343abeb82a0d7fdcb65ff7441653bfd3c79cba2e294f093509e960153b8faeb41c7bb41b024b716f9cdaf474ebca4b08606cc3260877d2ae53cfa831310bbcf3d375f28bd9a7ae57919c6b6019a4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8656a6e2bf1fd01b4533b755b06cf3a3088a9d8ab738742366f3f5a0aa6044b8a554355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd86524652b271f7e21e359d87e379f573b9a12c4c467f746ee25756fb8b6a673e488a4c03d29e2eea222359d33d5472eb93828213c139d3c78865f13865a2c4254e0ef048d29d674efb8f459c5ac735a9219201ae368dbdc579254dd6bdad685ce284355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8651ba14ae3e3d556a25549680008642710939824bc28e65b3a61ffc37a64a9df284355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8653dd908d97d72237a233ada61b62c8f18b0bcf0708fe61073cbf88e17ef442c26390357f5bbd4768edfc8eaf2e6bedd3c4294266c05b7730f2ef41b198574b82724425c8dd01f33d80ea232c42c635c36d308eb578b7bfceeac85c47e133a17ee01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b65e0f1f20c5f24d7e760b052d472d41b1fc825ff681a8a88ffc2edecef5f3de4fdac3e4d8135337ec12af816a69bd2ede08a51f5f85b9bff1c0aa003e6464f2c95da129bfa16e7d1b254db205e8522bf0332d70946dd15154bfa1b80a16a3b0d0d016e506943f79fbcff0c94c03ed3465dd70c2bf74215af4e31dc4d1c9c24ea4caad50f16087d981b53963d8df315a9b9ab953607c37ee5f3615ebdca8c24de4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8656a4f418c1a333801953b1f5df1e615dc8a81411188a26b8ca4d98b59367541de09ae0860919cfd5362916c0a69d3e73fdc11617a9900ea2226f8fb03ee72d4524355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd8659c43fd10151ba0b86877e147c5db94f9302941bb093478ee28019878058eb22a2760a756273b62b5f57b85b713f95e604fcc230cfd3e61628e024c26cb147b0a5dbb0b1d2cfcbc1fafca573ea1a6f85de505c12fd880555efff272cbf5c964515ffc2ab3ec006da510f4f8407348e1fa69dd6d7a84c5b0c0f451aca895ec741814f73da665ee97ce552544cf7fec2eaa6560bd00637c97a33f5f80ce65939938b6097b600c32cfb4e4e1d2fa826d1da98ef5176f8916a7fb1d89008d969929d9e8ede0c8ba52fe12154c13d95a3e06da90689e4e36e729d1fc0546990128edd821620fa0201e229258baf7852ec04434e2091771374b7ffb820e0102e6fa766e4628f03370eb9d164be3726145e9b14c51c0173758c7b3d0d1b8552037caeed0fe7791386f3b5f7c66d1fd907d5d1dc4a421e5b7bedd09d8c94b441a0341b4fb4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd865aa3b57e61ac63eab68dc098aa3832d90abf200ffe69e49e989bf79f17e5413484355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd865b418068ea064d67280673253d5a722cdef48bc6d134d56ebfaf065cd781627b0a5508207c71acb4a4a8109d2925a5254a127bff221307d6b88a7a7ad95516cb1799d6329412c746bcd268b18c998b0d6ab77a85612a7927d9c24a782d2fbb4d164ca0c8ffa1492e4db71fde6026fef4ef0dc35804f87e8a78022cef31f232851c9229c6934cef9f8109bb5f7cbad56102fde06509d4bf17e2d829979916b5efe4355a46b19d348dc2f57c046f8ef63d4538ebb936000f3c9ee954a27460dd86569b758bc08334db55177b8333a3ab5474cba8da1bc1a4928b72b31efe4c1ecb8402bfca667bb39791ecea8965cbfeee42982f80e19b776f75cc4f63bb7f7a2c1f837a8af77786c96d68a73f5bed81d20ad1be9fa812d2498391ba7fd67ee6c6277253316223248e0b56d5b79a8d2a6af59754bd6bed885eaab3259fad1075105801d4dc99f7478db73996001f3abf7e89ddcab881197b77b3d03eb511183b053c73920f8de79cb1053ff7858e4410256f9ad1eb39713a5db214520b8f00254cbb64c295f62c4b8c11463a542d87b6a95451ec202eb619a699f337c1ae97e982c../../plans/basic.fmf../../plans/core.fmf../../plans/smoke.fmf../../plans/unit.fmf../../plans/basic.fmf../../plans/core.fmf../../plans/smoke.fmf../../plans/unit.fmf../plans/main.fmf../../plans/basic.fmf../../plans/core.fmf../../plans/smoke.fmf../../plans/unit.fmfrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottmt-1.25.0-1.el8.src.rpmtmt@    /usr/bin/python3.6git-corepython3-tmtrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rsyncsshpass1.25.0-1.el83.0.4-14.6.0-14.0-15.2-14.14.3dd@dq@d\d9@@c@cck@cD @cbc@b3@b@bobJb\@a a@aUa@`r`@`lM@`7@`4@__@_м@_t@_}_V _ @^n@^^@^x^l@^H^@^{G^x^h^S^^@]])]W]@]]@Lukáš Zachar - 1.25.0Petr Šplíchal - 1.24.1-1Petr Šplíchal - 1.24.0-1Lukáš Zachar - 1.23.0-1Petr Šplíchal - 1.22.0-1Lukáš Zachar - 1.21.0-1Lukáš Zachar - 1.20.0-1Lukáš Zachar - 1.19.0-1Petr Šplíchal - 1.18.0-1Lukáš Zachar - 1.17.0-1Lukáš Zachar - 1.16.0-1Lukáš Zachar - 1.15.0-1Petr Šplíchal - 1.14.0-1Petr Šplíchal - 1.13.0-1Petr Šplíchal - 1.12.0-1Petr Šplíchal - 1.11.0-1Lukáš Zachar - 1.10.0-1Petr Šplíchal - 1.9.0-1Lukáš Zachar - 1.8.0-1Petr Šplíchal - 1.7.0-1Petr Šplíchal - 1.6.0-1Petr Šplíchal - 1.5.0-1Petr Šplíchal - 1.4.0-1Petr Šplíchal - 1.3.1-1Petr Šplíchal - 1.3.0-1Petr Šplíchal - 1.2.1-1Petr Šplíchal - 1.2-1Petr Šplíchal - 1.1-1Petr Šplíchal - 1.0-1Petr Šplíchal - 0.21-1Petr Šplíchal - 0.20-1Petr Šplíchal - 0.19-1Petr Šplíchal - 0.18-1Petr Šplíchal - 0.17-1Petr Šplíchal - 0.16-1Petr Šplíchal - 0.15-1Petr Šplíchal - 0.14-1Petr Šplíchal - 0.13-1Petr Šplíchal - 0.12-1Petr Šplíchal - 0.11-1Petr Šplíchal - 0.10-1Petr Šplíchal - 0.9-1Petr Šplíchal - 0.8-1Petr Šplíchal - 0.7-1Petr Šplíchal - 0.6-1Petr Šplíchal - 0.5-1Petr Šplíchal - 0.4-1Petr Šplíchal - 0.3-1Petr Šplíchal - 0.2-1Petr Šplíchal - 0.1-1- Test for pruning needs VM - Internal anonymous git:// access is deprecated - Add tests and some modifications after rebases - Clone to tmp and use fmf.Tree.find instead of looping - Add clone_dirpath to Common - Fix bad usage of path and name - Fix multiple clones and inherited fmf metadata - 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- Revert the `Source0` url to the original value - Use correct url for the release archive, fix docs- 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- 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- 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- 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- 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- 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`- Fix recommended packages handling for rpm-ostree - Add EFI configuration to the `tmt-reboot` script - Fix adjust for precommit test - Fix provision for coreos image - Emit only non-default keys when constructing a test from `execute` - Add flake8 config file for easier integration with IDEs - Multiple scripts for CLI prepare -h shell - Allow mypy to cover the whole tmt.plugins and tmt.steps - Add typing for `steps/execute/upgrade.py` - Fix name & default value of polarion's upload field - Fixes enhancing of environment by local's guest implementation - Ignore plan -n when searching for upgrade path - Document & correct use of class conversion methods - Print fmf tree location when schema unit test fails - Custom results implementation - Refactors internal link handling and storage - Allow mypy to cover whole tmt.steps.prepare - Add typing for `steps/execute/internal.py` - Use workdir with safe names without special chars - Adjust support for installing remote packages - Support to install package from URL - Make sure short option '-x' is covered - Add Polarion as a source for test case import - Print path to the used ssh identity - Add typing for `steps/prepare/__init__.py` - Use generator instead of list comprehension with any/all - Fixes handling of default of --key in connect plugin - Update test data for the debuginfo install test - Add a helper for importing a member from a module - Fix plan schema to allow custom context dimensions - Allow mypy to cover whole tmt.steps.discover - Remove support for the obsoleted `detach` executor - Add typing for `steps/discover/fmf.py` - Fix importing for pylero - Allow mypy to cover whole tmt.steps.provision - Replace blank "type: ignore" with more specific waivers - Use the `SerializableContainer` for plugins' data - Enhance SerializableContainer with default key value inspection - Moves validation and normalization mixins to utils- Unify Polarion case searching - Error out if reboot timeout is exceeded - Initialize workdir thread-safe - Add support for remote playbooks in prepare - Add plan schema for errata and minute plugins - Correct rhts command names in stories file - Print escaped command suitable for manual debugging - Fix report plugin not getting arguments from fmf file - Less eager to disable nitrate case during export - Move `tag` and `tier` to common core attributes - Use `/bin/bash` instead of `/bin/sh` for execute - Reorder step and their base plugin classes - Fix prepare/multihost docs to match implementation - Teach schema validation tests to peek into other trees - Clarify motivation for creating `id` during export - Add link-polarion option and fix link searching bug - Ignore race in last-run symlink creation - Fix polarion tcmscaseid search - Force order of clean operations - Convert status/clean argument to option - Report enabled plans/tests/stories via option - Hint user if 'tmt init' creates nested root - Require `libvirt-daemon-config-network` as well - Add type annotation for /steps/prepare/install.py - Encapsulate created file within script's dataclass - Adds normalization layer to base classes based on fmf - Fixes data class used for local guest creation - Fixes Artemis guest data class link - Making tests/full more usable - Add typing for tmt/steps/provision/podman.py - Add typing for tmt/steps/provision/testcloud.py - Add typing for tmt/steps/provision/local.py - Remove unused keys parameter from wake() methods - Adds types describing tmt constructs when as stored in raw fmf data - Typing /steps/provision/connect.py - Allow raising an exception on validation errors - Inject logger object to base node classes inheritance - Fixes use of SSH keys in testcloud and connect plugins - Annotate tmt.steps.provision - Ask mypy to show error codes in its messages - Testcloud expects disk and memory to be int - Do not inherit classes from object - Use keyword-only init in base fmf-backed classes - Use decorator to register plugin methods - Demonstrate inheritance on a virtual test example - Add a simple hint how to write user messages - Add typing for `steps/finish/ansible.py` - Remove unneeded parameters for step load/save (#1428) - Normalize step data to be always stored a list internally - Display test/plan/story name in parametrized schema tests - Allow numbers and booleans to be values of environment - Give a reasonable error for old data format - Add typing for tmt/steps/finish/__init__.py - add typing for steps/discover/shell.py - Adds a fmf node validation layer to core classes (Test/Plan/Story) - Add missing keys `role` and `where` to schemas - Extend plan schema with all known step plugin schemas - Correcting rhts aliases & adding rhts opt. - Adds a generic "wait for condition" primitive - Disallow push/pull/execute if guest is unavailable - Rename "default how" step attribute to enhance its visibility - Use textwrap.dedent() to unindent docstrings- Reboot has to check for boot time - Fix path inside pre-commit test - Cut circular dependency of libraries - Update 'Develop' section of contribution docs - Precommit hooks to call tmt * lint - Schema loading helpers - Package schemas in subdirectories too - Implement reboot reconnect timeout configuration - Add missing report specifications/docs - Print result for execute -v - Correct import assumption about script - Ask mypy to check whole tmt.steps.report package - Fixing the directory name escaping in 'cd' command - Add polarion report plugin - Add schemas for plans - Write extra-nitrate as soon as possible - Retry git clone without --depth=1 if it failed - Support to lint attribute 'id' - Do not apply test command filter in upgrade - Fix export.py typing issues - Refactor location and signature of Phase's go() method - Simplify abort handling - Backwards compatibility for rstrnt-abort - Add type annotations for tmt/cli.py - Add typing for tmt/export.py - add typing for steps/discover/__init__.py - Convert guest implementations to use serializable container for load/save - Detect plugins by entry_point as well - Add typing for `steps/execute/__init__.py` - Add typing for `tmt/convert.py` - Remove duplicated dist-git-source/dist-git-type - Add typing for `steps/report/junit.py` - Add typing for `steps/report/html.py` - add typing for steps/report/display.py - Add typing for steps/report/__init__.py - tmt-file-submit is a bash script - Add type annotations for tmt/options.py - Backwards compatibility for `rstrnt-report-log` - Support conditional requires with `pip` as well - Remove duplicated short option in tmt lint - Adjust the `rstrnt-report-result` implementation - Backwards compatibility for `rstrnt-report-result` - Set the `1777` permision for `/var/tmp/tmt` - Adjust the fix for the `rpm-ostree` intallation - Fix package installation using `rpm-ostree` - Handle empty fmf file as an empty dictionary - Fix distgit testsuite after tmt packaging change- Require fresh testcloud with coreos support - Bad substitution in tmt-reboot - Ignore "certificate verify failed" error when handling retries - Cache content of each loaded environment file - Initial polarion support for test export - Fixes names of Artemis API versions - Convert FmfIdType from TypedDict to a dataclass - Add CoreOS support to the testcloud provision - Run containers with root user - Retry getting environment file - Test import --general is default now - Add typing for steps/finish/shell.py - Enhance tmt.utils.retry_session with timeout support - Adjust the `rpm-ostree` install implementation - Add support for the `rpm-ostree` package manager - Add `environment-file` to possible Plan keys - Avoid Library url conflict if repo doesn't exist - Check changes are pushed before export nitrate - Add typing for beakerlib.py - Unbundle template from the report.html plugin - Rename `uuid` to `identifier` to prevent conflicts - Use `must` for all mandatory spec requirements - Fail import for packages starting with minus sign - Adds support for newer Artemis API versions - Disable the extra verbose progress in testcloud - Refactor internal executor scripts - Adds "missing" imports to help IDEs follow objects - Add typing for steps/__init__.py - Implement the test `result` attribute - Add typing for plugins/__init__.py - Detect legacy relevancy during import as well - Implement the new user story key `priority` - Implement new class `SerializableContainer` - Add schema for stories - Add typing for steps/prepare/shell.py - Add typing for steps/prepare/ansible.py - Require fmf >= 1.1.0 (we need validation support) - Package fmf root into the source tarball as well - Add JSON Schema for tests - Exclude namespaced backup in beakerlib - Use --depth=1 when cloning git repos by default - Handle missing nitrate user during export - Removes unused GuestContainer.container_id attribute - Every subpackage must require the main tmt package - Introduce dataclasses as a requirement - Avoid re-using image/instance for different values by testcloud plugin - Add typing for multihost.py - Except nitrate xmlrpc issues during import - Exclude beakerlib's backup dir from guest.pull() - Increase `duration` for the reboot-related tests - Several release-related tests and docs adjustments- Command 'tmt clean' should not run rsync at all - Dist-git-source for Discover (fmf, shell) - Adjust the new `id` key implementation - Add a new core key `id` for unique identifiers - Recommend qemu emulators for other architectures - Copy the whole git repo only if necessary - Reveal hidden errors during `testcloud` booting - Use time for timeout handling in Guest.reconnect() - Split `Guest` class to separate SSH-capable guests - Explicitly set the docs language in the config - Kill the running test when rebooting - Extend the reboot timeout to allow system upgrades - Allow selecting tasks directly from upgrade config - Adjust the new `upgrade` execute plugin - Allow specifying command for reboot - Implement upgrade execute plugin - Buildrequire python3-docutils, append plan adjust - Implement `tmt tests export --nitrate --link-runs` - Detect component from general plan during import - Adjust the support for steps in standalone mode - Add results method to ExecutePlugin - Implement a common ancestor for Action and Plugin - Allow abstractly excluding steps from runs - Correctly handle tests --name '.' shortcut - Rename WorkdirType to WorkdirArgumentType - Fix workdir parameter type for tmt.utils.Common - Allows importing jira issues as link-relates - Enables mypy coverage for empty-ish Python files - Adds type annotations to tmt.templates - Prevent infinite recursion if --id is set - Enable mypy check for Artemis provision plugin - Adjust provision dry mode propagation, add a test - Introduce new _options attribute to Common class - Add specification for remote plans referencing - Bootstrap type annotations - Execute script should not be used with discover - Add the `arch` key to the hardware specification - Fix pip install instructions - Disable network access when building in copr - Ignore list for dist-git-source - Remove the obsoleted `detach` execute method - Fix login during `execute` and `prepare` step - Import from Makefile with missing build target- Add multiarch support to testcloud provision - Consistent summary for test export --nitrate - Allow dry mode for tests export --nitrate - Add a nice provisioning progress to Artemis plugin - Add support for the `where` keyword to `execute` - Adjust support for export of multiple tests - Add support for exporting multiple tests - Basic multihost test for the httpd web server - Update multihost specification with guest groups - Add a provision plugin for Artemis - Fix exclude option in fmf discover - Reduce the number of execute calls for reboot - Add support for reboot in interactive mode- Add a command to setup shell completions - Use /tmp instead of /run/user/ if not available - Use separate examples in the test specification - Add more story examples, simplify examples export - Story.example can hold list of strings - Fix traceback when connect plugin is used without hostname. - Adjust disabled shell expansion in Common.run() - Disable shell expansion in Common.run() by default - Build `epel9` packages, update install docs - Adjust the full test wrapper and document it - Test which compiles tmt and runs its testsuite - Add --exclude search option - Correct regex for require read from metadata file - Update document for creating virtual environment - Option to export fmf-id from run discover -h fmf - Allow import from restraint's metadata file (#1043) - Do not disable building for power arch on Fedora - Update documentation for plan parametrization - Make .vscode ignored by git - Drops basestring and unicode built-ins from utils - Fix timeout behaviour in testcloud plugin - Fixes possible test of None-ish CWD when running a command - Remove workdir only when its defined - Adjust the new `tmt plan export` feature - New feature: tmt plan export- Prevent koji build failures on unsupported arches - Check remote git URL if it is accessible - Implement a generic `requires` for all plugins - Run commands in podman provision via bash - Adjust implementation of the new `order` attribute - Implement the Core attribute `order` - Fix link generation in report.html - Improve step name handling - Enable shared volume mounts in podman provision - Add support for multihost provision and prepare - Adjust the dnf support for rsync install - Add dnf support for rsync install - Update links and refs after migration to `teemtee` - Track output for reboot purposes on per-test basis - Fix test --name '.' used with multiple plans - Tweak test suite (duration, centos:8, datadir) - Use `os.pathsep` to separate `TMT_PLUGINS` paths (#1049) - Document framework:shell exit codes - Add `html2text` to the `convert` pip dependencies- Make reboot support a bit more backward compatible - Ensure that workdir has a correct selinux context - Use `centos:stream8` image instead of `centos:8` - Disable X11 forwarding in ssh connections - Fix traceback for login after last report - Use `TMT_TEST_DATA` as location for `rlFileSubmit` - Implement variables for storing logs and artifacts - Adjust rsync installation on read-only distros - Handle rsync installation on read-only distros - Add hardware specification for hostname - Correctly import multiple bugs from Makefile - Remove dependency on the `python3-mock` package - Adjust linting of manual test files - Check Markdown files in tmt lint if `manual=True` - Adjust pulling logs from the guest during finish - Add guest.pull() to the finish step - Update virtualization hints for session connection - Improve error message for empty git repositories - Minor modification of test result specification - Use `where` instead of `on` in the multihost spec - Clarify that `path` is defined from the tree root - Adjust ansible requires for containers preparation - Move the reboot scripts to a read/write directory - Ignore read/only file systems reboot script errors - Require either ansible or ansible-core - Set the `TMT_TREE` variable during test execution - Clarify that 'until' means until and including - Update test debugging examples with --force option - Add `bios.method` to hardware spec - Improve environment variables specification a bit - Adjust the ssh connection multiplexing - Add support for ssh multiplexing- Improve testcloud/virtual provider docs - Disable UseDNS, GSSAPI for faster SSH in testcloud - Use `extra-args` attr for ansible-playbook - Fix el7 provision in testcloud user session - Adjust the instructions for migrating from STI - Document how to migrate tests from STI to tmt - Allow to pick objects by --link - Generate ecdsa key in testcloud - Simplify plugin keys handling in wake() and show() - Add support for Beakerlib's rlFileSubmit - Revert requiring exact beakerlib version - Dist git source can contain multiple files - Symlink worktree for discovered shell tests - Read environment variables from options only once - Correctly handle empty environment files - Use distro values from context for dist-git type - Make tests --name to just prune discovered tests - Enable duplicate test names and preserve ordering - Require beakerlib-1.28 for beakerlib tests - Adjust the dist git source discover implementation - Discover tmt tests from sources - Reenable plans/install/docs - Correct the `playbook` attribute in the spec (#948) - Ansible plugin for Finish step - Thread processing of executed commands inside tmt - Adjust `tmt test lint` test for old yaml format - Canonical name for centos-stream in dimension - Remove obsoleted conditionals from the spec file - Use a fresh sphinx when building the readthedocs - Allow to specify session type (system/session) - Package tmt.plugins to store arbitrary plugins - Ignore ssh connection closed during reboot - Improve error message for the missing step name - Document how to integrate tests with other tools - Use the recommended format of the copyright notice - Update notes about the release process - Update the hardware specification with new keys- Add support for reboot in a reused provision - Solve the reboot race condition - Adjust the current git remote improvement - Use current git remote for url in fmf-id - Implement option to exit after first failure - Clarify and update spec for the discover step - Adjust the multihost test specification - Add the multihost testing specification - Make run --force behave more expectably - Increase duration for tests using containers - Rename soon-to-be deprecated resultcallback - Remove the minute.obsolete provision plugin - Document how to create a new minor/major release - Explicitly mention '.' as special value for names - Add Github Action for PyPI releases - Improve fetching remote environment files - Adjust the check for rsync before pull and push - Install `rsync` before guest.pull() - Second chapter of the Guide: Under The Hood - Simplify the search for step method options - Produce better errors for unsupported plugins - Add more ignored files, categorize gitignore more - Extend .gitignore with a few more common patterns - Export fields of a case should be checked by lint - Adjust the bugzilla support in test export - Test export can link case to bugzilla - Document the support for `open` key in html report - Allow html report to be opened by plan - Require essential packages for tmt testing - Skip the docs test until the Sphinx issue is fixed- Adjust support for exporting test fmf identifiers - Add --fmf-id option for tests export - Fix regression in image listing - Update hardware spec with units and current status - Adjust the reboot support in the internal executor - Add support for reboot to internal executor - Always try to save guest details - Give hints about available report methods - Handle libvirt exceptions correctly - Handle FileNotFoundError when running commands - Adjust framework detection during test import - Detect test framework during test import - Adjust the reboot command test, minor enhancements - Adjust reboot command implementation - Implement the reboot class and subcommand - Adjust the improved login step selection - Login after last done step without --step option - Adjust default shell options implementation a bit - Make multiline shell scripts fail on error - Ensure environment files are within metadata tree - Add pycharm .idea to .gitignore - Ensure environment-file paths are only relative - Adjust the 'environment-file' implementation - Implement the 'environment-file' option - Mention required packages on the Contribute page - Migrate to ruamel.yaml - Adjust tmt lint implementation - Add tmt lint command - Do not expand the process environment variables - Adjust legacy match to cover both rhel and centos - Guess pci/net when libguestfs python is missing - Add timestamp to the tmt debug output - Restart sshd on EL8 to prevent delays after boot - Support systemd-networkd systems without nm too - Testcloud: Use cache='unsafe' for a nice IO boost - Check invalid attributes in plans with lint - Require correct testcloud version in setup.py - Adjust the support for plan parametrization - Implement plan parametrization from environment - Deprecation timing, mention vagrant box support - Fix exit code for tmt story lint - Require testcloud with the url guessing support - Use testcloud for image url guessing - Update the RHEL 8 / CentOS 8 install instructions - Accept more ssh keys in the API - Require a full path for local images in testcloud - Adjust the conversion of Makefile types to tags - Convert Type from Beaker Makefile into tags - Make sure pip is available for integration testing - Disable the white space test for container/virtual - Use IdentitiesOnly=yes when key or password is set- Adjust the new plugin documentation - Add plugin examples and documentation - Ensure that the discover git reference is a string - Report plugin for JUnit output - Fix issue when raising error for NoneType - Print better error when nitrate testcase not found. - Use `count=True` for multiple flag options - Add option to explicitly use default plan - Adjust debuginfo installation, add test coverage - Use debuginfo-install for installing debuginfos - Update the documentation based on refactoring - Implement tmt story lint - Refactor Node class to Core - Correctly handle spaces in file/directory names - Hand over plan environment during local execution - Do not execute manual test cases - Fix option handling for plugins with common prefix - Propagate options to guests based on the step - Support fetching libraries from a local directory - Add a simple example of a test written in ansible - Pass environment variables to ansible (local) - Pass environment variables to ansible (virtual) - Adjust warning for extra lines in Makefile targets - Add test import warning for run and build targets - Enable a few more pre-commit hooks, sort imports - Give a warning about the obsoleted minute plugin - Clarify adjust dependency on explicit context - Fix the EPEL installation instructions - Adjust the new list options for the minute plugin - New print method, used now in minute plugin - Implement listing available minute images/flavors - Update default option values for verbose and debug - Avoid creating workdir on --help - Do not keep run workdir during testing - Clean up the code style, remove the vagrant plugin- Enable and document `pre-commit` and `autopep8` - Reorganize feature stories, fix title duplication - Prepare/install story for package development. - Add package preparation scenarios from Fedora CI - Prepare/install story for released packages - Add new stories related to package preparation - Fix login not working for cloud images - Work around a seccomp podman issue on centos-8 - Tag multihost tests during import from Makefile - Adjust the simple test for ansible prepare - Remove hardcoded ansible_python_interpreter=auto - Fix lint and use it on the tmt repo itself - Obsolete the minute provision plugin - Update the documentation for contributors - Do not assert installed packages for recommend - Show link to the full debug log in the html report - Implement tmt clean command - Require a newer fmf which supports storing data - Allow to specify port in provision.connect - Surround classes and functions with 2 blank lines - Fix order of imports, sort them alphabetically - Update the provision step hardware specification - Fix tmt plan lint for multiple configurations - Add tmt status examples section - Add a context adjust example for the prepare step - Adjust the git suffix stripping for known forges - Strip git suffix from pagure/gitlab/github repos - Enable install plans for pull request testing - Adjust the essential attributes description - Document the essential class attributes - Improve the prepare step documentation - Correctly convert relevancy with the `!=` operator - Print note in report.html if it exists - Add note about error for beakerlib results - Adjust progress bar for the internal executor - Add test progress bar to non-verbose mode - Adjust the attribute linting for tests - Lint attribute names for test - Human friendly names for VMs- Create a copy of nitrate testplans for iteration - Check the rsync as the first preparation step - Use an empty worktree if no metadata tree found - Adjust manual test instructions export to nitrate - Export manual test case fields to nitrate - Adjust the worktree implementation and test - Implement shared worktree for the tests - Adjust the improved verdict implementation - Correct the verdict function, align docstring - Print final image name in minute plugin - Adjust the improved plan linting a bit - Improve plan linting - Implement port in Guest, show in verbose mode - Use qemu user mode in the testcloud provision - Support excluding packages during installation - Support enabling/disabling plans and stories - Do not link and remove general plans by default - Improve general plans handling during test export - Match by name prefix in discover.modified-only - Passthrough non-zero exits for beakerlib execution - Adjust the dry mode implementation for tmt init - Implement dry mode for the tmt init command - Do not use the spec release for the pip version - Simplify story, plan and test search methods - Do not use mutable objects as default arguments - Prevent duplicate content in generated docs - Ignore the nitrate migration warning during import - Better summary for new exported tests - Adjust exception handling in the testcloud plugin - Make the testcloud ProvisionError more verbose - Use IPv6 enabled 1MT network by default - Improve debugging of tests using click runner - Fix step selection for --before and --after - Adjust the prepare test and pull/push enhancements - Add prepare/shell test and pull/push enhancements - Test filter on command line overrides config - Improve handling of verbose and debug options - Verify automated test case import from nitrate - Enable copr repo even if no package is provided - Improve documentation of tests, plans and stories - Use fmf to store the newly created nitrate case id - Adjust the hint about increasing the test duration - Add hint to stdout in case of timeout - Catch all exceptions when evaluating --condition - Fix missing overview on the readthedocs.org site - Adjust style of the new nitrate integration test - Nitrate integration testsuite with requre - Always enable force mode for display/html report - Improve documentation, clearly show draft stories - Test filter on command line overrides config - Print unofficial attributes in tmt tests show -vv - Adjust dry mode fix for test/plan/story create - Implement dry mode for tmt test/plan/story create - Support NO_COLOR to disable colored output - Add test duration to `results.yaml` - Adjust checking for duplicates during test export - Prevent creating duplicate test cases in Nitrate - Use singular for 'gate' as defined in the spec - Fix gates conversion & drop artifacts - Adjust a bit the shell completion instructions - Describe how to enable shell completions - Extend the duration test to cover positive results - Detect timeout for Beakerlib, use TESTRESULT_STATE - Improve tmt test path linting - Clarify playbook path for ansible prepare plugin - Adjust warning about the invalid disabled step - Only warn on invalid disabled step - Use date-service to get correct instantiation time - Prevent keys mutation when searching plans/stories - Cache fmf_id property - Store relevant bugs during test import - Avoid mutating `keys` default in .tests() - Use the new execute method syntax for tmt tests - Clean up obsolete test metadata- Add test for prepare freeze - Make file descriptors non-blocking - Update the specification and stories to use link - Implement the new core attribute 'link'- Set timeout on select calls in utils._run() - Show the current tmt version in the debug log - Revert support for the 'el' distro shortcut - Strip whitespace before relevancy comment - Ensure rsync is installed on the guest if needed - Use the default branch in the discover fmf plugin - Suport the 'el' shortcut for the distro context - Implement the 'tmt --version' option [fix #445] - Adjust test create test, fix missing dots - Support creating tests in the current directory - Rename container images, update install docs - Fixup Dockerfiles to build in quay.io. - Support building mini and full tmt container image - Add a Dockerfile for container with tmt - Fix dependency error messages - Use a better trigger name for source code changes - Add a new 'Check Report' section to examples - Add the --force explanation in the documentation - Extend the test coverage to check for active runs - Add basic test coverage for tmt status - Restore context after processing each run - Correctly handle an undefined step status - Load default plan when no root is present - Implement tmt status command - Define command-line interface for status command - Print library in error message during ref conflict - Adjust the default branch handling for libraries - Handle default branch in Library - Adjust test duration, clean up old test metadata - Improve timeout handling (fix an infinite loop) - Adjust default timeout in the testcloud provision - Remove obsolete unit test coverage for steps - Adjust the filtering support, fix docs building - Allow filtering using custom L1 metadata - Allow filtering with lowercase bool names - Handle exceptions when applying filters and conditions - Share code for filters & conditions, test coverage - Apply filters after applying defaults and conversions - Fix IPv4 parsing when booting minute machine - Remove all hacks for the old cruncher executor - Remove the whole rhts-lint line during test import - Remove the old convert test from unit tests - Adjust contact handling to work with manual tests - Fix contacts without name during tmt test import - Finalize the specification of the 'link' attribute - Add specification of the new core attribute 'link' - Enough of dreaming, let's go to the forest! :) - Update the overview of core classes, minor cleanup - Add missing required packages for pip install - Implement tmt run --follow option for checking log - Extra check for required packages when using yum - Clean up obsolete names in examples and templates - Update the test checking for relevancy conversion - Adjust storing test case id for new nitrate cases - Append nitrate id when exporting instead of rewrite - Skip prereserve check if custom flavor requested - Use special compare operators only if minor given - Adjust support for selecting modified tests - Allow selecting only tests that have changed in git - Remove the duplicate build job from packit config - Verify the old beakerlib functions using Makefile - Enable debug output using the TMT_DEBUG variable- Manual state for manual nitrate tests - Define framework for all beakerlib libraries tests - Remove the remaining test case relevancy leftovers- Minor adjustment of the beakerlib test template - Adjust the new test checking the error output - Print errors to stderr - Fix check for selecting plans during tmt run - Update test coverage, fix finish step example - Update spec/stories implementation coverage - Skip import of manual cases with script - Import header and footer from Nitrate - Implement conversion between relevancy and adjust - Support short options for selecting tests & plans - Document the display and html report in the spec - Explain the difference between fmf and tmt - Fix the last missing framework in library tests - Adjust the docs update and title implementation - Implement a new story attribute 'title' (L3) - Small documentation cleanup - Simplify plan setup, move old plans to examples - Store the whole debug log in the top run directory - Add test for pip installability - Add a new plan to cover minimal installation - Move html report plugin into a separate subpackage - Use 'output.txt' filename for the main test output - Update required fmf version in setup.py - Improve the css style for the html report - Fix blocking read in Common.run - Adjust a bit the improved html report - Improve report-html --open - Implement adjusting metadata based on the context - Adjust the new 'html' report method - New report --how html available - Adjust environment import from Makefile metadata - Import environment from Makefile metadata - Update old beakerlib paths during tmt test import - Adjust a little bit the user story templates - Support libraries stored deep in the repositories - Enable the new coverage stories section in docs - First stories to cover tests coverage mapping - Recommend using login shell in libvirt hints - Use nitrate naming for the manual field export - Export manual attribute to nitrate - Store complete initialized data in metadata.yaml - Merge the improved minute error messages [#425] - Adjust a bit the minute provision error messages - Handle testcloud problem with the images directory - Handle tracebacks in minute provision - Multiple enhancements for package preparation - Gracefully handle invalid library reference- Convert adds extra-summary as well - Simplify test directory copy with enabled symlinks - Select latest minute image only from released images - Allow specifying exact RHEL version using a short name - Preserve symlinks during discover, pull and push - Always run Login plugin even if step is done - Suggest some useful aliases for common use cases - Correct type of Tier attribute in examples - Define basic hardware environment specification - Import manual data for automated tests - Tag tests which can be run under container/virtual - Give hints to install provision plugins [fix #405] - Handle nicely missing library metadata [fix #397] - Update the test data directory name in the spec - Extend duration for tests using virtualization - Use a better name for the test data path method - Provide aggregated test metadata for execution - Send warnings to stderr, introduce a fail() method- Correctly handle framework for new plans and tests - Move runtest.sh adjustments into a single function - Add the executable permission to runtest.sh - Less strict removing sourcing of rhts-environment - Use metadata directory as the default for path - Implement the new L1 attribute 'framework' - Explicitly enable copr_build for pull requests - Handle missing library in existing repository - Update the overall tmt description and examples - Enable builds from master in the main copr repo - Merge packit config for copr builds from master - Use packit repository for copr builds from master - Gracefully handle invalid test output - Build in COPR for master via packit - Add hint about caching the dnf package metadata - Add two hints about easy login for experimenting - Merge debug messages for the minute plugin [#361] - Adjust the minute provision debug messages wording - Use the internal tmt executor by default - Add more debug messages to minute provision - Remove the remaining 'tmt test convert' references - Prevent shebang mangling for detached executor - Merge the minute and install plugin docs [#345] - Adjust the minute and install plugin documentation - Merge the manual test import documentation [#347] - Adjust the manual test documentation wording - Merge rhts-environment source line removal [#344] - Adjust rhts-environment source line removal - Add missing extra-* keys to the test import - Add docs for manual case import - Disable authentication when fetching libraries - Document the install prepare method - Document the minute provision method - Remove sourcing of rhts-environment in runtest.sh - Add minute to supported provision methods of prepare- Adjust manual test case import from nitrate [#319] - Move the test convert deps into a separate package - Support importing manual test cases from Nitrate - Merge the non-zero exit codes for linting errors - Fix several test export issues [fix #337] - Adjust distro checks, remove the dry parameter - Generalized Guest.details() [fix #310] - Adjust the test coverage for tmt plan/test lint - Update documentation with virtualization tips - Make sure the duration timer is always canceled - Merge the new retry_session functionality [#328] - Exit with non-zero code if linting fails - Merge fix for the double fmf extension [#327] - Prevent koji from trying to build packages on i686 - Retry requests in case of network failure - Avoid double fmf extension when creating plans and stories - Improve the maximum test duration handling - Remove vagrant from tmt-all recommended packages - Detect beakerlib libraries from recommend as well - Simplify packit custom create archive command - Make the httpd test example a bit more interesting - Append dots to fix tmt run --help message summary - Document multiple configs and extending steps- Move libraries handling into a separate module - Adjust loading variables from YAML files [#316] - Support environment variables from YAML files - Give a nice error for expired kerberos [fix #57] - Merge Guest relocation and documentation [#307] - Describe essential Guest methods in more detail - Update test import story and documentation - Merge extra-task as summary in test export [#304] - Move default plan handling into a single method - Move the Guest class from base to steps.provision - Save root in run.yaml - Document L1 metadata defined in the discover step - Improve Makefile editing during test import - Use extra-task as summary in test export - Mention default methods in the step help message - Handle invalid url when library provided as fmf id - Allow library git clone to fail- Make the discover step a little bit more secure - Improve basic and verbose output of tmt plan show - Improve default plan handling and more [fix #287] - Adjust the compose check retry in testcloud - Retry Fedora compose check in testcloud [fix #275] - Update development section and library example - Support fetching beakerlib libraries in discover - Add nitrate to the setup.py extra requires - Add a workflow-tomorrow integration test example - Add 'duration' into the test results specification- Add virtual plans for supported provision methods - Implement description in 'tmt plan show' as well - Implement tmt run --remove to remove workdir - Extend the login/step test to cover failed command - Do not fail upon command fail in interactive mode - Implement the internal tmt execute step method - Move all prepare/install tests to tier level 3 - Merge the new manual test specification [#247] - Merge the new L1 attribute 'recommend' [#265] - Adjust the manual test specification and examples - Implement 'recommend' for installing soft requires - State explicitly that execution is finished - Simplify beakerlib template, add test for init - Manual test case specification and examples - Implement exit codes, handle no tests [fix #246] - Merge the interactive shell login command [#258] - Adjust support for shortened 1MT image names - New login command to provide a shell on guest - Add support for shortened 1MT image names - Add support for running tests without defined plan - Ignore save() in the execute step unit test - Update the default run example with fresh output - Show kernel version only in verbose mode- Use emulator_path instead of hard-coded qemu path - Improve a bit the --force option description - Use consistent naming for provision subpackages - Add 'mock' to extra requires (needed to make docs) - Move podman and testcloud plugins into subpackages - Enable epel for packit build & testing farm - Move vagrant from requires to recommends (tmt-all)- Merge the fix and test for run --force [#245] - Merge the improved display report [#241] - Adjust the display report plugin verbose output - Adjust general plan linking and component check - Clean up the run workdir if --force provided - More verbose modes for report --how display - Link plans, handle missing components in export - Import and listify of contact - Disable Tier 3 tests by default (need bare metal) - Move Tier 0 tests into a separate directory - Merge the new 1minutetip provision plugin [#225] - Adjust the 1minutetip provision plugin - Add support for tmt run --after and --before (#237) - Support string in test component, require and tag (#233) - Add support for installing local rpm packages - Add 1minutetip provision plugin - Implement tmt run --since, --until and --skip (#236) - Merge pull request #234 from psss/testcloud-aliases - Update the last run id at the very end of run - Support short Fedora compose aliases in testcloud - Convert the finish step into dynamic plugins - Convert the report step into dynamic plugins - Convert the execute step into dynamic plugins - Escape package names during installation - Deduplicate inherited keys in test import [fix #8]- Implement executing the last run using --last - Adjust support for modifying plan templates - Add a way how to edit values in a new template - Explicitly mention supported distros in the docs - Convert provision/prepare into dynamic plugins - Describe difference between --verbose and --debug - Support fmf name references in docs, update spec - Support multiple verbose/debug levels [fix #191] - Remove forgotten 'Core' section from stories - Implement Plugin.show() for a full dynamic support - Improve the workdir handling in the Common class- Workaround yaml key sorting on rhel-8 [fix #207] - Fix test discovery from the execute step scripts - Merge discover step documentation and fixes [#204] - Document the discover step, fix issues, add tests - Simplify the minimal example, adjust tests - Move fmf_id() to Node class, minor adjustments - Allow to print fmf identifier in tmt tests show - Merge manual tests story and examples [#198] - Add a story and examples describing manual tests - Sync more extra-* attributes when exporting [#199] - Enable checks for essential test attributes - Handle require in Dicovery - Store imported metadata in a sane order [fix #86] - Enable Python 3.8 in Travis, update classifiers - Add missing 'require' attribute to the Test class - Fix long environment for run.sh [fix #126] - Merge dynamic plugins and wake up support [#186] - Implement dynamic plugins and options [fix #135] - Suggest using 'tmt init' when metadata not found - Merge improved import of tier from tags [#187] - Adjust tier import from test case tags - Merge tmt test export --nitrate --create [#185] - Adjust suppport for creating new nitrate testcases - Allow creation of nitrate cases when exporting - Create tier attribute from multiple Tier tags - Fix run.sh to work with RHEL/CentOS 7 as well - Implement wake up for Run, Step and Discover- Merge the improved test import checks [#179] - Adjust checks for missing metadata - Add checks for missing metadata. - Implement public_git_url() for git url conversion - Define required attributes and duration default- Import the testcloud module when needed [fix #175] - Update implementation coverage of stories & spec - Discover only enabled tests [fix #170] - Correctly handle missing nitrate module or config - Use raw string for regular expression search- Merge default images for podman/testcloud [#169] - Do not export empty environment to run.sh - Merge vagrant check for running connection [#156] - Adjust vagrant check for running connection - Merge test export into nitrate [#118] - Adjust 'tmt test export --nitrate' implementation - Use fedora as a default image for podman/testcloud - Move testcloud back to the extra requires - Always copy directory tree to the workdir - Add an example with test and plan in a single file - Do not run tests with an empty environment - Check for non-zero status upon yaml syntax errors - Export test cases to nitrate - Merge test import using testinfo.desc [#160] - Adjust test import using testinfo.desc - Use testinfo.desc as source of metadata - Add environment support to the discover step (#145) - Add a new story describing user and system config (#143) - Check if connection is running in Vagrant Provision- Merge fixed environment support in run.sh [#99] - Add container and testcloud to tmt-all requires (#157) - Rename dict_to_shell() to better match content - Make path mandatory in run.sh. - Handle execution better in run.sh - Implement --env for testcloud provisioner - Merge run --environment support for podman [#132] - Fix container destroy, plus some minor adjustments - Use cache 'unsafe' for testcloud (#150) - Add --env option and support in podman provisioner - Warn about missing metadata tree before importing - Move testcloud to base requires, update README (#153) - Destroy container in finish only if there is any - Merge tmt test import --nitrate --disabled [#146] - Adjust the disabled test import implementation - Add an overview of classes (where are we heading) - Import non-disabled tests - Add a 'Provision Options' section, update coverage - Support selecting objects under the current folder - Add a link to details about fmf inheritance - Move requirements under the Install section - Mock testcloud modules to successfully build docs - Include examples of plan inheritance [fix #127] - Update implementation coverage for cli stories - Add testcloud provisioner (#134) - Merge the new story for 'tmt run --latest' [#136] - Move run --latest story under run, fix code block - Fix invalid variable name in the convert example - Use 'skip' instead of 'without', simplify default - Add rerun cli shortcut - Make sure we run finish always - Update the docs making '--name=' necessary (#138) - Clarify environment priority, fix release typo - Add environment specification - Remove copr build job from packit (not necessary) - Use the 'extra-summary' in the output as well - Use 'nitrate' consistently for tcms-related stuff - Prefix all non-specification keys [fix #120] - Show a nice error for an invalid yaml [fix #121] - Move container plan to common provision examples - Remove tmt-all dependency on vagrant-libvirt - Do not use red for import info messages [fix #125] - Show a nice error for weird Makefiles [fix #108]- Rename the 'test convert' command to 'test import' - Include 'path' when importing virtual test cases - Extract test script from Makefile during convert - Do not import 'fmf-export' tag from nitrate [#119] - Merge the improved component import [#115] - Several adjustments to the component import - Merge the improved requires parsing [#113] - Fix parsing multiple requires from Makefile - Fail nicely if executed without provision (#112) - Make sure the copr command is available in dnf - Fix handling defaults for options, adjust wording - Read 'components' from nitrate when converting - Read requires as list when converting tests - Make it possible to pass script on cmdline - Mention libvirt and rsync in Fedora 30 workaround - Move podman image check and pull under go() - Simple destroy implementation for podman provision - Add Fedora 30 installation instructions [fix #105] - Merge podman support for the provision step [#106] - Several adjustments to the podman implementation - Fix _prepare_shell in podman provisioner - Add podman provisioner - Update the test case relevancy specification (#102) - Move copy_from_guest to provision/base.py (#75) - Several minor adjustments to the restraint story - Add user story for restraint - Merge different summaries for subpackages [#97] - Remove macro from the tmt-all subpackage summary - Add different summaries for sub-packages - Mention 'fmf-export' tag in the test export story - Merge optional PURPOSE in test convert [#89] - Handle missing duration or nitrate case in convert - Add support for wrap='auto' in utils.format() - Use local fmf repository for the basic plan (#94) - Merge test import documentation updates [#90] - Merge tag, status, pepa & hardware for test import - Several test import adjustments related to #91 - Fix deduplication bug when converting tests - Read more attributes from nitrate when converting - Update examples doc for converting tests - Update execute step examples for shell - Simplify packit configuration using 'fedora-all' (#88) - Optional attributes when converting. - Update execute and report step specification - Add spec for results.yaml and report.yaml (#66) - Add a story for exporting tests into nitrate (#83) - Add the 'require' attribute into the L1 Metadata - Update the Metadata Specification link in README - Improve 'tmt test convert' command implementation- Do not create bash completion script during build - Require the same version, fix changelog entry - Create fmf for each tcms case when converting. (#78)- Make the package build for epel7 and epel8 - Implement test discover from execute shell script - Disable /plan/helps for running in cruncher (#74) - Do not fail ansible execution on 'stty cols' error - Use a list for storing converted requires - Add Requires to main.fmf when converting tests (#65) - Fix command debug output to join tuples as well. (#77) - Set 80 chars for ansible-playbook on localhost - Use tmt to init tree, extra folder for playbooks - Fix log and error handling in execute - Fail in run.sh if there are Missing tests. - Use sudo in prepare step to allow local execution - Fix run_vagrant() to work with shell=True - Use tmt init --template, not --mini|--base|--full (#69) - Add a simple local provision plan to examples - Simplify step selection test, simple local example - Fix conflicting options, revert copr config - Add `--guest` support for the provision step - Depend on git-core and not the full git package (#64) - Use shell=True as a default in utils' run() - Put quotes in `pip install .[*]` in README (#67) - Use parent run context to check for enabled steps - Improve the enabled steps implementation - Add 'mock' to the extra test requires [fix #63] - Add a new story for developing upgrade tests - Update fedora targets for packit - Add vagrant to BuildRequires (needed to run tests) - Add stories for connecting to a provisioned box - Separate the provision step into multiple stories - Fix provision tests to work with older mock (#51) - Install the latest mock module for testing - Default to vagrant provision, use the tree root - Update documentation coverage links - Move new docs to examples, adjust style & content - Add prepare functionality to local provision - Import examples from @psss's talk - Add an argument to ProvisionBase.copy_from_guest (#41) - Remove unused imports, fix crash, shell prepare - Initial prepare and finish steps implementation - Document the vagrant-rsync-back plugin workaround - Fix beakerlib execution, show overall results - Better execute with logs and better run.sh - Implement 'tmt init --base' with working examples - Add git to the main package requires - Add tmt & python3-nitrate to the tmt-all requires - Create subpackage 'tmt-all' with all dependencies - Use package_data to package the test runner - Apply requested file mode in create_file() - Run tmt tests local by default, fix provision show - Implement image selection using provision --image - Do not re-raise tmt exceptions in debug mode - Package the runner, dry mode in Common.run() - Support multiline output in common display methods - Enable command line filtering in discover.shell - Default discover method has to be 'shell' - Fix Common.run() to capture all output, log all - Fix broken test/plan/story create, add some tests - Better config handling in ProvisionVagrant. - Implement 'sync-back' and simple VagrantProvision.- List all python packages in the setup.py - Initial implementation of the execute step - Vagrant Provider output and provider handling - Relay API methods to instances in provision - Simple localhost provisioner (#28) - Implement shell discover, add a simple example - Fix test path, discover in go(), adjust example - Add run.sh for running the tests on guest - Add default config for libvirt to use QEMU session- Implement common --filter and --condition options - Store step data during save() - Common logging methods, improve run() output - Implement common options and parent checking - Sync the whole plan workdir to the guest - Fix inheritance and enable --verbose mode. - Rename the main metadata tree option to --root - Adjust tests to skip provision, fix raw strings - Move example Vagrantfiles to examples - Implement ProvisionVagrant (#20) - Implement tests.yaml creation in discover - Implement 'tmt test export' with yaml support - Support checking parent options, fix plan show -v - Implement common methods status(), read(), write() - Implement run() to easily execute in the workdir - Implement DiscoverPlugin class, require step names - Move workdir handling into the Common class - Common class & filtering tests/plans for execution - Improve step handling, remove global variables - Fix 'tmt init --full' in a clean directory - Better handle defaults and command line options - Do not run systemd plan as it fetches remote repo - Add documentation generated files to gitignore - Get rid of the test attribute inconsistencies - Fix various issues in localhost provisioner skeleton - Update discover step story with example output - Add an example of a shell discover step - Add a simple smoke test story - Add base class for provisioner - Initial implementation of the discover step - Allow creating tmt tree under an existing one - Support multiple configs in Step.show() - Support and document optional dependencies install - Add an example of multiple configs - Convert step data to list, add execute check - Add --how option to provision command - Move step classes into separate directories - Implement class Run with workdir support - Add a workdir structure example - Separate metadata tree for L2 metadata examples - Add stories covering the Metadata Specification - Enable bash completion feature- Add tests for 'tmt init', allow overwritting - Use plural commands to prevent confusion [fix #10] - Add a link to Packit & Testing Farm documentation - Add a simple develop section to the readme - Split cli stories into multiple files - Cleanup convert example, simplify story example - Implement initialization with creating examples - Implement 'tmt {test,plan,story} show --verbose' - Implement 'tmt story create', add basic templates - Implement 'tmt plan create' plus initial templates - Add a new story for creating plans (enable CI) - Add basic rpm installation stories - Show test steps summary in plan show if provided - Add a Release Test Team installation tests example - Suggest git-like moving forward in tasks - Fix step names in 'tmt plan show' output - Update documentation overview with latest changes - Add story introduction, cleanup generated files - Generate documentation for user stories - Use raw string to prevent invalid escape sequence - Test Management Tool, it's not metadata only - Add a story for core option --debug - Add a story for the mock shortcut [fix #5, fix #6] - Add a story for core option --format - Propose a dream for hands-free debugging - Rename remaining testset occurences to plan - Implement 'tmt plan lint' with initial checks- Fix uncovered story filter logic, show total - Rename testsets to plans, simplify playbooks - Fix basic testset repo, install dependencies - Implement 'tmt init', add the corresponding story - Show overview of available tests, plans, stories - Implement 'tmt story coverage', update coverage - Implement 'tmt story --covered / --uncovered' - Rename testsest to plan to avoid common prefix- Enable Packit building and Testing Farm testing - Provide one-letter versions for select options - Implement 'tmt run --all' to run all test steps - Support command abbreviation, add related stories - Add the Quick Start Guide story to documention - Add coverage options to tmt story ls and show - Initialize metadata tree only when accessed - Remove show functionality from the 'run' command - Implement 'tmt test create' with basic templates - Implement 'tmt test lint' with some basic checks - Add user stories for core options and attributes - Implement 'tmt story show', couple of adjustments - Prevent alphabetical sorting of commands in help - Move unit tests into a separate directory - Align examples with the latest specification - Implement 'tmt show' for test and testset - Implement ls for test, testset and story commands - Add 'tmt test create' command to user stories - Add an initial set of basic tests - Update cli user stories, add api & docs stories - Add a couple of dreams for the bright future :-)- Initial packaging  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~1.25.0-1.el8     !!!!!!!"#####"$$$$$""%%%%%&'&()(****+,+--+..+/01tmttmttmtREADME.rstexamplesansible.fmfversionplan.fmftest.fmftest.ymlconvert.fmfversionMakefilePURPOSEruntest.shdiscover.fmfversiondiscover.fmfenvironment.fmfversionmain.fmfhttpd.fmfversionsmoke.fmfinherit.fmfversionmain.fmfl2.fmfversionartifacts.fmfbed.fmfgating.fmfrpmdiff.fmfsimple.fmftooling.fmfworkflow.fmflocal.fmfversionplan.fmfmanual.fmfversionfull.mdmain.fmfmini.mdmini.fmfversionci.fmfmultiple.fmfversionbasic.fmfpluginscustom_plugins.egg-infoPKG-INFOSOURCES.txtdependency_links.txtentry_points.txttop_level.txtdiscover.pyprovision.pysetup.pyrtt.fmfversioninstall.fmfpost-install.fmfsymlinks.fmfversionplansbasic.fmfcore.fmfhelps.fmfinstall.fmfmain.fmfsmoke.fmfunit.fmftryconnectbasic.fmfcore.fmfmain.fmfsmoke.fmfunit.fmfcontainerbasic.fmfcore.fmfmain.fmfsmoke.fmfunit.fmfmain.fmfvirtualbasic.fmfcore.fmfmain.fmfsmoke.fmfunit.fmfsystemd.fmfversionci.fmftogether.fmfversionmain.fmfvagrantVagrantfile.real_prodVagrantfile.simpleVagrantfile.urlVagrantfile.variouswow.fmfversionfullmain.fmftest.shminimain.fmftest.shrun.shtmtLICENSEtmt.1.gz/etc/bash_completion.d//usr/bin//usr/share/doc//usr/share/doc/tmt//usr/share/doc/tmt/examples//usr/share/doc/tmt/examples/ansible//usr/share/doc/tmt/examples/ansible/.fmf//usr/share/doc/tmt/examples/convert//usr/share/doc/tmt/examples/convert/.fmf//usr/share/doc/tmt/examples/discover//usr/share/doc/tmt/examples/discover/.fmf//usr/share/doc/tmt/examples/environment//usr/share/doc/tmt/examples/environment/.fmf//usr/share/doc/tmt/examples/httpd//usr/share/doc/tmt/examples/httpd/.fmf//usr/share/doc/tmt/examples/inherit//usr/share/doc/tmt/examples/inherit/.fmf//usr/share/doc/tmt/examples/l2//usr/share/doc/tmt/examples/l2/.fmf//usr/share/doc/tmt/examples/local//usr/share/doc/tmt/examples/local/.fmf//usr/share/doc/tmt/examples/manual//usr/share/doc/tmt/examples/manual/.fmf//usr/share/doc/tmt/examples/mini//usr/share/doc/tmt/examples/mini/.fmf//usr/share/doc/tmt/examples/multiple//usr/share/doc/tmt/examples/multiple/.fmf//usr/share/doc/tmt/examples/plugins//usr/share/doc/tmt/examples/plugins/custom_plugins.egg-info//usr/share/doc/tmt/examples/rtt//usr/share/doc/tmt/examples/rtt/.fmf//usr/share/doc/tmt/examples/symlinks//usr/share/doc/tmt/examples/symlinks/.fmf//usr/share/doc/tmt/examples/symlinks/plans//usr/share/doc/tmt/examples/symlinks/try//usr/share/doc/tmt/examples/symlinks/try/connect//usr/share/doc/tmt/examples/symlinks/try/container//usr/share/doc/tmt/examples/symlinks/try/virtual//usr/share/doc/tmt/examples/systemd//usr/share/doc/tmt/examples/systemd/.fmf//usr/share/doc/tmt/examples/together//usr/share/doc/tmt/examples/together/.fmf//usr/share/doc/tmt/examples/vagrant//usr/share/doc/tmt/examples/wow//usr/share/doc/tmt/examples/wow/.fmf//usr/share/doc/tmt/examples/wow/full//usr/share/doc/tmt/examples/wow/mini//usr/share/licenses//usr/share/licenses/tmt//usr/share/man/man1/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2noarch-redhat-linux-gnuASCII textPython script, ASCII text executabledirectoryUTF-8 Unicode textBourne-Again shell script, ASCII text executableRuby script, ASCII texttroff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)Rhttps://bugz.fedoraproject.org/tmtutf-8c8fac742db4a433a759edc1d0093621d23a83abad4e58232ae0ec58d89d28eb5?07zXZ !#,Fg] b2u Q{LT/KSĿ0Wѽ:%&[ '1i5Q׼(Zг2YҒc(X;fכsX8P ~.{]| $#ٟ2gDxk]*3uȄQSakyDU[pG~|G%݁׹I&Fy+l8ݡaH<4,m^Q+Djdԭ+u0)cܘ[/ETy7K+,!Qe-m/[scY {Sԧ+UU$>SJ4QJ~w šoxUW(,L—>e'9 ZBܕ~yeDg*]mR`Y6WBd0߶ETLfz_ mH"V` XlQ.kTx>Hw$N!}Ӓ/014x^~Mh!q|0O>M/yT{Y&lE4cUqF8|AsNdUuRZY3n5-2F|Cta+1,KS:e@]CCլVn}vsvΞZòɏay뻚願 F.}mE ŏ`qQ]F0M|mTk px;]"ޚާϴ"EDXY|F3V3&+Ħ%ULXF?!GuZu'@ _Se]i Ӛ{,F>ا|u{ J{59.:?*ހ ?|3LbdE[Rmq|$40z( s۪!Ec?c/:C`͑Q{j(-Ϙ9œu^Utkrqw[\ fIjGj59 ^^/nYhӟ~ަ $mMֈ^ddjY6o5w}dIql0%ǝ8:`یI^dY4BH''`P2Th^S^~Ds2a ,ḣ=P)HOD`ΥxɩeН/ˎB˓ fEWhtdq D-!nmVեBc&~z#&GpK>!nB.6:^Hyl F+-ډ::QS<%A)B:ۜ 17V#uWBL^Hnٞ\g*r;q}dBMG^[PLŠ) T;ԉՉyit2/? @*"N쏦{ ]bDN!HѼ>zaaw"cGSeP@ \dvQ_<ݨq WEyS9y8ĝägT ޲lIrkB樂G<"h$%Ov@ka'`?B4H8@1->I^ڍ굊up!sNNl{ԈX2|m״4 d`|1{0mWCAߗ 7mW36*6pAim{ C}+r"F_Go:Wap󡒛o6QuBAn7]jlG_Ƈ%} -Δ`6Þ)k#ohV14fBKD`Ѩ>Us /hoO~&IE3Љ?ŅL8fD[&̓u\IGĦfF;*zQ/ ҍTkˣ>\p䩢3v!;Nq4c|RETAYf%xI6A i&>J|*Zli e.bEׅ;Vq_-K]&NBDjÜGSekCV:DtT%VS hbT߭ͳˋ f xrmó_ ~N͘,|3 =5ZBS: vZa n~'^##5l{58eBP^#bơZ\wA^D hm#hB+(i*#PE{>MKupW.(sOpR0>J0zhD29sKy#l*\ W7bxG]A_h}veB[fqi0wq>' #p?`.3ߜ-*;*}[>mx2[0NT=s="/Bhcii57[0s2%iF y&벇z`\^7x@3F[Ewx #h ?P3JznC# ڝfJF=ׯa+rt,^nc'r?ճ>z)uCI$\oQgodc3jb\a!0 ݐ֑Ǝ`t%%jVfvZu39tHi_상i=أoA.{v:9w|!-& lqL)( 匞UL fU` N)p/4ԩyLT-ct>v~!b0 (-1 *= ,56qƚv~%߆ b}4)SM4U@ Vx  TdlF$5^ey"4~zu0)T]yI avmT WZRV4LJ&0>&|,H;:ndS"JЉvLݑկ@dSb{|ddxSRwiScS$_2}e'SYs^eHH$} ~!)5 Onfd<~ɋm[i9 7*[mh'^J//.|7hR냊z5^77 Y噼)Ÿ%U90 Y:ʔ)M_7܇Uɽ{s]X$.4$ KjS!/ *M񮷭phjn /o jn'q]2fԩvD(]G NSst#-~'kYӬzC Mw.gF3lRhTxA\¾#ЭjԎEae}7|OE@ٚ v$[09 d,w.Sq1X_")\(圼tђWP"X` $~}.`>/`چy0\͐GFƴ1K|~p :z}@#i/Kw}@̓IDUBJ!eݫS{hgmjtϞ0}81ˣ9{f5I*AO2ri&Xbt|B C#şUyZ;NW P.I$:( ] -ݾL2qV&)!& cK$1-q lM9]6+ `GŷSoG^+W򹪃8ߊyo2L9LBs]陣/>SLgG!|oxho~Љ֮㗷t w*yNlsZVϺڸ_$/eikŪKr0Ljeָ_BBj'm"su!Inv1UE&A@`>yAywsC1,٠LS<[O[tm}/{F{UjϚɢW{z؇ʲ8GKԘ? tj2u~eOaF$R0C= d-'S*Z9ho}km,b6#-C|5")mW=:hu`f>.Je䯚 %?!!~RNNymmQOݐ[|Nѭ<Ň -Z91D=Pr.-_c3`eARE휷_KPtͨDjpP|s0~>ǵ..o /6d߲[~/ !C]dTîU7EMi䇭8:ufH= \pu?:^AWpC21u˪zdB[5U4OΣ2IdhU.sIB>#0=+%&e?To@":x[/R\ajWN /v VEU2D&&9i9l \(4b\O'Pc9t-jقnȳŞ+ JI_#"i>$ifw*sx\&294:Խp(ow-ɍ2>x!M[/5` u݆KT^GOa!rN-,0a406ZZY:Zu쫮U<. 㷩7[-ۦ)95!>R{I'$ΕEu c,IDL !W!i}g 70م ֌V՗UIƸBgCx gKMDݧtSŃ><)zȀo1>;?7%\k_S]%Pb|,Ĩ1LDG^aZ.)n0ECTuB녪gDzر;ӯ4>UP'u{kc9Cw‘OMPBT9z9sŽӫr> u0[ ޻G{{X 2sr#rޥe-i8YKE5X<%φL mOSH0cPm8.|fe}͚Zz6jx|HΠ3IR4zBd̋b}R-^\ Nm?R^6p^[ a>?+p ?#RM7'Q~mUQ|\nM]SQw"ʬ C<¬ _Io J^BibRiG.oL{~Ԯ${(rFeF*GۨKXu0BtAǮp~{99NkkQsp&"^ҿ7z ~S,JتPMLQc?02D}\]brb3lbx2('k2yɹ8z"2yU2Uu hKfNUDt9ز+\ۖxap展4"w_Ζ6DCcV5?}G/p4ïJH@'z76х]P7`]gUCc_8D^GE#z#k^ug"$gF)=<%4sZ\?AĎ]c\:A3:errߑ}ͻeL9 7T}tv_ksLo!K7c 6pm)\ 4V9(c;FdtYۅ Gסx5;33{ieN$~eD2[P T$k,t'Y|ɜ^Dm})VmLU 9(s9&!+ PoGZ9/L^t[ߑ殮[Il{i$?*}'KvhdHPV RxFHZA {9uUyoGӑ3Vc@8 yg4@᫾mg7-635Y"xVPȁD|-ף ;;*fmb+EXb6©tASsT5AF-bF)&=q(T#VF8jtE .R܏:,}C^>lp@TJ# Q3e$$Q"GQ!@Cq~RT^y}K0IFAvi }xj@> D]AsJt'MZlS9*"m]pղZ&tz"Jjӕ^V*8%eC湰T"Qh%$=m@gr?Py'p0'Lplk߱o/B֔ ׿Gir:b-rI3޹jba{G}!z58ut)Vy'ZMAʤ^l6X3>qܶ DegPp9fҳ 0_Z#@CAa;'aֵ>bhZPh;{yCwc:ZuٸM`NP:Wfr'iTZYڑhP֬BuWC9[X|(|CEXa ΦD{=I(3!?;Skm9Z3" 3{'pM;ɢmR[ojMYfʹ*Kc\'м)M!ghŒĪ[Oc_-u%K g늘H~@b `r ^ЀMY]'̏ Y_8aw|vdd$1h=;AMAxV_GE^El% AOwU5M*Tc:F\,!{z|>:>m0jKC*4؉=]ǩXF``1Mfvv˰XK$Gp_&PLG:/a;a R@UqH[ ^:K[~^ %3c2 QHΦaǕP4:яm$R J7֛Q"ebSvtk:mldhYkvASiq6$ 9@u6QcA\bcIz̈́}H\lMUrBcy|~ ׆x>F ǯ2 lɁ=`AN/7ZB:uwIG_LȿzZrj]y9%o H[uo)I~˯N$쾖r(E,0'X}UIW&41S<foCi⪗i7䰚䠔`[t99GɤQZ%T69upáC{ญfF=}h'N%p@gfnuolyX`mFJg E׽tﳫ&: ]P#>F̀9ş" nI[^W窍<@k6Ϗva->3P%ªVKzV÷ 75<[O VE6d㐦اZ z+Ȱ{6Zu*2[r8'$씕;F@SӔ2enl"Ydo35 AԼYܭP<2Wޓ5a ^TzL%jwXbnL"5`t6`L8:t7% ZmȻ ۶3\h#u0WC3\Ğ#}`E(4xE>]rq1gn;H8 , EW; %Fi,o/ Uj/~$ U6퉨r[i1tѢ+yrǩgO27o)0#;00~oQ.8F.ưT , NĆ>?+FugI E1d! ؊'i%Vc]|݌zZfka´ـ?<!Pi +Ɲ\PakbX>b)܇T{2 \#r5qUK!YGBY|%OHb뀢 ;ii/h!98<0j嫙bL{A*]prF!Xx,6K!onFpA-+Ύ{^ ?F̩r7(ej4 i/r7(m<6q2%] *<%^|PwN + ! }EhQ@`3HZ^ʕrh C>}#I]R!]"pYMbc\mˊ[6U{gzMm7#v|Cdn]Z~9nӊd B 4:v"j%',B=%w6=1߽/hx /V3 4?^6ߚ/iJfM8 [F=mqFkAyNju#`>LlLγIz`x~k{ì؉TT:~<39 BϹsKSWPgІWpc0A %K(0ѸG`־4gX &Fzن6bw!a姩/-\tE+/\AUJZ~3ÀU4Rn3c&U9ׄ6@JK%4dCTdoJ!F b s{[oȋet\2d!QiL8d^."Ӧzݫ${mo̶\IdO鉉8V =fOvdjR6=MfDWPos?b/@@7\;sܴB!a('Y1N*F&}] H po5{l[ga!'cpW(*Fo}A Cʊ#4{m׳%u?& nɿ@zH>!MHa).D bʢ@}^?DΓU9BbͩT%DoH]{ L )jsi2md7B|KHuEX$[^ͷ(F[0a[{G,d-҂|ч C+D/S LuDNW lZ_R4ѥUɭn]B52پ?NE 1=֞$rm<|EG{B#aA+ep\ew.@Ē]h\Ҁ_-QXGQ!{q" C`}qo0Ҏ#zyoܯ_?(IudHa9/@TER3ȻԬsxmw;wW,,/q;^zkDU!}cr1@N&sb;%W 7:^sgIcʲq(!z]![Nb=x-g[&aq2Dllk|~pc D^PY]mo= 0(A7] PQy #jH›SU5.^̔q.M\( Y;:-z#v2!PZ!7QJgpn$4,_^flܾco0Ohre7X}3l%YҫBfl> #+4:E$u^-܍\>Y5C zb@[\nVO,#gCppyt'g݂= ҖS,uj7U S{H?\5@lb}nnE+":Y-|;βDݐ[1v}V>ׁ)5vme7j 'jd: `Pjް.WSӄU@nBG!&8vĠM\] i||Ǜ3i kx=+Rg-TxvH d" &D^Cw=Ů2I2i`1B6E KL0(Fܯ%A8.}n>$Ax*ַ n]\_vATOEm`􃈔VMs#ݍ}a^zRt6ECوyjXB8c. [ Ml%-/lĉN!׽.sWQ:6hEeor+q!9!w$40!T.&ҋI"̀(UӍ\qf<Mu;b{BSA^vm[ 4LU%T+t6kq^ @g"m!IYegPU2J0&Y=hJyB<hv'II2;.:&Uf-n 0淧m@9U xyN4Sq2hPfo'/*Bo(v;A/_ݐ. KA$rO'92zK)RB:V}=JKF;hTϗ=T8/jDf-GC9maM%'gDj|2lSN~ {Bbr]pSh{Pd* T,oR-珪Oǫ ߁QN7WR"6v\@YX& P|b4ġaLC6nMB x8\ޘ h+MwrɦAX{2W]#sэ"+ GC{6]sqMs:.olS*J2d2IWD}'hq N ;ONh8gC}<--xE NGUI$KNfD23,Ų醎$s~htC\Ikz6 \JCBFFi֕4!2ow|51yi>ƽ7)8A}kN+jP,e.qNoMtA|ҺQ8; $2 P@ 9-Cq0x7"MJ 1lTu@H =TY Rx(}R[ܜ(#`ŞOwb]U /~?ꫪz,usOxKMc WJ!LY*4XFCʐʋ1zicDe?K$ر_~q,kDb P =?^!%#mέa),\3.jOi{.P0a&Bwֹm45Χi"8YqwLv3$ نN.n^t-#0o Fm.J-k}K2A: yr%wP}TtXxm׈B ̇Ql=M#l_1#QM.^;[j,7Bn=|5̖ZQTDcTu2C92h't`E_->MT/#{@fҾ9D[ih(lt"35ҷ o{3R's#J]UFEhZe-r Z0b [Nn]ˋB$ 8Ly4|iYC@SiΚx7 7Xj®4Ρ#^̪jttlHS'̨L8qFл$mŕE7jtr$t^Oo,`CTY*G%1p\Z@{,BykPn!4_b|?(➖S՛Frei`FbwD/m0{Z]0kS;ށ<|>AW?Hrg{ 5Hϡ>zɻ*ywfm4>Gp[֘x/J>Kerى/Wvž,;3*e8n}0r +AILDTwI%i:lomd2Z(ҟׁtA y,="!Һe׬05C3}>861b_: a%"j}OY.h!&EpQcSP7%wb2:Z9="s=y1QW $;='_6g茝 -8?#5k9ZfaX=?eJՀ)e /m]}O,< #n.NMRT\I!ޙz ? 4=c8 @Q?whj(k"W C1;e4'$ڗ;ht4Pbq`vF^17 tl?Ԫw8Z a"2L=mʥq*0wLg/n9 Hu+7zñv(=ekNӱ&h8Qg;hf>R{ųl -;lw*BtWH4N‹%%wڬeߋOTO13&_WBAeA2yY+K JZ g\4ei,/U_m@RMUUoFlV%J:Ysu[4, m0ԾZ6 'KR]ܥgzz]/WAwJo2z$ާd|'I^e3C6ql?iQ4b_#L0׭%uw6D)yȃ߾v@N"* yNaշ*c"(Yم'?!>H7bW~jdXK-~ޡM!ViSk)*60'GV' .%0M憪َyjY U'v3<8RUO|xrC`qE=?HJ*뭢UWq :~"`Z椞) M ;7,dp ~^w|eg~rD2!ٜhβlL6!4YYΪµeUI- ʟ%s{ R[sPk;V^տB \1l0hN^bxKV͒~\Z=~!vkZi&\2ߤ4d̐iqq2Y.Bs+aF(X x_퉪6Kz,1EQ62whCX0֔X"Ș`}HO0c\>vՏ%G:ٿu+ X`TEйT)yem9•jJ,>&^/Ș `"_NZ89Vkز-C{m Vu.@4nQ+A^>[rv%KU cMc-U#R-'176ؖo+ AY`+, n&@PIޥ (=Jb c=bV_!%G;(™&pS;|$QUbrY#e~E=L`]0'(r 4Y g8zdJM4E, 6;ۗMu&m;Ef-Z_PҗI<=o#e?eScٖĂQm8G.<9|l|GYy !媗Jc̰ q6'z:G=W7T>ٳ?2)l]!9S&D|*}ʭ꺹PBm9|/a6q%KwSĴU`u Dq \Wf:ۥ%<>5 K blB8 jqlHM^\Ĉ-4<8ݮi4:Q*p?i)ɽ 0{ Cr]7b+,_ۈ=4IϾeE-Mp*x`@?T*е.>@Cd k̕VV;UxEָLEmF<XKJjeԏ]2بΛgh q䀤;r?ҟ,MdrK |{=F%d5^Z"Fme؋ocL;rC8学J9Ia+o;I))q+-.:cg"06Gp4A(f M.e ' Cȵ(si/%Fb];5 Du喹J ~Q-*&7qHDu3Ve4JLu:/lmS-,wqzk?G'XJw$ 4:rSԜ d䫪CJ6{pިfkiqm 'ŧMc*g1ϵ`` 4g K8hf4,IrݯvHr:R݃KZB"ս&@4u JFj:W80nXx`Rzv޲4Q/$<&UDEܙJQS˚)p8Fˌ6˽8>A>S6) g꣤o̓T:xvT;-nVo_^J+W*d|7?{6DV = қbz'"r4bfrǻfk'TwPÞB!zu5ÿYv~ӻpwgBf⌷p+̺=cE~(๣sFA*.X1}ᠫLV{n*Ҟ2ӿ][g2# G)0fu->{Bִ=(~kcp)UXv7Dnke9q9Ϭػdx6ϴ|~e A|rlW$51Ne!g[ywٚ <Zffp?O !hiN')zAȭ[g@o #`\ +4 ,8K#r-Cyn]z*$tc2G__Wm6@AmNo&89^[&wU)WI\^Y=e=GoۅKOvGO6N+ MjfTң.<Чi^ Ih!4;Hs%+`E &BQ摳ʺՐ(NB6 P-\@>Ҿq c13,a3!ފ@ѱG  \!ˮg',UR2E/SBS~rY9ħBK.:~쇘yaC`Zu9M7Bu%sQϪ3 4gW(N$E'&5؂&WRRk)HAc#EL{gɈ(a7\q߮L}-+`34}S+z|ċd@RJ.^SMY pΔT6 QTS(ϫ'p/W6F)%U'oqCcZ H1ͮAU<V0~np3yj~?ݟS2"P->WG(Vr(R&TЛ2@3yc\ǖib,_|3xR͘ةjڈ `157 oM}P#E^6P_Үe 0Ն j%ɋHZ}5oY|=y/FLOdnC2Rw8™2c(i-|"Dr5hRjRC`H;" L⌡ͧhk>Uu 2 O?pkc0ATHk%u$Si zF58kAU0DadO ?&fs6]T_DW[wyūL&=2>Mz[ 1x T? Jbݙ#|^AQrKdSo$3ာ|&cb ]lAv"Jk Ƃt0|"N &|wf (b f=D- " f6]v/rߜ-'H)t;+f9i8_4Z1N ͞~؆k唣> g1xZc?rwӃ̇&+ȹ6pϱٝ€fV^^ʠb{;'|> vJZhVAܩ\ǁ'rSTTs$]U@NA2R]k2xb0(RW7y \x9Sw.7zK(QACHsfآC!''["3 u*mOݍ)3p zm9[z ͧJ:NF2@gr0MƆ#kAK#ߡzV%aPQih(l ɮ8ҋv[NsJ%@'2hk UCeˌj+)9fo(7D`_0k$ b.}#Og :  =w{-?qٙA V/'r-)$eV _t4#[O?+_3 v3_ >Ǘr> '[2OZ#%[2+mZBE&d?p鸕Fekv-f ̶>Fud ]i);kYV%:ܝ*D˞>#/]ZPLTjVGdL-vٰ2Rs"e*$&iM>O \I.]ZXؔ s7ݸ5;F6w