commit 74dc0a81cca0c00e17bb4223d9830916fa88a1a574a17aab9e4051a9bd22699a Author: Nico Krapp Date: Wed Aug 6 16:11:47 2025 +0000 - Update to 4.2.0 * Bugfix: make repo initialization respect pyproject.toml * Test on Python 3.12 * Disable checks failure on coverage * Pivot PyPI publishing to use trusted publishers * Update package metadata for support Python versions * Remove Python 3.7 support * Bump codecov action version * Remove dependency on the extras library * Normalize paths * Adapt to tox 4 * Update upload-artifact action in CI * Update black to the latest version * Mark Python 3.13 as supported too * Adjust rst syntax in README * Modernize Python packaging * Update release job to work with new packaging structure - Add support for libalternatives - Remove ChangeLog from %files section - Update BuildRequires from pyproject.toml - Use Python 3.11 on SLE-15 by default OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-stestr?expand=0&rev=58 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..fcc7b97 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + test + diff --git a/python-stestr.changes b/python-stestr.changes new file mode 100644 index 0000000..18d98f2 --- /dev/null +++ b/python-stestr.changes @@ -0,0 +1,358 @@ +------------------------------------------------------------------- +Tue Aug 5 11:06:42 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 4.2.0 + * Bugfix: make repo initialization respect pyproject.toml + * Test on Python 3.12 + * Disable checks failure on coverage + * Pivot PyPI publishing to use trusted publishers + * Update package metadata for support Python versions + * Remove Python 3.7 support + * Bump codecov action version + * Remove dependency on the extras library + * Normalize paths + * Adapt to tox 4 + * Update upload-artifact action in CI + * Update black to the latest version + * Mark Python 3.13 as supported too + * Adjust rst syntax in README + * Modernize Python packaging + * Update release job to work with new packaging structure +- Add support for libalternatives +- Remove ChangeLog from %files section +- Update BuildRequires from pyproject.toml +- Use Python 3.11 on SLE-15 by default + +------------------------------------------------------------------- +Thu Jan 4 23:06:52 UTC 2024 - Dirk Müller + +- switch to singlespec cliff package + +------------------------------------------------------------------- +Mon Dec 4 10:52:17 UTC 2023 - Dirk Müller + +- update to 4.1.0: + * This stestr release is a feature release that primarily fixes + compatibility with subunit 1.4.3 and initial compatibility + with Python 3.12. + * Apply black autoformatter to code base + * Reuse subunit_trace output/validation logic for load/run + * Revert "Fix #330 - Preserve load-list order" + * Remove vestigial future package from requirements + * Pin black to 2022 version + * Fix ResourceWarning from SubunitTestRunner._list() + * Add support for storing stestr configs in pyproject.toml + * Adding another prefix to the existing list of + unittest_import_strs + * Update docs job to avoid setup.py entrypoint + * Replace removed SafeConfigParser with ConfigParser + * Explicitly list extras as dependency +- drop remove-future-requirement.patch (upstream) + +------------------------------------------------------------------- +Tue Sep 5 06:09:11 UTC 2023 - Steve Kowalik + +- Update to 4.0.1: + * Fixed an issue around the unittest runner unexpectedly not running the + requested tests (or executing them in an unexpected order) causing odd + failures that were difficult to debug. + * Fixed the output handling of stestr run and stestr load so that any + segfaults or unexpected failures in a test worker are now properly + reported in the subunit-trace output. + * Drops support for the 'sql' repository type and also the flags and + Python API flags for selecting the repository type. + * Remove support for running with Python 3.5. + * Official support for Python 3.10. + * Fixed the execution order of the stestr run --load-list option so that + tests are executed in the order specified in the list. +- Add patch remove-future-requirement.patch, drop use of the future module. +- Switch to pyproject and autosetup macros. + +------------------------------------------------------------------- +Fri Aug 19 19:12:38 UTC 2022 - Ben Greiner + +- Remove test requirements: + * coverage: not used here + * runtime requirements pulled in by main package already +- Provide the entrypoint only for the main python3 flavor + * The cli requires cliff, which is primary python3 only +- Update description text +- Remove catchall in files section + +------------------------------------------------------------------- +Sat Oct 16 20:23:53 UTC 2021 - Dirk Müller + +- update to 3.2.1: + * Fixed the detection of test worker failures before reporting final + result status + +------------------------------------------------------------------- +Thu Jun 17 20:39:34 UTC 2021 - Dirk Müller + +- update to 3.2.0: + * Support for configuring stestr via a tox.ini file has been added. It's + now no longer needed to create a separate .stestr.conf file and + instead it can be embedded in an existing tox.ini file. + * A new stestr command, stestr history list has been added to list the + previous runs in the stestr repository. + * A new stestr command, stestr history show has been added to show the + output from a previous run from the stestr repository. + * A new stestr command, stestr history remove, has been added to + remove runs from the stestr repository. + +------------------------------------------------------------------- +Tue Feb 9 15:34:18 UTC 2021 - Markéta Machová + +- Get rid of %ifpython3 + +------------------------------------------------------------------- +Mon Feb 8 13:05:10 UTC 2021 - Dirk Müller + +- update to 3.1.0: + * Add python 3.9 support + * Behaviour with a mix of New and Old options + * Update doc/source/MANUAL.rst + * Change option '--black-regex' to '--exclusion-regex' + * Change option '--blacklist-file' to '--exclude-list' + * Change option '--whitelist-file' to '--include-list' + * Change option '--whitelist-file' to '--include-list' + * Bump hacking version + +------------------------------------------------------------------- +Mon Dec 14 21:17:21 UTC 2020 - Benjamin Greiner + +- This package depends on python3-cliff from openstack, which is + only available for the default python3 flavor. As a consequence, + also only build for the primary python3-flavor. + gh#openSUSE/python-rpm-macros#66 + +------------------------------------------------------------------- +Thu Apr 9 10:47:36 UTC 2020 - Tomáš Chvátal + +- Fix subunit buildtime dep statement + +------------------------------------------------------------------- +Wed Apr 1 09:33:14 UTC 2020 - Dirk Mueller + +- update to 3.0.1: + * use python-requires metadata instead of requires-python + * Remove universal flag from release job + +------------------------------------------------------------------- +Mon Mar 30 08:24:55 UTC 2020 - pgajdos@suse.com + +- version update to 3.0.0 + * Update README\_ja.rst + * Update README in preparation for release 3.0.0 + * Update test-requirements to be py3 only + * Remove six usage from testr\_to\_stestr + * Bump python-subunit minimum to 1.4.0 + * Remove universal wheel tag from setup.cfg + * Remove six from tests and requirements + * Fix line length issue from pyupgrade + * Treat bytes and strings differently + * Remove outdated tox envs + * Run pyupgrade on repo + * Fix import issues + * Remove 2.7 ci jobs + * Remove six usage from stestr code + * Fix typo bug in list\_tests() error code + * Remove sys.version switches for python2.7 + * Update package metadata for python2 removal + +------------------------------------------------------------------- +Fri Feb 28 21:47:29 UTC 2020 - Dirk Mueller + +- update to 2.6.0: + * Add python 3.8 macOS and windows ci jobs + * Update test\_processor.py + * Update config\_file.py + * Update cli.py + * Remove 3.8 azure pipelines jobs + * Update stestr/scheduler.py + * Update to recent hacking version + * Add Python 3.8 support + * Add --pdb flag to stestr run + * Add unit tests around repo initialize + * Handle empty .stestr directory to initialize + * Update issue templates + * Escape Windows paths + * Stop encoding attachments text + +------------------------------------------------------------------- +Sun Nov 17 17:19:01 UTC 2019 - Hans-Peter Jansen + +- Create multibuild for testing in order to cope with a circular + dependency with python-cliff +- Clean up spec file + +------------------------------------------------------------------- +Wed Oct 30 13:17:37 UTC 2019 - Dirk Mueller + +- fix build for anything older than Tumbleweed by explicitly setting + utf8 locale + +------------------------------------------------------------------- +Tue Sep 10 09:51:35 UTC 2019 - Tomáš Chvátal + +- Update to 2.5.1: + * documentation updates + * various bugfixes + +------------------------------------------------------------------- +Mon Jul 22 12:47:43 UTC 2019 - Tomáš Chvátal + +- Update to 2.4.0: + * Discover python executable when discover is not used + * various bugfixes +- Remove merged patch pyyaml5.patch + +------------------------------------------------------------------- +Sun Mar 17 15:17:55 UTC 2019 - Tomáš Chvátal + +- Add patch to work with PyYAML 5.x series: + * pyyaml5.patch + +------------------------------------------------------------------- +Wed Mar 13 12:40:42 UTC 2019 - Tomáš Chvátal + +- Update to 2.3.1: + * tests expansion + * metadata updates + * minor bugfixes +- Enable and run tests + +------------------------------------------------------------------- +Wed Jan 9 22:49:20 UTC 2019 - Jonathan Brownell + +- Fallback in case "Suggests:" keyword is not supported + +------------------------------------------------------------------- +Fri Dec 7 13:41:42 UTC 2018 - Thomas Bechtold + +- update to 2.2.0: + * Change title of project in readme + * Add a better description to README Overview section + * Fix discovery import error formatting on py3 + * Cleanup unused parameters in \_run\_tests + * Enable doc8 + * Add all stream to repo even if some tests fail + * Extract loading case code to \_load\_case() function + * Make test running serially when just loading + * Fix time measurement for load command too + * Use reported times instead of wall time in subunit-trace + * Add support for test class and method by path on no-discover + +------------------------------------------------------------------- +Tue Nov 6 19:49:46 UTC 2018 - Todd R + +- Update to version 2.1.1 + * Add support for python 3.7 + * Fix handling of unexpected success results + * Allow stestr to be called as a module (#185) + * Add error handling for invalid input regexes + * Cleanup the manpage section on dealing with failed tests + * Cleanup argument help text on load command + * Fix description for the stestr run command + +------------------------------------------------------------------- +Fri Aug 24 09:29:20 UTC 2018 - comurphy@suse.com + +- Add python3-dbm dependency + * Required for python3: https://github.com/mtreinish/stestr/blob/2.1.1/stestr/subunit_trace.py#L34-L39 + +------------------------------------------------------------------- +Tue Aug 7 20:19:38 UTC 2018 - dmueller@suse.com + +- fixtypo in last change + +------------------------------------------------------------------- +Mon Aug 6 11:06:07 UTC 2018 - tchvatal@suse.com + +- Update the Requires/BuildRequires to reflect requirements.txt + +------------------------------------------------------------------- +Mon Aug 6 09:04:49 UTC 2018 - dmueller@suse.com + +- update to 2.1.0: + * Uncap pbr + * Revert "Cap pip version in windows ci" + * Revert "Uncap pbr" + * Uncap pbr + * Clarify docs on group\_regex + * Remove Python 2.6 code + * Switch python doc reference from 2 to 3 + * Cleanup manual section on configuration + * Fix abbreviate option in run subcommand + * Ignore errors on cleanup in test\_return\_codes + * Cap pip version in windows ci + * Add docs and helper script for building man page + * Add documentation for --suppress-attachments option + * Add option to suppress attachment printing on successful tests + * Add unit tests for return code from functions + * Remove windows skips for old subunit versions + * Cap PBR<4.0.0 + * Fixed manual page description + * Fix manpage generation + * Add issue description in template + * Add an issue template to project + * Add usage to manual docs page + * Fix the manual docs link in README + * Add alt texts for badges in README + * Use flat-square design badges on README + * Fix typos about whitelist/blacklist option in manual + * Fix a small mistake in manual about test selection + * Update the package summary in setup.cfg metadata + * Add functional tests for user config file + * Fix no attribute 'repo\_type' error when running w/ --slowest option + * Add support for a user config file + * Fix warning message about missing worker tags in subunit-trace + * Add badge for Appveyor status + * Remove unnecessary shebang and execution bit from subunit\_trace + * Fix typos in docs + * Fix pep8 violations + * Add --slowest option to test runs + * Handle zero and negative times in stestr slowest + * list: Deal with [] instead of 'None' for filters + * Fix docs nits + * Update doc for using cliff for CLI layer + * Use cliff for CLI layer + * Implement quiet option for run and load commands + * Deprecate the partial flag + * Allow both group\_regex and group-regex as an optional argument + * Remove pyc files before running stestr in tox + * Update travis job config + +------------------------------------------------------------------- +Mon Feb 26 06:42:11 UTC 2018 - tbechtold@suse.com + +* Pass output to output.make\_result() in stestr load +* Remove 32bit windows testing CI config +* Add functional test for analyze-isolation flag +* Fetch the data from last run earlier +* Fix the stestr run --analyze-isolation flag +* Remove contributor docs for using reno +* Fix stestr load from stdin +* Add test\_return\_codes check for valid subunit output +* Respect all selection mechanisms for discovery check +* Fix .testr.conf parsing: test path follows discover +* Fix if logic on output types in stestr load +* Add a --abbreviate flag to stestr run and load +* Add missing run command to stestr manual +* Print just error message when no stestr repo +* Fix whitelist arg usage in stestr run +* Drop reno +* Add missing home-page +* Fix: pass the top\_dir parameter to the 'list' command +* Fix: pass the test\_path parameter to the 'list' command +* Update MANUAL.rst +* Update the trove classifiers +* Use context managers for file open() +* Ensure we always close files in file repository +* Create a Code of Conduct for the project +* Fix coveralls collection + +------------------------------------------------------------------- +Thu Sep 14 07:53:51 UTC 2017 - tbechtold@suse.com + +- initial packaging (version 1.0.0) diff --git a/python-stestr.spec b/python-stestr.spec new file mode 100644 index 0000000..55e5c50 --- /dev/null +++ b/python-stestr.spec @@ -0,0 +1,128 @@ +# +# spec file +# +# 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/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -%{flavor} +%bcond_without test +%else +%define psuffix %{nil} +%bcond_with test +%endif + +%if 0%{?suse_version} > 1500 +%bcond_without libalternatives +%else +%bcond_with libalternatives +%endif + +%{?sle15_python_module_pythons} +Name: python-stestr%{psuffix} +Version: 4.2.0 +Release: 0 +Summary: A parallel Python test runner built around subunit +License: Apache-2.0 +URL: https://github.com/mtreinish/stestr +Source: https://files.pythonhosted.org/packages/source/s/stestr/stestr-%{version}.tar.gz +BuildRequires: %{python_module flit-core} +BuildRequires: %{python_module pbr >= 2.0.0} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +%if %{with libalternatives} +Requires: alts +BuildRequires: alts +%else +Requires(post): update-alternatives +Requires(postun):update-alternatives +%endif +Requires: python-PyYAML >= 3.10.0 +Requires: python-cliff >= 2.8.0 +Requires: python-dbm +Requires: python-fixtures >= 3.0.0 +Requires: python-pbr >= 2.0.0 +Requires: python-python-subunit >= 1.4.0 +Requires: python-testtools >= 2.2.0 +Requires: python-tomlkit >= 0.11.6 +Requires: python-voluptuous >= 0.8.9 +BuildArch: noarch +%if %{with test} +BuildRequires: %{python_module SQLAlchemy} +BuildRequires: %{python_module ddt >= 1.0.1} +BuildRequires: %{python_module iso8601} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module stestr = %{version}} +%endif +%if !0%{?_no_weakdeps} +Recommends: python-SQLAlchemy +Recommends: python-subunit2sql >= 1.8.0 +%endif +%python_subpackages + +%description +stestr is parallel Python test runner designed to execute unittest test suites +using multiple processes to split up execution of a test suite. It also will +store a history of all test runs to help in debugging failures and optimizing +the scheduler to improve speed. To accomplish this goal it uses the subunit +protocol to facilitate streaming and storing results from multiple workers. + +stestr originally started as a fork of the testrepository project. But, instead +of being an interface for any test runner that used subunit, like testrepository, +stestr concentrated on being a dedicated test runner for python projects. While +stestr was originally forked from testrepository it is not backwards compatible +with testrepository. At a high level the basic concepts of operation are shared +between the two projects but the actual usage is not exactly the same. + +%prep +%autosetup -p1 -n stestr-%{version} + +%if %{with test} +%check +export LC_ALL="en_US.UTF8" +%pytest stestr/tests -v -k 'not test_empty_with_pretty_out' +%endif + +%if ! %{with test} +%build +%pyproject_wheel + +%install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/stestr +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%pre +%python_libalternatives_reset_alternative stestr + +%post +%python_install_alternative stestr + +%postun +%python_uninstall_alternative stestr + +%files %{python_files} +%license LICENSE +%doc README.rst +%python_alternative %{_bindir}/stestr +%{python_sitelib}/stestr +%{python_sitelib}/stestr-%{version}.dist-info +%endif + +%changelog diff --git a/stestr-4.1.0.tar.gz b/stestr-4.1.0.tar.gz new file mode 100644 index 0000000..6235082 --- /dev/null +++ b/stestr-4.1.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f61c369eece63c292d13599e12aa158af7685990643f24dd6fa7fabfe34e98a +size 113187 diff --git a/stestr-4.2.0.tar.gz b/stestr-4.2.0.tar.gz new file mode 100644 index 0000000..58d81c9 --- /dev/null +++ b/stestr-4.2.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45ec639f2d1cc372e3630613b93f37cf29d3dfe69d49d4f3f9408d37b11bc29c +size 79824