diff --git a/pytest72.patch b/pytest72.patch new file mode 100644 index 0000000..f5bd406 --- /dev/null +++ b/pytest72.patch @@ -0,0 +1,86 @@ +From f064abfda6b3cb48cb42a6827cd250413056f227 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Antoine=20Beaupr=C3=A9?= +Date: Sat, 6 Apr 2024 22:22:52 -0400 +Subject: [PATCH] fix pytest 7.2 compatibility + +Pytest 7.2 deprecated plain top-level `setup()` and `teardown()` +functions in favor of their own decorators: + +https://docs.pytest.org/en/latest/changelog.html#pytest-7-2-0-2022-10-23 +https://docs.pytest.org/en/latest/deprecations.html#setup-teardown + +Now we need to use module-level setup/teardown, which is extremely +similar, just named differently: + +https://docs.pytest.org/en/latest/how-to/xunit_setup.html#module-level-setup-teardown + +We keep compatibility shims for older pytest releases. + +Closes: #24 +--- + tests/test_curvefitting.py | 10 +++++++--- + tests/test_interpolation.py | 9 +++++++-- + 2 files changed, 14 insertions(+), 5 deletions(-) + +diff --git a/tests/test_curvefitting.py b/tests/test_curvefitting.py +index 9398327..0d20cca 100644 +--- a/tests/test_curvefitting.py ++++ b/tests/test_curvefitting.py +@@ -31,9 +31,8 @@ + cf4 = CurveFitting() + + +-def setup(): ++def setup_module(): + """This function is used to set up the environment for the tests""" +- + # Set up a few CurveFitting objects + cf1.set([73.0, 38.0, 35.0, 42.0, 78.0, 68.0, 74.0, 42.0, 52.0, 54.0, 39.0, + 61.0, 42.0, 49.0, 50.0, 62.0, 44.0, 39.0, 43.0, 54.0, 44.0, 37.0], +@@ -58,10 +57,15 @@ def setup(): + -0.8372, -0.4377, -0.3640, -0.3508, -0.2126]) + + +-def teardown(): ++def teardown_module(): + pass + + ++# pre pytest 7.2 compatibility ++setup = setup_module ++teardown = teardown_module ++ ++ + # CurveFitting class + + def test_curvefitting_constructor(): +diff --git a/tests/test_interpolation.py b/tests/test_interpolation.py +index e853c37..08f7b6e 100644 +--- a/tests/test_interpolation.py ++++ b/tests/test_interpolation.py +@@ -32,7 +32,7 @@ + i_sine = Interpolation() + + +-def setup(): ++def setup_module(): + """This function is used to set up the environment for the tests""" + # Set up a interpolation object which uses Right Ascension + y0 = Angle(10, 18, 48.732, ra=True) +@@ -64,10 +64,15 @@ def setup(): + 0.5236885653, 0.5453707057]) + + +-def teardown(): ++def teardown_module(): + pass + + ++# pre pytest 7.2 ompatibility ++setup = setup_module ++teardown = teardown_module ++ ++ + # Interpolation class + + def test_interpolation_constructor(): diff --git a/python-PyMeeus.changes b/python-PyMeeus.changes index ec21b90..cf5cd62 100644 --- a/python-PyMeeus.changes +++ b/python-PyMeeus.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Mon May 20 18:25:54 UTC 2024 - Matej Cepl + +- Clean up the SPEC file. + +------------------------------------------------------------------- +Fri May 17 14:48:50 UTC 2024 - Markéta Machová + +- Add patch pytest72.patch to fix compatibility with recent pytest + ------------------------------------------------------------------- Fri Apr 21 12:21:03 UTC 2023 - Dirk Müller diff --git a/python-PyMeeus.spec b/python-PyMeeus.spec index ac35845..6a95d82 100644 --- a/python-PyMeeus.spec +++ b/python-PyMeeus.spec @@ -1,7 +1,7 @@ # # spec file for package python-PyMeeus # -# Copyright (c) 2023 SUSE LLC +# 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 @@ -16,7 +16,6 @@ # -%{?!python_module:%define python_module() python-%{**} python3-%{**}} %{?sle15_python_module_pythons} Name: python-PyMeeus Version: 0.5.12 @@ -25,8 +24,11 @@ Summary: Python implementation of Jean Meeus astronomical routines License: LGPL-3.0-only URL: https://github.com/architest/pymeeus Source: https://files.pythonhosted.org/packages/source/P/PyMeeus/PyMeeus-%{version}.tar.gz +Patch0: pytest72.patch +BuildRequires: %{python_module pip} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildArch: noarch @@ -38,13 +40,13 @@ described in the classical book "Astronomical Algorithms, 2nd Edition, Willmann-Bell Inc. (1998)" by Jean Meeus. %prep -%setup -q -n PyMeeus-%{version} +%autosetup -p1 -n PyMeeus-%{version} %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -53,6 +55,7 @@ Willmann-Bell Inc. (1998)" by Jean Meeus. %files %{python_files} %doc README.rst %license LICENSE.txt -%{python_sitelib}/* +%{python_sitelib}/pymeeus +%{python_sitelib}/PyMeeus-%{version}*-info %changelog