From a434e790a6f9ff6acbd3f593e07fbe4131085da0cc334586fc18ae368fe9816c Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Wed, 26 Nov 2025 23:48:53 +0000 Subject: [PATCH] - Add patch pytest9.patch: * Balanced on top of the other 2 pytest patches, support pytest 9 changes. - Use autosetup macro. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-html5lib?expand=0&rev=61 --- pytest9.patch | 61 +++++++++++++++++++++++++++++++++++++++++ python-html5lib.changes | 7 +++++ python-html5lib.spec | 9 +++--- 3 files changed, 73 insertions(+), 4 deletions(-) create mode 100644 pytest9.patch diff --git a/pytest9.patch b/pytest9.patch new file mode 100644 index 0000000..6098f38 --- /dev/null +++ b/pytest9.patch @@ -0,0 +1,61 @@ +From b502a5e2b3048a996ada4c4246aafad99d3dd14c Mon Sep 17 00:00:00 2001 +From: Steve Kowalik +Date: Thu, 27 Nov 2025 10:44:40 +1100 +Subject: [PATCH] Support pytest 9 changes + +The old py.path arguments to the hook functions have been removed as of +pytest 9, switch to the shiny new pathlib ones. +--- + html5lib/tests/conftest.py | 18 +++++++++--------- + requirements-test.txt | 2 +- + 2 files changed, 10 insertions(+), 10 deletions(-) + +Index: html5lib-1.1/html5lib/tests/conftest.py +=================================================================== +--- html5lib-1.1.orig/html5lib/tests/conftest.py ++++ html5lib-1.1/html5lib/tests/conftest.py +@@ -90,22 +90,22 @@ def pytest_configure(config): + pytest.exit("\n".join(msgs)) + + +-def pytest_collect_file(path, parent): +- dir = os.path.abspath(path.dirname) ++def pytest_collect_file(file_path, parent): ++ dir = file_path.parent + dir_and_parents = set() + while dir not in dir_and_parents: + dir_and_parents.add(dir) +- dir = os.path.dirname(dir) ++ dir = dir.parent + + if _tree_construction in dir_and_parents: +- if path.ext == ".dat": +- return TreeConstructionFile.from_parent(parent, fspath=path) ++ if file_path.suffix == ".dat": ++ return TreeConstructionFile.from_parent(parent, path=file_path) + elif _tokenizer in dir_and_parents: +- if path.ext == ".test": +- return TokenizerFile.from_parent(parent, fspath=path) ++ if file_path.suffix == ".test": ++ return TokenizerFile.from_parent(parent, path=file_path) + elif _sanitizer_testdata in dir_and_parents: +- if path.ext == ".dat": +- return SanitizerFile.from_parent(parent, fspath=path) ++ if file_path.suffix == ".dat": ++ return SanitizerFile.from_parent(parent, path=file_path) + + + # Tiny wrapper to allow .from_parent constructors on older pytest for PY27 +Index: html5lib-1.1/requirements-test.txt +=================================================================== +--- html5lib-1.1.orig/requirements-test.txt ++++ html5lib-1.1/requirements-test.txt +@@ -3,7 +3,7 @@ + tox>=3.15.1,<4 + flake8>=3.8.1,<3.9 + pytest>=4.6.10,<5 ; python_version < '3' +-pytest>=5.4.2,<7 ; python_version >= '3' ++pytest>=7,<10 ; python_version >= '3' + coverage>=5.1,<6 + pytest-expect>=1.1.0,<2 + mock>=3.0.5,<4 ; python_version < '3.6' diff --git a/python-html5lib.changes b/python-html5lib.changes index 7784c44..d082375 100644 --- a/python-html5lib.changes +++ b/python-html5lib.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Wed Nov 26 23:48:39 UTC 2025 - Steve Kowalik + +- Add patch pytest9.patch: + * Balanced on top of the other 2 pytest patches, support pytest 9 changes. +- Use autosetup macro. + ------------------------------------------------------------------- Tue Nov 4 00:18:04 UTC 2025 - Steve Kowalik diff --git a/python-html5lib.spec b/python-html5lib.spec index 0a3019a..77bbb74 100644 --- a/python-html5lib.spec +++ b/python-html5lib.spec @@ -32,11 +32,13 @@ Patch1: python-html5lib-no-mock.patch Patch2: pytest74.patch # PATCH-FIX-UPSTREAM gh#html5lib/html5lib-python#589 Patch3: support-python314.patch +# PATCH-FIX-UPSTREAM Based on gh#html5lib/html5lib-python#590 +Patch4: pytest9.patch BuildRequires: %{python_module Genshi} BuildRequires: %{python_module lxml} BuildRequires: %{python_module pip} BuildRequires: %{python_module pip} -BuildRequires: %{python_module pytest >= 4.0} +BuildRequires: %{python_module pytest >= 7} BuildRequires: %{python_module pytest-expect} BuildRequires: %{python_module setuptools >= 18.5} BuildRequires: %{python_module six >= 1.9} @@ -62,8 +64,7 @@ DOM, ElementTree, lxml and BeautifulSoup tree formats as well as a simple custom format %prep -%setup -q -n html5lib-%{version} -%autopatch -p1 +%autosetup -p1 -n html5lib-%{version} %build %pyproject_wheel @@ -79,6 +80,6 @@ simple custom format %license LICENSE %doc CHANGES.rst README.rst %{python_sitelib}/html5lib/ -%{python_sitelib}/html5lib-%{version}*-info +%{python_sitelib}/html5lib-%{version}.dist-info %changelog