1
0

5 Commits

Author SHA256 Message Date
cc7e7a14eb Accepting request 1315724 from devel:languages:python:pytest
update to 5.2.1

trying the new workflow

(🤖: Submission of python-pytest-benchmark via pool/python-pytest-benchmark#1 by mcalabkova)
- Update to 5.2.1
  * Added support for a per-round teardown function to pedantic mode.
  * Added --benchmark-time-unit option.
  * Fixed deprecated hook examples in docstrings.
  * Changed --benchmark-compare-fail to accept percentages higher than 100%.
  * Replaced the complicated and broken code of pytest_benchmark.utils.clonefunc
    with a simple return of the input.
  * Add markers so pytest doesn’t try to assert-rewrite the plugin internals

OBS-URL: https://build.opensuse.org/request/show/1315724
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pytest-benchmark?expand=0&rev=16
2025-11-07 17:19:49 +00:00
ab14df34ac Accepting request 1301388 from devel:languages:python:pytest
OBS-URL: https://build.opensuse.org/request/show/1301388
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pytest-benchmark?expand=0&rev=15
2025-08-27 19:33:52 +00:00
3fd6448dcb - Convert to libalternatives on SLE-16-based and newer systems
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-benchmark?expand=0&rev=34
2025-08-26 08:47:40 +00:00
fa6f92d776 Accepting request 1226264 from devel:languages:python:pytest
- update to 5.1.0:
  * Fixed broken hooks handling on pytest 8.1 or later (the
    TypeError: import_path() missing 1 required keyword-only
    argument: 'consider_namespace_packages' issue). Unfortunately
    this sets the minimum supported pytest version to 8.1.
  * Fixed bad fixture check that broke down then nbmake was
    enabled.
  * Dropped support for now EOL Python 3.8. Also moved tests
    suite to only test the latest pytest versions (8.3.x).
  * Fix generate parametrize tests benchmark csv report errors
    (issue #268). Contributed by Johnny Huang in #269.
  * Added the --benchmark-time-unit cli option for overriding the
    measurement unit used for display. Contributed by Tony Kuo in
    #257.
  * Fixes spelling in some help texts. Contributed by Eugeniy in
    #267.
  * Added new cprofile options: --benchmark-cprofile-loops=LOOPS
    - previously profiling only ran the function once, this allow
    customization. --benchmark-cprofile-top=COUNT - allows
    showing more rows. --benchmark-cprofile-dump=[FILENAME-
    PREFIX] - allows saving to a file (that you can load in
    snakeviz, RunSnakeRun or other tools).
  * --benchmark-cprofile-loops=LOOPS - previously profiling only
    ran the function once, this allow customization.
  * --benchmark-cprofile-top=COUNT - allows showing more rows.
  * --benchmark-cprofile-dump=[FILENAME-PREFIX] - allows saving
    to a file (that you can load in snakeviz, RunSnakeRun or
    other tools).
  * Removed hidden dependency on py.path (replaced with pathlib).
- drop fix-test-fast.patch, py311.patch, fix-test-fast.patch: upstream

OBS-URL: https://build.opensuse.org/request/show/1226264
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pytest-benchmark?expand=0&rev=14
2024-11-26 19:55:23 +00:00
3b2946891d - update to 5.1.0:
* Fixed broken hooks handling on pytest 8.1 or later (the
    TypeError: import_path() missing 1 required keyword-only
    argument: 'consider_namespace_packages' issue). Unfortunately
    this sets the minimum supported pytest version to 8.1.
  * Fixed bad fixture check that broke down then nbmake was
    enabled.
  * Dropped support for now EOL Python 3.8. Also moved tests
    suite to only test the latest pytest versions (8.3.x).
  * Fix generate parametrize tests benchmark csv report errors
    (issue #268). Contributed by Johnny Huang in #269.
  * Added the --benchmark-time-unit cli option for overriding the
    measurement unit used for display. Contributed by Tony Kuo in
    #257.
  * Fixes spelling in some help texts. Contributed by Eugeniy in
    #267.
  * Added new cprofile options: --benchmark-cprofile-loops=LOOPS
    - previously profiling only ran the function once, this allow
    customization. --benchmark-cprofile-top=COUNT - allows
    showing more rows. --benchmark-cprofile-dump=[FILENAME-
    PREFIX] - allows saving to a file (that you can load in
    snakeviz, RunSnakeRun or other tools).
  * --benchmark-cprofile-loops=LOOPS - previously profiling only
    ran the function once, this allow customization.
  * --benchmark-cprofile-top=COUNT - allows showing more rows.
  * --benchmark-cprofile-dump=[FILENAME-PREFIX] - allows saving
    to a file (that you can load in snakeviz, RunSnakeRun or
    other tools).
  * Removed hidden dependency on py.path (replaced with pathlib).

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-benchmark?expand=0&rev=32
2024-11-25 12:43:50 +00:00
8 changed files with 83 additions and 80 deletions

5
_scmsync.obsinfo Normal file
View File

@@ -0,0 +1,5 @@
mtime: 1762346421
commit: d96a16df80402551836307fb5e45668b259e587f176c3ebe6b6d2178c461fa98
url: https://src.opensuse.org/python-pytest/python-pytest-benchmark.git
revision: d96a16df80402551836307fb5e45668b259e587f176c3ebe6b6d2178c461fa98
projectscmsync: https://src.opensuse.org/python-pytest/_ObsPrj.git

3
build.specials.obscpio Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0372e4111009be9ff3cf8bcc9cd3f77f2c88f2c6e76eac6beb14eda9ad1f31ce
size 256

View File

@@ -1,22 +0,0 @@
--- a/tests/test_normal.py
+++ b/tests/test_normal.py
@@ -5,6 +5,7 @@ Just to make sure the plugin doesn't cho
Yay, doctests!
"""
+import platform
import sys # noqa
import time
from functools import partial
@@ -20,7 +21,10 @@ def test_fast(benchmark):
assert result is None
if not benchmark.disabled:
- assert benchmark.stats.stats.min >= 0.000001
+ if '32' in platform.architecture()[0]:
+ assert benchmark.stats.stats.min >= 0.0000001
+ else:
+ assert benchmark.stats.stats.min >= 0.000001
def test_slow(benchmark):

View File

@@ -1,45 +0,0 @@
diff --git a/src/pytest_benchmark/compat.py b/src/pytest_benchmark/compat.py
index 63d01bd..9afecf2 100644
--- a/src/pytest_benchmark/compat.py
+++ b/src/pytest_benchmark/compat.py
@@ -1,3 +1,4 @@
import sys
PY38 = sys.version_info[0] == 3 and sys.version_info[1] >= 8
+PY311 = sys.version_info[0] == 3 and sys.version_info[1] >= 11
diff --git a/src/pytest_benchmark/utils.py b/src/pytest_benchmark/utils.py
index c80352a..e28c04e 100644
--- a/src/pytest_benchmark/utils.py
+++ b/src/pytest_benchmark/utils.py
@@ -26,7 +26,7 @@
import genericpath
-from .compat import PY38
+from .compat import PY38, PY311
# This is here (in the utils module) because it might be used by
# various other modules.
@@ -521,6 +521,10 @@ def clonefunc(f):
co.co_firstlineno, co.co_lnotab, co.co_freevars, co.co_cellvars]
if PY38:
args.insert(1, co.co_posonlyargcount)
+
+ if PY311:
+ args.insert(12, co.co_qualname)
+ args.insert(15, co.co_exceptiontable)
co2 = types.CodeType(*args)
#
# then, we clone the function itself, using the new co2
diff --git a/tests/test_benchmark.py b/tests/test_benchmark.py
index 280ce24..964787f 100644
--- a/tests/test_benchmark.py
+++ b/tests/test_benchmark.py
@@ -952,7 +952,6 @@ def result():
" def test_bad(benchmark):",
"? @benchmark",
- "? def result():",
"test_abort_broken.py:*",
"_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _*",

BIN
pytest-benchmark-4.0.0.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
pytest_benchmark-5.2.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -1,3 +1,54 @@
-------------------------------------------------------------------
Wed Nov 5 12:35:00 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Update to 5.2.1
* Added support for a per-round teardown function to pedantic mode.
* Added --benchmark-time-unit option.
* Fixed deprecated hook examples in docstrings.
* Changed --benchmark-compare-fail to accept percentages higher than 100%.
* Replaced the complicated and broken code of pytest_benchmark.utils.clonefunc
with a simple return of the input.
* Add markers so pytest doesnt try to assert-rewrite the plugin internals
-------------------------------------------------------------------
Thu Aug 21 15:41:07 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to libalternatives on SLE-16-based and newer systems
-------------------------------------------------------------------
Mon Nov 25 12:42:56 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 5.1.0:
* Fixed broken hooks handling on pytest 8.1 or later (the
TypeError: import_path() missing 1 required keyword-only
argument: 'consider_namespace_packages' issue). Unfortunately
this sets the minimum supported pytest version to 8.1.
* Fixed bad fixture check that broke down then nbmake was
enabled.
* Dropped support for now EOL Python 3.8. Also moved tests
suite to only test the latest pytest versions (8.3.x).
* Fix generate parametrize tests benchmark csv report errors
(issue #268). Contributed by Johnny Huang in #269.
* Added the --benchmark-time-unit cli option for overriding the
measurement unit used for display. Contributed by Tony Kuo in
#257.
* Fixes spelling in some help texts. Contributed by Eugeniy in
#267.
* Added new cprofile options: --benchmark-cprofile-loops=LOOPS
- previously profiling only ran the function once, this allow
customization. --benchmark-cprofile-top=COUNT - allows
showing more rows. --benchmark-cprofile-dump=[FILENAME-
PREFIX] - allows saving to a file (that you can load in
snakeviz, RunSnakeRun or other tools).
* --benchmark-cprofile-loops=LOOPS - previously profiling only
ran the function once, this allow customization.
* --benchmark-cprofile-top=COUNT - allows showing more rows.
* --benchmark-cprofile-dump=[FILENAME-PREFIX] - allows saving
to a file (that you can load in snakeviz, RunSnakeRun or
other tools).
* Removed hidden dependency on py.path (replaced with pathlib).
- drop fix-test-fast.patch, py311.patch, fix-test-fast.patch: upstream
-------------------------------------------------------------------
Mon Mar 4 22:09:46 UTC 2024 - Matej Cepl <mcepl@cepl.eu>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-pytest-benchmark
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,18 +16,19 @@
#
%define skip_python2 1
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
%{?sle15_python_module_pythons}
Name: python-pytest-benchmark
Version: 4.0.0
Version: 5.2.1
Release: 0
Summary: A py.test fixture for benchmarking code
License: BSD-2-Clause
URL: https://github.com/ionelmc/pytest-benchmark
Source: https://files.pythonhosted.org/packages/source/p/pytest-benchmark/pytest-benchmark-%{version}.tar.gz
Patch0: fix-test-fast.patch
# PATCH-FIX-OPENSUSE py311.patch gh#ionelmc/pytest-benchmark#232
Patch1: py311.patch
Source: https://files.pythonhosted.org/packages/source/p/pytest_benchmark/pytest_benchmark-%{version}.tar.gz
# PATCH-FIX-OPENSUSE Ignore DeprecationWarning, some of our dependancies use
# pkg_resources.
Patch2: ignore-deprecationwarning.patch
@@ -46,13 +47,18 @@ BuildRequires: git-core
BuildRequires: python-rpm-macros
Requires: python-py-cpuinfo
Requires: python-pytest >= 3.8
Requires(post): update-alternatives
Requires(postun): update-alternatives
Recommends: python-aspectlib
Recommends: python-elasticsearch
Recommends: python-pygal
Recommends: python-pygaljs
BuildArch: noarch
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
%python_subpackages
%description
@@ -60,7 +66,9 @@ A py.test fixture for benchmarking code. It will group the tests into
rounds that are calibrated to the chosen timer.
%prep
%autosetup -p1 -n pytest-benchmark-%{version}
%autosetup -p1 -n pytest_benchmark-%{version}
# skip nbmake
rm pytest.ini
# skip cli tests as we use update-alternatives
rm -f tests/test_cli.py
# Don't look for a test pass in the wrong place -- https://github.com/ionelmc/pytest-benchmark/issues/214
@@ -79,6 +87,9 @@ sed -i -e '/test_fast PASSED/d' -e '/test_fast SKIPPED/d' tests/test_benchmark.p
%check
%pytest tests
%pre
%python_libalternatives_reset_alternative pytest-benchmark
%post
%{python_install_alternative pytest-benchmark py.test-benchmark}