- Fix missing teardown for session and module scoped fixtures when fixture teardown fails. Fixes #314.
- Drop support for Python 3.9.
- Changed "localhost" to "127.0.0.1" to avoid bad hostname resolution.
- Added
--force-rerunsto override rerun count globally. Fixes #306.
- Reverted the ability to access error attributes because of an incompatibility with pytest-xdist. Fixes #302, #303.
- Drop support for pytest < 8.
- Add support for pytest 8.4.x.
- Add support for upcoming Python 3.14.
- Allow
@pytest.mark.flaky(condition)to accept a callable or a string to be evaluated. The evaluated string has access to the exception instance via theerrorobject. (#230)
- Fix
--fail-on-flakyoption to fail the test run with custom exit code only when reruns are detected. (#287) - Switched to using the SPDX license identifier in the project metadata.
- Change exception filtering logic to match
AssertionErrorraised viaassertstatements when filtering by "AssertionError". (#292)
- Drop support for Python 3.8.
- Drop support for pytest < 7.4.
- Fix compatibility with pytest 8.2. (#267)
- Add support for pytest 8.2, 8.3.
- Add
--fail-on-flakyoption to fail the test run with custom exit code when test passed on rerun.
- Fix missing teardown for non-function scoped fixtures when using only_rerun or rerun_except queries. (#234) and (#241)
- Drop support for Python 3.7.
- Drop support for pytest < 7.2.
- Add support for pytest 8.0, 8.1.
- Drop support for pytest < 7.0.
- Add support for Python 3.12.
- Fix crashitem names mismatch between client and server. (#172)
- Fix crash when setup fails with --rerun-except flag. (#230)
- Drop support for pytest < 6.2.
- Add
only_rerunandrerun_exceptarguments to@pytest.mark.flakymarker. - Add support for pytest 7.3, 7.4.
- Failures are now rerun only if they match at least one
--only-rerunpattern (if given) and none of the--rerun-exceptpatterns. Previously, using both--only-rerunand--rerun-excepttogether could cause failures to be rerun even if they did not match any--only-rerunpattern, and when using multiple--rerun-exceptpatterns, all failures would be rerun unless they matched every pattern. (#225)
- Execute teardown when test was skipped in setup phase of a fixture.
- Fix crash during teardown when runtest protocol hook is overwritten by another plugin.
- Fix crash during teardown when TestCase class is used as base class.
- Run teardown of session, class, ... scoped fixtures only once after rerunning tests
- Expose
rerunsandreruns_delaythroughpytest.inifile.
- Drop support for Python 3.6.
- Drop support for pytest < 6.
- Fix crash when pytest-xdist is installed but disabled. (Thanks to @mgorny for the PR.)
- Fix crash when xfail(strict=True) mark is used with --rerun-only flag.
- Added option
--rerun-exceptto rerun failed tests those are other than the mentioned Error. - Add support for Python 3.11.
- Add support for pytest 7.0, 7.1, 7.2.
- Allow recovery from crashed tests with pytest-xdist.
- Add support for Python 3.10 (as of Python 3.10.rc2). (Thanks to @hugovk for the PR.)
- Allows using a
stras condition for@pytest.mark.flaky(condition)which gets evaluated dynamically similarly to@pytest.mark.skipif(condition). (#162 provided by @15klli)
- Drop support for Python 3.5.
- Drop support for pytest < 5.3.
- Add
conditionkeyword argument to the re-run marker. (Thanks to @BeyondEvil for the PR.) - Add support for Python 3.9. (Thanks to @digitronik for the PR.)
- Add support for pytest 6.3. (Thanks to @bluetech for the PR.)
- Add compatibility with
pytest-xdist >= 2.0. (Thanks to @bluetech for the PR.)
- Check for the resultlog by feature and not by version as pytest master does not provide a consistent version.
- Ignore
--result-logcommand line option when used together withpytest >= 6.1.0, as it was removed there. This is a quick fix, use an older version of pytest, if you want to keep this feature for now. (Thanks to @ntessore for the PR) - Support up to pytest 6.1.0.
- Add a new flag
--only-rerunto allow for users to rerun only certain errors.
- Drop dependency on
mock. - Add support for pre-commit and add a linting tox target. (#117) (PR from @gnikonorov)
- Drop support for pytest version 4.4, 4.5 and 4.6.
- Drop support for Python 2.7.
- Add support for pytest 5.4.
- Add support for Python 3.8.
- Drop support for pytest version 3.10, 4.0, 4.1, 4.2 and 4.3
- Drop support for Python 3.4.
- Add support for pytest version 4.4, 4.5, 4.6, 5.0, 5.1 and 5.2.
- Explicitly depend on setuptools to ensure installation when working in environments without it. (#98) (PR from @Eric-Arellano)
- Drop support for pytest version 3.8 and 3.9.
- Add support for pytest version 4.2 and 4.3.
- Fixed #83 issue about ignored
pytest_runtest_logfinishhooks. (#83) (PR from @KillAChicken)
- Drop support for pytest version 3.6 and 3.7.
- Add support for pytest version 4.0 and 4.1.
- Fixed #77 regression issue introduced in 4.2 related to the
rerunattribute on the test report. (#77) (Thanks to @RibeiroAna for the PR).
- Drop support for pytest versions < 3.6 to reduce the maintenance burden.
- Add support up to pytest version 3.10. Thus supporting the newest 5 pytest releases.
- Add support for Python 3.7.
- Fix issue can occur when used together with
pytest-flake8(#73)
- Fixed #64 issue related to
setup_classandfixtureexecutions on rerun (Thanks to @OlegKuzovkov for the PR). - Added new
execution_countattribute to reflect the number of test case executions according to #67 issue. (Thanks to @OlegKuzovkov for the PR).
- Add support for pytest 3.6 by using
Node.get_closest_marker()(Thanks to @The-Compiler for the PR).
- Added option to add a delay time between test re-runs (Thanks to @Kanguros for the PR).
- Added support for pytest >= 3.3.
- Drop support for pytest < 2.8.7.
- Restored compatibility with pytest-xdist. (Thanks to @davehunt for the PR)
- Add support for Python 3.6.
- Add support for pytest 2.9 up to 3.2
- Drop support for Python 2.6 and 3.3.
- Drop support for pytest < 2.7.
- Ensure that other plugins can run after this one, in case of a global setting
--rerun=0. (Thanks to @sublee for the PR)
- Add default value of
reruns=1ifpytest.mark.flaky()is called without arguments. - Also offer a distribution as universal wheel. (Thanks to @tltx for the PR)
- Prepare CLI options to pytest 3.0, to avoid a deprecation warning.
- Fix error due to missing CHANGES.rst when creating the source distribution by adding a MANIFEST.in.
- Drop support for Python 3.2, since supporting it became too much of a hassle. (Reason: Virtualenv 14+ / PIP 8+ do not support Python 3.2 anymore.)
- Add support for
--resultlogoption by parsing reruns accordingly. (#28)
- Improve package description and include CHANGELOG into description.
- Rewrite to use newer API of pytest >= 2.3.0
- Improve support for pytest-xdist by only logging the final result. (Logging intermediate results will finish the test rather rerunning it.)