# # spec file for package python-pytest-timeout # # Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %bcond_with ringdisabled %{?sle15_python_module_pythons} Name: python-pytest-timeout Version: 2.3.1 Release: 1.6 Summary: Pytest plugin to abort hanging tests License: MIT URL: https://github.com/pytest-dev/pytest-timeout/ Source: https://files.pythonhosted.org/packages/source/p/pytest-timeout/pytest-timeout-%{version}.tar.gz BuildRequires: %{python_module pytest >= 7.0.0} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-pytest >= 7.0.0 # SECTION test %if !%{with ringdisabled} BuildRequires: %{python_module pytest-cov} %endif BuildRequires: %{python_module pexpect} # /SECTION BuildArch: noarch %python_subpackages %description This is a plugin which will terminate tests after a certain timeout. When doing so it will show a stack dump of all threads running at the time. This is useful when running tests under a continuous integration server or simply if you don't know why the test suite hangs. Note that while by default on POSIX systems pytest will continue to execute the tests after a test has timed, out this is not always possible. Often the only sure way to interrupt a hanging test is by terminating the entire process. As this is a hard termination (``os._exit()``) it will result in no teardown, JUnit XML output etc. But the plugin will ensure you will have the debugging output on stderr nevertheless, which is the most important part at this stage. %prep %setup -q -n pytest-timeout-%{version} %build %python_build %install %python_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check %if %{with ringdisabled} donttest="or test_cov" %endif %pytest -k "not (donttestprefix $donttest)" %files %{python_files} %license LICENSE %doc README.rst %{python_sitelib}/pytest_timeout-%{version}*-info %{python_sitelib}/pytest_timeout.py* %pycache_only %{python_sitelib}/__pycache__/pytest_timeout*.pyc %changelog * Sat Mar 16 2024 Dirk Müller - update to 2.3.1: * Fixup some build errors, mostly README syntax which stopped twine from uploading. * Fix debugger detection for recent VSCode, this compiles pydevd using cython which is now correctly detected. * Switched to using Pytest's ``TerminalReporter`` instead of writing directly to ``sys.{stdout,stderr}``. * This change also switches all output from ``sys.stderr`` to ``sys.stdout``. * Pytest 7.0.0 is now the minimum supported version. * Add ``--session-timeout`` option and ``session_timeout`` setting. * Tue Nov 7 2023 Dirk Müller - update to 2.2.0: * Update _validate_func_only to return None so it can utilize the environment * Add --timeout-disable-debugger-detection flag * 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. * Fri Aug 19 2022 Ben Greiner - Update to 2.1.0 * Get terminal width from shutil instead of deprecated py, thanks Andrew Svetlov. * Add an API for extending ``pytest-timeout`` functionality with third-party plugins, thanks Andrew Svetlov. - Don't test with pytest-cov in Staging: Put Ring1 on coverage diet * Thu Jan 6 2022 Steve Kowalik - Update to 2.0.2: * Fix debugger detection on OSX, thanks Alexander Pacha. * Fix Python 2 removal, thanks Nicusor Picatureanu. * Increase pytest requirement to >=5.0.0. Thanks Dominic Davis-Foster. * Use thread timeout method when plugin is not called from main thread to avoid crash. * Fix pycharm debugger detection so timeouts are not triggered during debugger usage. * Dropped support for Python 2, minimum pytest version upported is 5.0.0. * Thu Nov 5 2020 Marketa Machova - Update to 1.4.2 * Fix is_debugging function * Mon Jun 29 2020 Marketa Calabkova - Update to 1.4.1 * Better detection of when we are debugging, thanks Mattwmaster58. * Thu Jan 9 2020 Tomáš Chvátal - Update to 1.3.4: * upstream moved to github * support newer pytest releases - Drop merged patch pytest4.patch * Tue Feb 12 2019 Tomáš Chvátal - Fix build with pytest4 from upstream: * pytest4.patch * Wed Nov 21 2018 Enno Gotthold - Version update to 1.3.3 * Fix support for pytest >= 3.10. * Wed Sep 19 2018 Ondřej Súkup - version update to 1.3.2 * Fix deprecation warning on Python 3.6. * Fix pytest 3.7.3 compatibility. * Tue Jul 17 2018 scarabeus@opensuse.org - Version update to 1.3.0: * Fixes for python3.7 * Various small fixes * Sun Dec 3 2017 arun@gmx.de - update to version 1.2.1: * Fix for pytest 3.3, thanks Bruno Oliveira. * Update supported python versions: + Add CPython 3.6. + Drop CPyhon 2.6 (as did pytest 3.3) + Drop CPyhon 3.3 + Drop CPyhon 3.4 * Wed Sep 6 2017 toddrme2178@gmail.com - Fix building * Mon Aug 28 2017 toddrme2178@gmail.com - Initial version