Accepting request 1216906 from devel:languages:python:pytest

- Update to 1.8.0:
  * Drop support for Python 2 and <3.6, removing compatibility code.
  * Use stdlib unittest.mock instead of mock package.
  * Removed usage of path.py and path in favour of pathlib.
  * Removed contextlib2 requirement.
  * Fixed forcing color through termcolor.
- Drop patches, included upstream:
  * pytest-fixtures-pr171-remove-mock.patch
  * stop-using-imp.patch

OBS-URL: https://build.opensuse.org/request/show/1216906
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pytest-shutil?expand=0&rev=11
This commit is contained in:
Ana Guerrero 2024-10-22 12:52:54 +00:00 committed by Git OBS Bridge
commit 65c5dd762b
6 changed files with 23 additions and 142 deletions

View File

@ -1,72 +0,0 @@
diff --git a/pytest-shutil/pytest_shutil/run.py b/pytest-shutil/pytest_shutil/run.py
index c5b421d..7d46aea 100644
--- a/pytest-shutil/pytest_shutil/run.py
+++ b/pytest-shutil/pytest_shutil/run.py
@@ -11,7 +11,12 @@
from contextlib import closing
import subprocess
-from mock import patch
+try:
+ from unittest.mock import patch
+except ImportError:
+ # python 2
+ from mock import patch
+
import execnet
from six.moves import cPickle # @UnresolvedImport
diff --git a/pytest-shutil/setup.py b/pytest-shutil/setup.py
index 4126831..3513d3e 100644
--- a/pytest-shutil/setup.py
+++ b/pytest-shutil/setup.py
@@ -24,10 +24,11 @@
install_requires = ['six',
'execnet',
- 'contextlib2',
+ 'contextlib2;python_version<"3"',
'pytest',
- 'path.py',
- 'mock',
+ 'path; python_version >= "3.7"',
+ 'path.py; python_version < "3.7"',
+ 'mock; python_version<"3.3"',
'termcolor'
]
diff --git a/pytest-shutil/tests/integration/test_run_integration.py b/pytest-shutil/tests/integration/test_run_integration.py
index d92c9da..bf20f3a 100644
--- a/pytest-shutil/tests/integration/test_run_integration.py
+++ b/pytest-shutil/tests/integration/test_run_integration.py
@@ -8,7 +8,10 @@
import textwrap
from uuid import uuid4
-import mock
+try:
+ from unittest import mock
+except ImportError:
+ import mock
from pytest_shutil import run, workspace
from pytest_shutil.env import no_cov
diff --git a/pytest-shutil/tests/unit/test_run.py b/pytest-shutil/tests/unit/test_run.py
index 612d20d..c520e85 100644
--- a/pytest-shutil/tests/unit/test_run.py
+++ b/pytest-shutil/tests/unit/test_run.py
@@ -3,7 +3,13 @@
from subprocess import PIPE, STDOUT
import pytest
-from mock import Mock, patch, sentinel, DEFAULT, call
+
+try:
+ from unittest.mock import Mock, patch, sentinel, DEFAULT, call
+except ImportError:
+ # python 2
+ from mock import Mock, patch, sentinel, DEFAULT, call
+
from six.moves import cPickle
from pytest_shutil import run

BIN
pytest-shutil-1.7.0.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
pytest-shutil-1.8.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Tue Oct 22 06:08:51 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 1.8.0:
* Drop support for Python 2 and <3.6, removing compatibility code.
* Use stdlib unittest.mock instead of mock package.
* Removed usage of path.py and path in favour of pathlib.
* Removed contextlib2 requirement.
* Fixed forcing color through termcolor.
- Drop patches, included upstream:
* pytest-fixtures-pr171-remove-mock.patch
* stop-using-imp.patch
-------------------------------------------------------------------
Wed Jan 24 04:48:42 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>

View File

@ -16,52 +16,28 @@
#
%bcond_without python2
%{?sle15_python_module_pythons}
Name: python-pytest-shutil
Version: 1.7.0
Version: 1.8.0
Release: 0
Summary: A goodie-bag of unix shell and environment tools for pytest
License: MIT
URL: https://github.com/manahl/pytest-plugins
URL: https://github.com/man-group/pytest-plugins
Source: https://files.pythonhosted.org/packages/source/p/pytest-shutil/pytest-shutil-%{version}.tar.gz
# PATCH-FEATURE-UPSTREAM pytest-fixtures-pr171-remove-mock.patch -- gh#man-group#pytest-plugins#171
Patch0: pytest-fixtures-pr171-remove-mock.patch
# PATCH-FIX-UPSTREAM gh#man-group/pytest-plugins#219
Patch1: stop-using-imp.patch
BuildRequires: %{python_module execnet}
BuildRequires: %{python_module path}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools-git}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six}
BuildRequires: %{python_module termcolor}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
%if %{with python2}
BuildRequires: python-contextlib2
BuildRequires: python-mock
BuildRequires: python-path.py
%endif
%if 0%{?suse_version} < 1550
BuildRequires: python3-path.py
%else
BuildRequires: %{python_module path}
%endif
BuildRequires: python-rpm-macros
Requires: python-execnet
%if 0%{suse_version} < 1550
Requires: python-path.py
%else
Requires: python-path
%endif
Requires: python-pytest
Requires: python-six
Requires: python-termcolor
%ifpython2
Requires: python-contextlib2
Requires: python-mock
Requires: python-path.py
%endif
BuildArch: noarch
%python_subpackages
@ -74,10 +50,10 @@ tools for automated tests.
%autosetup -p2 -n pytest-shutil-%{version}
%build
%python_build
%pyproject_wheel
%install
%python_install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@ -89,6 +65,6 @@ tools for automated tests.
%doc README.md CHANGES.md
%license LICENSE
%{python_sitelib}/pytest_shutil
%{python_sitelib}/pytest_shutil-%{version}*-info
%{python_sitelib}/pytest_shutil-%{version}.dist-info
%changelog

View File

@ -1,36 +0,0 @@
From bbb9e5c7cba84fb4665a521569d1cfcca08ee4e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sat, 27 May 2023 18:05:44 +0200
Subject: [PATCH] pytest-shutil: Replace deprecated imp module
Replace the use of the deprecated `imp` module with `importlib.util',
as the former has been removed from Python 3.12.
---
pytest-shutil/pytest_shutil/run.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/pytest-shutil/pytest_shutil/run.py b/pytest-shutil/pytest_shutil/run.py
index 7d46aea1..08a6a34c 100644
--- a/pytest-shutil/pytest_shutil/run.py
+++ b/pytest-shutil/pytest_shutil/run.py
@@ -3,7 +3,7 @@
"""
import sys
import os
-import imp
+import importlib.util
import logging
from functools import update_wrapper
import inspect
@@ -112,7 +112,10 @@ def run_module_as_main(module, argv=[]):
filename = os.path.splitext(filename)[0] + ".py"
with patch("sys.argv", new=argv):
- imp.load_source('__main__', os.path.join(where, filename))
+ spec = importlib.util.spec_from_file_location(
+ "__main__", os.path.join(where, filename))
+ module = importlib.util.module_from_spec(spec)
+ spec.loader.exec_module(module)
def _evaluate_fn_source(src, *args, **kwargs):