80d78a5c7e- update to 8.3.2: * Resolve regression where conda environments where no longer being automatically detected * Fix PermissionError crashes arising from directories which are not * Keyboard interrupts and system exits are now properly handled during * Fixed handling of 'Function not implemented' error under squashfuse_ll, * Fix a regression in pytest 8.2.0 where the permissions of automatically-created .pytest_cache directories became rwx------ * Fix possible catastrophic performance slowdown on a certain * Fix a regression in pytest 8.2.0 where unittest class instances were * Fix possible “Directory not empty” crashes arising from concurent cacheDirk Mueller2024-08-12 17:36:27 +00:00
fd7477cb5b- Update to 8.3.1: * New features + Added --xfail-tb flag, which turns on traceback output for XFAIL results. + Added support for keyword matching in marker expressions. + Added `--no-fold-skipped command line option. * Improvements + The console output now uses the "third-party plugins" terminology. + Python virtual environment detection was improved by checking for a pyvenv.cfg file + Do not truncate arguments to functions in output when running with -vvv. + The readability of assertion introspection of bound methods has been enhanced. + Added timezone information to the testsuite timestamp in the JUnit XML report. * Bug Fixes + Fixed reporting of teardown errors in higher-scoped fixtures when using --maxfail or --stepwise. + pytest.approx now correctly handles Sequence-like objects. + Fixed a regression in pytest 8.0 where tracebacks get longer and longer when multiple tests fail due to a shared higher-scope fixture which raised + Fixed collection error upon encountering an abstract class, including abstract unittest.TestCase subclasses. + Fixed a regression in pytest 8.0.0 where package-scoped parameterized items were not correctly reordered to minimize setups/teardowns in some cases. + Fixed crash with assert testcase is not None assertion failure when re-running unittest tests using plugins like pytest-rerunfailures. + Fixed a crash when returning category "error" or "failed"` withSteve Kowalik2024-07-23 04:34:32 +00:00
b5206c33c2Accepting request 1179873 from devel:languages:python:pytestAna Guerrero2024-06-21 14:02:42 +00:00
af97d57904- Add patch allow-re-run-regression.patch: * Fix regression in 8.2.2 that did not allow test case reruns.Steve Kowalik2024-06-11 03:04:12 +00:00
7984ab2439Accepting request 1179013 from home:mcalabkova:branches:devel:languages:python:pytestMatej Cepl2024-06-07 11:16:11 +00:00
dbd4f04da5- Update to 8.2.0: * A deprecation warning is now raised when implementations of one of the following hooks request a deprecated py.path.local parameter. * Added support for reading command line arguments from a file using the prefix character @. * Fixed a regression in pytest 8.0.0 where test classes containing setup_method and tests using @staticmethod or @classmethod would crash with AttributeError. * pluggy>=1.5.0 is now required. * Added PYTEST_VERSION environment variable which is defined at the start of the pytest session and undefined afterwards. * Improved namespace packages detection when consider_namespace_packages is enabled. * pytest.importorskip will now issue a warning if the module could be found, but raised ImportError. * Fixed error in pytest.approx when used with numpy arrays and comparing with other types. * Added the new consider_namespace_packages configuration option, defaulting to False. * Added the new verbosity_test_cases configuration option for fine-grained control of test execution verbosity. * --import-mode=importlib <import-mode-importlib> now tries to import modules using the standard import mechanism. * Added support for sys.last_exc for post-mortem debugging on Python>=3.12. * Fixed a regression in pytest 8.0.0 that would cause test collection to fail due to permission errors when using --pyargs. * Fix the stacklevel used when warning about marks used on fixtures. * Fix an edge case where ExceptionInfo._stringify_exception could crash. * Fix an IndexError crash raising from getstatementrange_ast. * PytestRemovedIn8Warning deprecation warnings are now errors by default.Steve Kowalik2024-05-06 05:25:02 +00:00
ec2dad8adcAccepting request 1147604 from devel:languages:python:pytestAna Guerrero2024-03-14 16:42:09 +00:00
7f32fb426aAccepting request 1147534 from devel:BCI:SLCS:nextMatej Cepl2024-02-19 14:29:02 +00:00
3301e576a4Accepting request 1136073 from devel:languages:python:pytestAna Guerrero2024-02-04 18:06:39 +00:00
b217aa53f2- update to 7.4.4: * Fix non-string constants at the top of file being detected as docstrings on Python>=3.8. * Handle an edge case where :data:sys.stderr and :data:sys.__stderr__ might already be closed when :ref:faulthandler is tearing down. * Fixed tracebacks from collection errors not getting pruned. * Removed unhelpful error message from assertion rewrite mechanism when exceptions are raised in `__iter__` methods. Now they are treated un-iterable instead.Dirk Mueller2024-01-02 08:25:33 +00:00
5992575bb9Accepting request 1123974 from devel:languages:python:pytestAna Guerrero2023-11-08 21:16:42 +00:00
17d2b5aa26- update to 7.4.3: * Markers are now considered in the reverse mro order to ensure base class markers are considered first -- this resolves a regression. * Fixed `:= in asserts impacting unrelated test cases. * Handled an edge case where :data:sys.stderr might already be closed when :ref:faulthandler` is tearing down.Dirk Mueller2023-11-07 12:04:03 +00:00
4630d85bf3Accepting request 1117662 from devel:languages:python:pytestAna Guerrero2023-10-15 17:25:54 +00:00
4d98e407c5Accepting request 1117634 from home:fcrozat:branches:devel:languages:python:pytestMatej Cepl2023-10-13 12:16:26 +00:00
1c7c37a658Accepting request 1112015 from devel:languages:python:pytestAna Guerrero2023-09-22 19:46:51 +00:00
b4622bb3a6- update to 7.4.2: * Fix doctest collection of functools.cached_property objects. * Fixed bug using `--importmode=importlib which would cause package __init__.py files to be imported more than once in some cases. * Fixed bug where user_properties` where not being saved in the JUnit XML file if a fixture failed during teardown. * Fixed crash when parsing long command line arguments that might be interpreted as files. * Improved Documentation * Improved disclaimer on pytest plugin reference page to better indicate this is an automated, non-curated listing. - drop fix-test-raising-repr.patch, fix-tests-pygments-2.14.0.patch: https://docs.pytest.org/en/7.1.x/changelog.html for details assert actual == pytest.approx(expected) * pytest used to create directories under /tmp with world-readable permissions. This means that any user in the system was able to read information written by tests in temporary directories (such as those created by the tmp_path/tmpdir fixture). Now the * #8152: Fixed "(<Skipped instance>)" being shown as a skip reason in the * #8249: Fix the faulthandler plugin for occasions when running with * The @pytest.yield_fixture decorator/function is now deprecated. * Verbose mode now shows the reason that a test was skipped in the * pytest now warns about unraisable exceptions and unhandled thread * New pytester fixture, which is identical to testdir but its methods * It is now possible to construct a MonkeyPatch object directly as pytest.MonkeyPatch(),Dirk Mueller2023-09-18 15:07:59 +00:00
9585d10b7cAccepting request 1111052 from devel:languages:python:pytestAna Guerrero2023-09-17 17:28:40 +00:00
0c1e0b01d9- update to 7.4.1: * Fixed bug where fake intermediate modules generated by `--import-mode=importlib would not include the child modules as attributes of the parent modules. * Fixed error assertion handling in :func:pytest.approx when None is an expected or received value when comparing dictionaries. * Fixed issue when using --import-mode=importlib together with --doctest- modules` that caused modules to be imported more than once, causing problems with modules that have import side effects.Dirk Mueller2023-09-07 08:56:31 +00:00
d408a413e7Accepting request 1100056 from devel:languages:python:pytestAna Guerrero2023-07-27 14:50:35 +00:00
bcd70373b1- update to 7.4.0: * Added :func:ExceptionInfo.from_exception() <pytest.ExceptionInfo.from_exception>, a simpler way to create an :class:~pytest.ExceptionInfo from an exception. This can replace :func:ExceptionInfo.from_exc_info() <pytest.ExceptionInfo.from_exc_info()> for most uses. * Update test log report annotation to named tuple and fixed inconsistency in docs for 🪝pytest_report_teststatus hook. * When an exception traceback to be displayed is completely filtered out (by mechanisms such as `__tracebackhide__, internal frames, and similar), now only the exception string and the following message are shown: "All traceback entries are hidden. Pass --full-trace to see hidden and internal frames.". * Improved verbose output (-vv) of skip and xfail reasons by performing text wrapping while leaving a clear margin for progress output. * Added TerminalReporter.wrap_write() as a helper for that. * Added handling of %f directive to print microseconds in log format options, such as log-date-format. * Added the underlying exception to the cache provider's path creation and write warning messages. * Added warning when :confval:testpaths` is set, but paths are not found by glob. In this case, pytest will fall back to searching from the current directory.Dirk Mueller2023-07-15 15:06:57 +00:00
f79ef73de4- update to 7.3.2: * Fix bug where very long option names could cause pytest to break with `OSError: [Errno 36] File name too long on some systems. * Support for Python 3.12 * honored to load root conftests. * The monkeypatchsetitem/delitem type annotations now allow TypedDict arguments. * Fixed bug in assertion rewriting where a variable assigned with the walrus operator could not be used later in a function call. * Fixed --last-failed's "(skipped N files)" functionality for files inside of packages (directories with __init__.py` files).Dirk Mueller2023-06-19 20:14:34 +00:00
5bf432e390- update to 7.3.1: * Python 3.12 support - update to 7.3.0: * --log-disable CLI option added to disable individual loggers. * Added tmp_path_retention_count and tmp_path_retention_policy configuration options to control how directories created by the tmp_path fixture are kept. * For list of omprovements and bugfixes, please read https://docs.pytest.org/en/stable/changelog.html#pytest-7-3-0-2023-04-08Dirk Mueller2023-05-04 23:28:15 +00:00
18316d2a99- update to 7.2.2: * Fixed :func:pytest.approx handling of dictionaries containing one or more values of 0.0. * Fixed crash if --cache-show and --help are passed at the same time. * Fixed bug where a fixture method named `teardown would be called as part of nose teardown stage. * Fixed crash if --fixtures and --help are passed at the same time. * Fixed :py:func:pytest.raises to return a 'ContextManager' so that type-checkers could narrow :code:pytest.raises(...) if ... else nullcontext()` down to 'ContextManager' rather than 'object'. * Fix 'importlib.abc.TraversableResources' deprecation warning in Python 3.12. * If a test is skipped from inside a fixture, the test summary now shows the test location instead of the fixture location. * Fix a race condition when creating junitxml reports, which could occur when multiple instances of pytest execute in parallel. * Fix a race condition when creating or updating the stepwise plugin's cache, which could occur when multiple xdist worker nodes try to simultaneously update the stepwise plugin's cache. - drop fix-test-raising-repr.patch, fix-tests-pygments-2.14.0.patch: merged upstreamDirk Mueller2023-05-04 23:06:15 +00:00
3cb666870c- Add fix-tests-pygments-2.14.0.patch to make it work with pygments 2.14.0 gh#pytest-dev/pytest#10632Daniel Garcia2023-01-04 10:17:29 +00:00
4f2e4b3c5b- Add fix-test-raising-repr.patch gh#pytest-dev/pytest#10473, this make it compatible with latest release of python-exceptiongroupDaniel Garcia2022-12-05 08:53:03 +00:00
e92f34a15e- Remove python_module macro definition - Update to 7.2.0: # Deprecations - #10012: Update pytest.PytestUnhandledCoroutineWarning{.interpreted-text role="class"} to a deprecation; it will raise an error in pytest 8. - #10396: pytest no longer depends on the py library. pytest provides a vendored copy of py.error and py.path modules but will use the py library if it is installed. If you need other py.* modules, continue to install the deprecated py library separately, otherwise it can usually be removed as a dependency. - #4562: Deprecate configuring hook specs/impls using attributes/marks. - Instead use :pypytest.hookimpl{.interpreted-text role="func"} and :pypytest.hookspec{.interpreted-text role="func"}. For more details, see the docs <legacy-path-hooks-deprecated>{.interpreted-text role="ref"}. - #9886: The functionality for running tests written for nose has been officially deprecated. This includes: * Plain setup and teardown functions and methods: this might catch users by surprise, as setup() and teardown() are not pytest idioms, but part of the nose support. * Setup/teardown using the @with_setup decorator. For more details, consult the deprecation docs <nose-deprecation>{.interpreted-text role="ref"}. # Features - #9897: Added shell-style wildcard support to testpaths. # Improvements - #10218: @pytest.mark.parametrize() (and similar functions) now accepts any Sequence[str] for the argument names, instead of just list[str] and tuple[str, ...].Daniel Garcia2022-11-29 13:20:25 +00:00
83b0a6b3e6- Rebase and re-add tidy-up-embeddedfile.patch, it was only partially merged upstream.Steve Kowalik2020-06-09 07:48:24 +00:00
2054858c86- update to 5.4.3 * Paths appearing in error messages are now correct in case the current working directory has changed since the start of the session. * Support deleting paths longer than 260 characters on windows created inside tmpdir. * Prevent pytest from printing ConftestImportFailure traceback to stdout. * Prevent hiding the underlying exception when ConfTestImportFailure is raised. * Fix regression where running with --pdb would call the tearDown methods of unittest.TestCase subclasses for skipped tests.Ondřej Súkup2020-06-05 09:05:35 +00:00
e5cc71706cAccepting request 802880 from devel:languages:python:pytestYuchen Lin2020-05-28 07:04:51 +00:00
6f5d36c6cb- Update to 5.4.2 * Fix crash with captured output when using the capsysbinary fixture. * Ensure a unittest.IsolatedAsyncioTestCase is actually awaited. * Fix TerminalRepr instances to be hashable again. * Fix regression where functions registered with TestCase.addCleanup were not being called on test failures. * Allow users to still set the deprecated TerminalReporter.writer attribute. * Revert “tmpdir: clean up indirection via config for factories * Fixed regression: asyncbase.TestCase tests are executed correctly again * Fix File.from_constructor so it forwards extra keyword arguments to the constructor. * Classes with broken __getattribute__ methods are displayed correctly during failures. * Fix _is_setup_py for files encoded differently than locale.Ondřej Súkup2020-05-12 08:51:56 +00:00
8e7c7e2185- Update to 5.4.1: * #6909: Revert the change introduced by #6330, which required all arguments to @pytest.mark.parametrize to be explicitly defined in the function signature. * #6910: Fix crash when plugins return an unknown stats while using the --reportlog option. * #6316: Matching of -k EXPRESSION to test names is now case-insensitive. * #6443: Plugins specified with -p are now loaded after internal plugins * #6637: Removed the long-deprecated pytest_itemstart hook. * #6673: Reversed / fix meaning of “+/-” in error diffs. “-” means that sth. expected is missing in the result and “+” means that there are unexpected extras in the result. - Remove merged patch tidy-up-embeddedfile.patch
Tomáš Chvátal
2020-04-27 10:52:01 +00:00
1e1e42c326- Update to 5.3.5 * Captured output during teardown is shown with -rP * Fix a pytest-xdist crash when dealing with exceptions raised in subprocesses created by the multiprocessing module. * FixtureDef objects now properly register their finalizers with autouse and parameterized fixtures that execute before them in the fixture stack so they are torn down at the right times, and in the right order. * Fix parsing of outcomes containing multiple errors with testdir resultsOndřej Súkup2020-02-19 09:59:41 +00:00
6b44b04739- Update to 5.3.2: * junitxml: Logs for failed test are now passed to junit report in case the test fails during call phase. * supporting files in the .pytest_cache directory are kept with --cache-clear, which only clears cached values now. * Fix assertion rewriting for egg-based distributions and editable installs (pip install --editable). * Improve check for misspelling of pytest.mark.parametrize. * Handle exit.Exception raised in notify_exception (via pytest_internalerror), e.g. when quitting pdb from post mortem. * default value of junit_family option will change to xunit2 in pytest 6.0, given that this is the version supported by default in modern tools that manipulate this type of file. * In order to smooth the transition, pytest will issue a warning in case the --junitxml option is given in the command line but junit_family is not explicitly configured in pytest.ini.
Tomáš Chvátal
2020-01-06 13:33:58 +00:00
17349c8eef- Update to 5.2.4: * #6099: Fix --trace when used with parametrized functions. * #6183: Using request as a parameter name in @pytest.mark.parametrize now produces a more user-friendly error. * #6194: Fix incorrect discovery of non-test __init__.py files.
Tomáš Chvátal
2019-11-18 08:23:25 +00:00
5cc202ac30- Update to 5.2.2: * #5206: Fix --nf to not forget about known nodeids with partial test selection. * #5906: Fix crash with KeyboardInterrupt during --setup-show. * #5946: Fixed issue when parametrizing fixtures with numpy arrays (and possibly other sequence-like types). * #6044: Properly ignore FileNotFoundError exceptions when trying to remove old temporary directories, for instance when multiple processes try to remove the same directory (common with pytest-xdist for example).
Tomáš Chvátal
2019-11-05 11:23:30 +00:00