diff --git a/py311.patch b/py311.patch new file mode 100644 index 0000000..b775b58 --- /dev/null +++ b/py311.patch @@ -0,0 +1,45 @@ +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:*", + "_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _*", diff --git a/python-pytest-benchmark.changes b/python-pytest-benchmark.changes index 0b4c7a3..95d64b3 100644 --- a/python-pytest-benchmark.changes +++ b/python-pytest-benchmark.changes @@ -1,3 +1,18 @@ +------------------------------------------------------------------- +Tue Jan 17 13:03:29 UTC 2023 - Daniel Garcia + +- Modify the py311.patch to fix the test_abort_broken test, instead of + disabling. + +------------------------------------------------------------------- +Tue Jan 17 12:44:25 UTC 2023 - Daniel Garcia + +- Add py311.patch to make it compatible with python 3.11, + gh#ionelmc/pytest-benchmark#232 +- Disable broken test_abort_broken, this test is broken because the output of + the tests is a bit different with python 3.11 so we can disable until it's + fixed. + ------------------------------------------------------------------- Wed Nov 30 07:44:51 UTC 2022 - Daniel Garcia diff --git a/python-pytest-benchmark.spec b/python-pytest-benchmark.spec index 18d44aa..60d1276 100644 --- a/python-pytest-benchmark.spec +++ b/python-pytest-benchmark.spec @@ -1,7 +1,7 @@ # # spec file for package python-pytest-benchmark # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -25,6 +25,8 @@ 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 BuildRequires: %{python_module aspectlib} BuildRequires: %{python_module elasticsearch} BuildRequires: %{python_module freezegun}