- Update to 8.25.0:

* Rplaces the unicode micro symbol with greek letter mu, visually
    identical but should fix nfkc normalisations issues.
  * Introduces intersphinx_registry as a new dependency which is recommended
    only to build documentation.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-ipython?expand=0&rev=130
This commit is contained in:
Steve Kowalik 2024-06-04 03:20:23 +00:00 committed by Git OBS Bridge
parent 138ab35c4c
commit bc4553d9e5
5 changed files with 10 additions and 135 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:010db3f8a728a578bb641fdd06c063b9fb8e96a9464c63aec6310fbcb5e80501
size 5491819

3
ipython-8.25.0.tar.gz Normal file
View File

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

View File

@ -1,7 +1,11 @@
-------------------------------------------------------------------
Thu May 23 05:20:42 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
Tue Jun 4 03:19:44 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 8.24.0:
- Update to 8.25.0:
* Rplaces the unicode micro symbol with greek letter mu, visually
identical but should fix nfkc normalisations issues.
* Introduces intersphinx_registry as a new dependency which is recommended
only to build documentation.
* Improve inference from return type annotations in completer and the
introduction of the optional target ipython[matplotlib] to explicitly
request the matplotlib optional dependencies.
@ -10,8 +14,6 @@ Thu May 23 05:20:42 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
* typing-extension now needs 4.6 or newer. It was already the case, but
not explicated.
* Attempt to speed running code under debugger in some cases.
- Add patch support-pytest-8.1.patch:
* Support pytest >= 8.1 with the pytest plugin.
-------------------------------------------------------------------
Fri Mar 29 17:16:13 UTC 2024 - Ben Greiner <code@bnavigator.de>

View File

@ -35,15 +35,13 @@
%define skip_python39 1
%{?sle15_python_module_pythons}
Name: python-ipython%{psuffix}
Version: 8.24.0
Version: 8.25.0
Release: 0
Summary: Rich architecture for interactive computing with Python
License: BSD-3-Clause
URL: https://github.com/ipython/ipython
Source: https://files.pythonhosted.org/packages/source/i/ipython/ipython-%{version}.tar.gz
Source1: https://raw.githubusercontent.com/jupyter/qtconsole/4.0.0/qtconsole/resources/icon/JupyterConsole.svg
# PATCH-FIX-UPSTREAM gh#ipython/ipython#14441
Patch0: support-pytest-8.1.patch
BuildRequires: %{python_module base >= 3.10}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools >= 61.2}

View File

@ -1,125 +0,0 @@
From 7df70a3cd79068be6f98596e427d60a5d0cfe5b3 Mon Sep 17 00:00:00 2001
From: Steve Kowalik <steven@wedontsleep.org>
Date: Thu, 23 May 2024 13:00:43 +1000
Subject: [PATCH] Support pytest 8.1+ changes in pytest plugin
Pytest 8.1 has also changed the plugin API, as well as required new
keyword arguments. I've shifted the pytest version calculation to the
module level so we can use it everywhere, and continue supporting all
versions of pytest that we can.
Fixes #14390
---
IPython/testing/plugin/pytest_ipdoctest.py | 36 ++++++++++++++++------
1 file changed, 26 insertions(+), 10 deletions(-)
diff --git a/IPython/testing/plugin/pytest_ipdoctest.py b/IPython/testing/plugin/pytest_ipdoctest.py
index fc8af13b579..40a3ae92b40 100644
--- a/IPython/testing/plugin/pytest_ipdoctest.py
+++ b/IPython/testing/plugin/pytest_ipdoctest.py
@@ -38,7 +38,11 @@
from _pytest.compat import safe_getattr
from _pytest.config import Config
from _pytest.config.argparsing import Parser
-from _pytest.fixtures import FixtureRequest
+
+try:
+ from _pytest.fixtures import TopRequest as FixtureRequest
+except ImportError:
+ from _pytest.fixtures import FixtureRequest
from _pytest.nodes import Collector
from _pytest.outcomes import OutcomeException
from _pytest.pathlib import fnmatch_ex, import_path
@@ -69,6 +73,8 @@
# Lazy definition of output checker class
CHECKER_CLASS: Optional[Type["IPDoctestOutputChecker"]] = None
+pytest_version = tuple([int(part) for part in pytest.__version__.split(".")])
+
def pytest_addoption(parser: Parser) -> None:
parser.addini(
@@ -143,7 +149,7 @@ def pytest_collect_file(
return None
-if int(pytest.__version__.split(".")[0]) < 7:
+if pytest_version[0] < 7:
_collect_file = pytest_collect_file
def pytest_collect_file(
@@ -448,7 +454,7 @@ def reportinfo(self) -> Tuple[Union["os.PathLike[str]", str], Optional[int], str
assert self.dtest is not None
return self.path, self.dtest.lineno, "[ipdoctest] %s" % self.name
- if int(pytest.__version__.split(".")[0]) < 7:
+ if pytest_version[0] < 7:
@property
def path(self) -> Path:
@@ -521,7 +527,7 @@ def collect(self) -> Iterable[IPDoctestItem]:
self, name=test.name, runner=runner, dtest=test
)
- if int(pytest.__version__.split(".")[0]) < 7:
+ if pytest_version[0] < 7:
@property
def path(self) -> Path:
@@ -636,20 +642,26 @@ def _find(
)
if self.path.name == "conftest.py":
- if int(pytest.__version__.split(".")[0]) < 7:
+ if pytest_version[0] < 7:
module = self.config.pluginmanager._importconftest(
self.path,
self.config.getoption("importmode"),
)
else:
+ kwargs = {"rootpath": self.config.rootpath}
+ if pytest_version >= (8, 1):
+ kwargs["consider_namespace_packages"] = False
module = self.config.pluginmanager._importconftest(
self.path,
self.config.getoption("importmode"),
- rootpath=self.config.rootpath,
+ **kwargs,
)
else:
try:
- module = import_path(self.path, root=self.config.rootpath)
+ kwargs = {"root": self.config.rootpath}
+ if pytest_version >= (8, 1):
+ kwargs["consider_namespace_packages"] = False
+ module = import_path(self.path, **kwargs)
except ImportError:
if self.config.getvalue("ipdoctest_ignore_import_errors"):
pytest.skip("unable to import module %r" % self.path)
@@ -671,7 +683,7 @@ def _find(
self, name=test.name, runner=runner, dtest=test
)
- if int(pytest.__version__.split(".")[0]) < 7:
+ if pytest_version[0] < 7:
@property
def path(self) -> Path:
@@ -701,11 +713,15 @@ def func() -> None:
doctest_item.funcargs = {} # type: ignore[attr-defined]
fm = doctest_item.session._fixturemanager
+ kwargs = {"node": doctest_item, "func": func, "cls": None}
+ if pytest_version <= (8, 0):
+ kwargs["funcargs"] = False
doctest_item._fixtureinfo = fm.getfixtureinfo( # type: ignore[attr-defined]
- node=doctest_item, func=func, cls=None, funcargs=False
+ **kwargs
)
fixture_request = FixtureRequest(doctest_item, _ispytest=True)
- fixture_request._fillfixtures()
+ if pytest_version <= (8, 0):
+ fixture_request._fillfixtures()
return fixture_request