|
|
|
|
Changelog for python311-pytest-8.3.2-1.1.noarch.rpm :
* Mon Aug 12 2024 Dirk Müller - update to 8.3.2: * Resolve regression where `conda` environments where no longer being automatically detected * Tue Jul 23 2024 Steve Kowalik - 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\"`` with a custom test status from :hook:`pytest_report_teststatus` hook. + Improved handling of invalid regex patterns in pytest.raises(match=r\'...\') by providing a clear error message. + Parametrization parameters are now compared using == instead of is (is is still used as a fallback if the parameter does not support ==). + Fixed progress percentages sometimes not aligning correctly when running with pytest-xdist -n.- Drop patch allow-re-run-regression.patch: Included. * Tue Jun 11 2024 Steve Kowalik - Add patch allow-re-run-regression.patch: * Fix regression in 8.2.2 that did not allow test case reruns. * Thu Jun 06 2024 Markéta Machová - Update to 8.2.2 * Support for Python 3.13 (beta1 at the time of writing). * Fix `PermissionError` crashes arising from directories which are not selected on the command-line. * Keyboard interrupts and system exits are now properly handled during the test collection. * Fixed handling of \'Function not implemented\' error under squashfuse_ll, which is a different way to say that the mountpoint is read-only. * Fix a regression in pytest 8.2.0 where the permissions of automatically-created .pytest_cache directories became rwx------ instead of the expected rwxr-xr-x. * Fix possible catastrophic performance slowdown on a certain parametrization pattern involving many higher-scoped parameters. * Fix a regression in pytest 8.2.0 where unittest class instances were not released promptly on test teardown but only on session teardown. * Fix possible “Directory not empty” crashes arising from concurent cache dir (.pytest_cache) creation. Regressed in pytest 8.2.0. * Mon May 06 2024 Steve Kowalik - 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 AATT. * Fixed a regression in pytest 8.0.0 where test classes containing setup_method and tests using AATTstaticmethod or AATTclassmethod 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 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. * Dropped support for Python 3.7. * Files and directories are now collected in alphabetical order jointly. * Sanitized the handling of the default parameter when defining configuration options. * Avoid microsecond exceeds 1_000_000 when using log-date-format with %f specifier.- Switch to pyproject macros. * Mon Feb 19 2024 Dan Čermák - Add python version constraints to Requires & BuildRequires * Tue Jan 02 2024 Dirk Müller - 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. * Tue Nov 07 2023 Dirk Müller - 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. * Mon Sep 18 2023 Dirk Müller - 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. * Thu Sep 07 2023 Dirk Müller - 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. * Sat Jul 15 2023 Dirk Müller - update to 7.4.0: * Added :func:`ExceptionInfo.from_exception() `, a simpler way to create an :class:`~pytest.ExceptionInfo` from an exception. This can replace :func:`ExceptionInfo.from_exc_info() ` for most uses. * Update test log report annotation to named tuple and fixed inconsistency in docs for :hook:`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. * When `--confcutdir` is not specified, and there is no config file present, the conftest cutoff directory (`--confcutdir`) is now set to the :ref:`rootdir `. * Previously in such cases, `conftest.py` files would be probed all the way to the root directory of the filesystem. * If you are badly affected by this change, consider adding an empty config file to your desired cutoff directory, or explicitly set `--confcutdir`. * The :confval:`norecursedirs` check is now performed in a :hook:`pytest_ignore_collect` implementation, so plugins can affect it. * If after updating to this version you see that your `norecursedirs` setting is not being respected, * it means that a conftest or a plugin you use has a bad `pytest_ignore_collect` implementation. * Most likely, your hook returns `False` for paths it does not want to ignore which ends the processing and doesn\'t allow other plugins, including pytest itself, to ignore the path. * The fix is to return `None` instead of `False` for paths your hook doesn\'t want to ignore. * :func:`caplog.set_level() ` and :func:`caplog.at_level() ` will temporarily enable the requested ``level`` if ``level`` was disabled globally via ``logging.disable(LEVEL)``. * Mon Jun 19 2023 Dirk Müller - 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 `monkeypatch` `setitem`/`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). * Tue Jun 13 2023 Daniel Garcia - Disable tests that uses pexpect to avoid timeout error when running in OBS. bsc#1212229 * Thu May 04 2023 Dirk Müller - 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-08 * Thu May 04 2023 Dirk Müller - 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 upstream * Fri Apr 21 2023 Dirk Müller - add sle15_python_module_pythons (jsc#PED-68) * Thu Apr 13 2023 Matej Cepl - Make calling of %{sle15modernpython} optional. * Thu Mar 16 2023 Daniel Garcia - Disable broken tests with latest setuptools, gh#pytest-dev/pytest#10815 * Wed Jan 04 2023 Daniel Garcia - Add fix-tests-pygments-2.14.0.patch to make it work with pygments 2.14.0 gh#pytest-dev/pytest#10632 * Mon Dec 05 2022 Daniel Garcia - Add fix-test-raising-repr.patch gh#pytest-dev/pytest#10473, this make it compatible with latest release of python-exceptiongroup * Tue Nov 29 2022 Daniel Garcia - 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 {.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 AATTwith_setup decorator. For more details, consult the deprecation docs {.interpreted-text role=\"ref\"}. [#] Features - #9897: Added shell-style wildcard support to testpaths. [#] Improvements - #10218: AATTpytest.mark.parametrize() (and similar functions) now accepts any Sequence[str] for the argument names, instead of just list[str] and tuple[str, ...]. (Note that str, which is itself a Sequence[str], is still treated as a comma-delimited name list, as before). - #10381: The --no-showlocals flag has been added. This can be passed directly to tests to override --showlocals declared through addopts. - #3426: Assertion failures with strings in NFC and NFD forms that normalize to the same string now have a dedicated error message detailing the issue, and their utf-8 representation is expresed instead. - #7337: A warning is now emitted if a test function returns something other than [None]{.title-ref}. This prevents a common mistake among beginners that expect that returning a [bool]{.title-ref} (for example [return foo(a, b) == result]{.title-ref}) would cause a test to pass or fail, instead of using [assert]{.title-ref}. - #8508: Introduce multiline display for warning matching via :pypytest.warns{.interpreted-text role=\"func\"} and enhance match comparison for :py_pytest._code.ExceptionInfo.match{.interpreted-text role=\"func\"} as returned by :pypytest.raises{.interpreted-text role=\"func\"}. - #8646: Improve :pypytest.raises{.interpreted-text role=\"func\"}. Previously passing an empty tuple would give a confusing error. We now raise immediately with a more helpful message. - #9741: On Python 3.11, use the standard library\'s tomllib{.interpreted-text role=\"mod\"} to parse TOML. tomli{.interpreted-text role=\"mod\"}` is no longer a dependency on Python 3.11. - #9742: Display assertion message without escaped newline characters with - vv. - #9823: Improved error message that is shown when no collector is found for a given file. - #9873: Some coloring has been added to the short test summary. - #9883: Normalize the help description of all command-line options. - #9920: Display full crash messages in short test summary info, when runng in a CI environment. - #9987: Added support for hidden configuration file by allowing .pytest.ini as an alternative to pytest.ini. [#] Bug Fixes - #10150: sys.stdin{.interpreted-text role=\"data\"} now contains all expected methods of a file-like object when capture is enabled. - #10382: Do not break into pdb when raise unittest.SkipTest() appears top-level in a file. - #7792: Marks are now inherited according to the full MRO in test classes. Previously, if a test class inherited from two or more classes, only marks from the first super-class would apply. When inheriting marks from super-classes, marks from the sub-classes are now ordered before marks from the super-classes, in MRO order. Previously it was the reverse. When inheriting marks from super-classes, the [pytestmark]{.title-ref} attribute of the sub-class now only contains the marks directly applied to it. Previously, it also contained marks from its super-classes. Please note that this attribute should not normally be accessed directly; use pytest.Node.iter_markers{.interpreted-text role=\"func\"} instead. - #9159: Showing inner exceptions by forcing native display in ExceptionGroups even when using display options other than --tb=native. A temporary step before full implementation of pytest-native display for inner exceptions in ExceptionGroups. - #9877: Ensure caplog.get_records(when) returns current/correct data after invoking caplog.clear(). [#] Improved Documentation - #10344: Update information on writing plugins to use pyproject.toml instead of setup.py. - #9248: The documentation is now built using Sphinx 5.x (up from 3.x previously). - #9291: Update documentation on how pytest.warns{.interpreted-text role=\"func\"} affects DeprecationWarning{.interpreted-text role=\"class\"}.- pytest 7.1.3 (2022-08-31) [#] Bug Fixes - #10060: When running with --pdb, TestCase.tearDown is no longer called for tests when the class has been skipped via unittest.skip or pytest.mark.skip. - #10190: Invalid XML characters in setup or teardown error messages are now properly escaped for JUnit XML reports. - #10230: Ignore .py files created by pyproject.toml-based editable builds introduced in pip 21.3. - #3396: Doctests now respect the --import-mode flag. - #9514: Type-annotate FixtureRequest.param as Any as a stop gap measure until 8073{.interpreted-text role=\"issue\"} is fixed. - #9791: Fixed a path handling code in rewrite.py that seems to work fine, but was incorrect and fails in some systems. - #9917: Fixed string representation for pytest.approx{.interpreted-text role=\"func\"} when used to compare tuples. [#] Improved Documentation - #9937: Explicit note that tmpdir{.interpreted-text role=\"fixture\"} fixture is discouraged in favour of tmp_path{.interpreted-text role=\"fixture\"}. * Fri Aug 05 2022 Ben Greiner - Update to 7.1.2 * #9726: An unnecessary numpy import inside pytest.approx{.interpreted-text role=\"func\"} was removed. * #9820: Fix comparison of dataclasses with InitVar. * #9869: Increase stacklevel for the NODE_CTOR_FSPATH_ARG deprecation to point to the user\'s code, not pytest. * #9871: Fix a bizarre (and fortunately rare) bug where the [temp_path]{.title-ref} fixture could raise an internal error while attempting to get the current user\'s username. * Fri Mar 25 2022 Ben Greiner - Update to 7.1.1 * #9767: Fixed a regression in pytest 7.1.0 where some conftest.py files outside of the source tree (e.g. in the [site-packages]{.title-ref} directory) were not picked up.- python-pytest5 is gone. Remove the libalts stopgap * Sun Mar 13 2022 Ben Greiner - Update to 7.1.0 * Big changelog for 7.x series, see https://docs.pytest.org/en/7.1.x/changelog.html for details- Breaking changes: * #8838: As per our policy, the following features have been deprecated in the 6.X series and are now removed: + pytest._fillfuncargs function. + pytest_warning_captured hook - use pytest_warning_recorded instead. + -k -foobar syntax - use -k \'not foobar\' instead. + -k foobar: syntax. * pytest.collect module - import from pytest directly. * #9437: Dropped support for Python 3.6, which reached end-of-life at 2021-12-23. * #7259: The Node.reportinfo() function first return value type has been expanded from py.path.local | str to os.PathLike[str] | str. Most plugins which refer to reportinfo() only define it as part of a custom pytest.Item implementation. Since py.path.local is a os.PathLike[str], these plugins are unaffacted. Plugins and users which call reportinfo(), use the first return value and interact with it as a py.path.local, would need to adjust by calling py.path.local(fspath). Although preferably, avoid the legacy py.path.local and use pathlib.Path, or use item.location or item.path, instead. Note: pytest was not able to provide a deprecation period for this change. * #8246: --version now writes version information to stdout rather than stderr. * #8733: Drop a workaround for pyreadline that made it work with - -pdb. The workaround was introduced in #1281 in 2015, however since then pyreadline seems to have gone unmaintained, is generating warnings, and will stop working on Python 3.10. * #9061: Using pytest.approx() in a boolean context now raises an error hinting at the proper usage. It is apparently common for users to mistakenly use pytest.approx like this: assert pytest.approx(actual, expected) While the correct usage is: assert actual == pytest.approx(expected) The new error message helps catch those mistakes. * #9277: The pytest.Instance collector type has been removed. Importing pytest.Instance or _pytest.python.Instance returns a dummy type and emits a deprecation warning. See The pytest.Instance collector for details. * If you have concerns about the removal of a specific feature, please add a comment to issue #9308.- Drop patches * pytest-pr8664-py3.10-test_trial_error-fail.patch * pytest-pr9173-importlib-py310.patch * pytest-pr9417-py3.10.1-fail.patch * Tue Dec 28 2021 Ben Greiner - Add patch pytest-pr9173-importlib-py310.patch * gh#pytest-dev/pytest#9173 * refresh pytest-pr9417-py3.10.1-fail.patch * fixes asdf related errors: gh#asdf-format/asdf#1027 * Mon Dec 20 2021 Matej Cepl - Using URLs for Patches looks like a great idea, but it is too unstable. Please, don\'t. * Sun Dec 19 2021 Ben Greiner - Add pytest-pr8664-py3.10-test_trial_error-fail.patch * gh#pytest-dev/pytest#8664- Add pytest-pr9417-py3.10.1-fail.patch * gh#pytest-dev/pytest#9417- Disable libalternatives usage until all python-pytest * packages are on the same page (see sr#926611) * Wed Oct 20 2021 schubi - Disable all update-alternatives install calls if libalternatives is used. * Fri Oct 01 2021 Stefan Schubert - Use libalternatives instead of update-alternatives. * Tue Sep 14 2021 Ondřej Súkup - update to 6.2.5 * Python 3.10 is now supported. * Enable compatibility with pluggy 1.0 or later. * Fri May 14 2021 Markéta Machová - Update to 6.2.4 * 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 directories are created with private permissions. * Fixed assertion rewriting on Python 3.10. * Sun Feb 14 2021 Ben Greiner - Don\'t require python36-numpy for testing, because Tumbleweed cannot provide python36-numpy any longer: NumPy 1.20 dropped Python 3.6 support. The tests are skipped automatically. * Thu Feb 11 2021 Michael Ströder - Update to 6.2.2 * #8152: Fixed \"()\" being shown as a skip reason in the verbose test summary line when the reason is empty. * #8249: Fix the faulthandler plugin for occasions when running with twisted.logger and using pytest --capture=no. * Tue Jan 05 2021 Markéta Machová - Update to 6.2.1 * pytest now supports python3.6+ only. * Directly constructing/calling some classes/functions is now deprecated (see upstream changelog) * The AATTpytest.yield_fixture decorator/function is now deprecated. Use pytest.fixture() instead. * No removals so far. * Verbose mode now shows the reason that a test was skipped in the test’s terminal line after the “SKIPPED”, “XFAIL” or “XPASS”. * pytest now warns about unraisable exceptions and unhandled thread exceptions that occur in tests on Python>=3.8. * New pytester fixture, which is identical to testdir but its methods return pathlib.Path when appropriate instead of py.path.local. * It is now possible to construct a MonkeyPatch object directly as pytest.MonkeyPatch(), in cases when the monkeypatch fixture cannot be used. * Many more new features and bugfixes
|
|
|