Accepting request 957853 from devel:languages:python:jupyter
OBS-URL: https://build.opensuse.org/request/show/957853 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-ipython?expand=0&rev=28
This commit is contained in:
commit
9fb24d21ac
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:ab564d4521ea8ceaac26c3a2c6e5ddbca15c8848fd5a5cc325f960da88d42974
|
|
||||||
size 5306811
|
|
3
ipython-8.1.0.tar.gz
Normal file
3
ipython-8.1.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:42c23e90b2deaae631266885de1656a517a1673d7e1db57e8eb3a4bb6cd5ce1b
|
||||||
|
size 5312523
|
@ -1,109 +0,0 @@
|
|||||||
From fc57ec912eec9da4c33d8db5416fdb2dada706e7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Nikita Kniazev <nok.raven@gmail.com>
|
|
||||||
Date: Mon, 1 Nov 2021 19:09:58 +0300
|
|
||||||
Subject: [PATCH 1/5] Handle changed exception type from inspect.getabsfile
|
|
||||||
(bpo-44648)
|
|
||||||
|
|
||||||
https://bugs.python.org/issue44648 (Python 3.10+)
|
|
||||||
---
|
|
||||||
IPython/core/oinspect.py | 4 ++--
|
|
||||||
IPython/core/tests/test_completer.py | 20 +++++++++++++++-----
|
|
||||||
IPython/lib/tests/test_pretty.py | 1 -
|
|
||||||
3 files changed, 17 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
--- a/IPython/core/oinspect.py
|
|
||||||
+++ b/IPython/core/oinspect.py
|
|
||||||
@@ -224,7 +224,7 @@ def format_argspec(argspec):
|
|
||||||
|
|
||||||
DEPRECATED (since 7.10): Do not use; will be removed in future versions.
|
|
||||||
"""
|
|
||||||
-
|
|
||||||
+
|
|
||||||
warnings.warn('`format_argspec` function is deprecated as of IPython 7.10'
|
|
||||||
'and will be removed in future versions.', DeprecationWarning, stacklevel=2)
|
|
||||||
|
|
||||||
@@ -309,7 +309,7 @@ def find_file(obj) -> str:
|
|
||||||
fname = None
|
|
||||||
try:
|
|
||||||
fname = inspect.getabsfile(obj)
|
|
||||||
- except TypeError:
|
|
||||||
+ except (OSError, TypeError):
|
|
||||||
# For an instance, the file that matters is where its class was
|
|
||||||
# declared.
|
|
||||||
try:
|
|
||||||
--- a/IPython/core/tests/test_completer.py
|
|
||||||
+++ b/IPython/core/tests/test_completer.py
|
|
||||||
@@ -26,6 +26,15 @@ from IPython.core.completer import (
|
|
||||||
_deduplicate_completions,
|
|
||||||
)
|
|
||||||
|
|
||||||
+if sys.version_info >= (3, 10):
|
|
||||||
+ import jedi
|
|
||||||
+ from pkg_resources import parse_version
|
|
||||||
+
|
|
||||||
+ # Requires https://github.com/davidhalter/jedi/pull/1795
|
|
||||||
+ jedi_issue = parse_version(jedi.__version__) <= parse_version("0.18.0")
|
|
||||||
+else:
|
|
||||||
+ jedi_issue = False
|
|
||||||
+
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
# Test functions
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
@@ -94,7 +103,7 @@ def test_unicode_range():
|
|
||||||
"""
|
|
||||||
assert len_exp == len_test, message
|
|
||||||
|
|
||||||
- # fail if new unicode symbols have been added.
|
|
||||||
+ # fail if new unicode symbols have been added.
|
|
||||||
assert len_exp <= 138552, message
|
|
||||||
|
|
||||||
|
|
||||||
@@ -475,6 +484,7 @@ class TestCompleter(unittest.TestCase):
|
|
||||||
"encoding" in c.signature
|
|
||||||
), "Signature of function was not found by completer"
|
|
||||||
|
|
||||||
+ @pytest.mark.xfail(jedi_issue, reason="Known failure on jedi<=0.18.0")
|
|
||||||
def test_deduplicate_completions(self):
|
|
||||||
"""
|
|
||||||
Test that completions are correctly deduplicated (even if ranges are not the same)
|
|
||||||
@@ -500,10 +510,10 @@ class TestCompleter(unittest.TestCase):
|
|
||||||
|
|
||||||
def test_greedy_completions(self):
|
|
||||||
"""
|
|
||||||
- Test the capability of the Greedy completer.
|
|
||||||
+ Test the capability of the Greedy completer.
|
|
||||||
|
|
||||||
Most of the test here does not really show off the greedy completer, for proof
|
|
||||||
- each of the text below now pass with Jedi. The greedy completer is capable of more.
|
|
||||||
+ each of the text below now pass with Jedi. The greedy completer is capable of more.
|
|
||||||
|
|
||||||
See the :any:`test_dict_key_completion_contexts`
|
|
||||||
|
|
||||||
@@ -611,7 +621,7 @@ class TestCompleter(unittest.TestCase):
|
|
||||||
|
|
||||||
def test_limit_to__all__False_ok(self):
|
|
||||||
"""
|
|
||||||
- Limit to all is deprecated, once we remove it this test can go away.
|
|
||||||
+ Limit to all is deprecated, once we remove it this test can go away.
|
|
||||||
"""
|
|
||||||
ip = get_ipython()
|
|
||||||
c = ip.Completer
|
|
||||||
@@ -838,7 +848,7 @@ class TestCompleter(unittest.TestCase):
|
|
||||||
does return what expected, and does not crash.
|
|
||||||
"""
|
|
||||||
delims = " \t\n`!@#$^&*()=+[{]}\\|;:'\",<>?"
|
|
||||||
-
|
|
||||||
+
|
|
||||||
keys = [("foo", "bar"), ("foo", "oof"), ("foo", b"bar"), ('other', 'test')]
|
|
||||||
|
|
||||||
# Completion on first key == "foo"
|
|
||||||
--- a/IPython/lib/tests/test_pretty.py
|
|
||||||
+++ b/IPython/lib/tests/test_pretty.py
|
|
||||||
@@ -7,7 +7,6 @@
|
|
||||||
|
|
||||||
from collections import Counter, defaultdict, deque, OrderedDict, UserList
|
|
||||||
import os
|
|
||||||
-import pytest
|
|
||||||
import types
|
|
||||||
import string
|
|
||||||
import sys
|
|
@ -1,43 +0,0 @@
|
|||||||
From aa169302f4acbbcae616154bf54c70167dbd1fd5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Nikita Kniazev <nok.raven@gmail.com>
|
|
||||||
Date: Sat, 4 Dec 2021 19:32:13 +0300
|
|
||||||
Subject: [PATCH 1/2] Everything is an object and has a `__class__` in Python 3
|
|
||||||
|
|
||||||
---
|
|
||||||
IPython/core/oinspect.py | 2 +-
|
|
||||||
IPython/core/tests/test_oinspect.py | 6 +++++-
|
|
||||||
2 files changed, 6 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
--- a/IPython/core/oinspect.py
|
|
||||||
+++ b/IPython/core/oinspect.py
|
|
||||||
@@ -309,7 +309,7 @@ def find_file(obj) -> str:
|
|
||||||
fname = None
|
|
||||||
try:
|
|
||||||
fname = inspect.getabsfile(obj)
|
|
||||||
- except (OSError, TypeError):
|
|
||||||
+ except TypeError:
|
|
||||||
# For an instance, the file that matters is where its class was
|
|
||||||
# declared.
|
|
||||||
try:
|
|
||||||
--- a/IPython/core/tests/test_oinspect.py
|
|
||||||
+++ b/IPython/core/tests/test_oinspect.py
|
|
||||||
@@ -35,6 +35,10 @@ class SourceModuleMainTest:
|
|
||||||
__module__ = "__main__"
|
|
||||||
|
|
||||||
|
|
||||||
+class SourceModuleMainTest:
|
|
||||||
+ __module__ = "__main__"
|
|
||||||
+
|
|
||||||
+
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
# Local utilities
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
@@ -43,7 +47,7 @@ class SourceModuleMainTest:
|
|
||||||
# defined, if any code is inserted above, the following line will need to be
|
|
||||||
# updated. Do NOT insert any whitespace between the next line and the function
|
|
||||||
# definition below.
|
|
||||||
-THIS_LINE_NUMBER = 46 # Put here the actual number of this line
|
|
||||||
+THIS_LINE_NUMBER = 50 # Put here the actual number of this line
|
|
||||||
|
|
||||||
|
|
||||||
def test_find_source_lines():
|
|
@ -1,44 +0,0 @@
|
|||||||
From ad08da6f192d30fd1494b4d5fafbd480872e97e0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Eric Prestat <eric.prestat@gmail.com>
|
|
||||||
Date: Sat, 15 Jan 2022 11:02:13 +0000
|
|
||||||
Subject: [PATCH] Fix display import in .core.display
|
|
||||||
|
|
||||||
---
|
|
||||||
IPython/core/display.py | 8 ++++----
|
|
||||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/IPython/core/display.py b/IPython/core/display.py
|
|
||||||
index f3934c2d9d7..9db75035762 100644
|
|
||||||
--- a/IPython/core/display.py
|
|
||||||
+++ b/IPython/core/display.py
|
|
||||||
@@ -83,7 +83,7 @@ def _display_mimetype(mimetype, objs, raw=False, metadata=None):
|
|
||||||
if raw:
|
|
||||||
# turn list of pngdata into list of { 'image/png': pngdata }
|
|
||||||
objs = [ {mimetype: obj} for obj in objs ]
|
|
||||||
- display(*objs, raw=raw, metadata=metadata, include=[mimetype])
|
|
||||||
+ display_functions.display(*objs, raw=raw, metadata=metadata, include=[mimetype])
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
# Main functions
|
|
||||||
@@ -517,10 +517,10 @@ def _repr_html_(self):
|
|
||||||
self.html_width, self.total, self.progress)
|
|
||||||
|
|
||||||
def display(self):
|
|
||||||
- display(self, display_id=self._display_id)
|
|
||||||
+ display_functions.display(self, display_id=self._display_id)
|
|
||||||
|
|
||||||
def update(self):
|
|
||||||
- display(self, display_id=self._display_id, update=True)
|
|
||||||
+ display_functions.display(self, display_id=self._display_id, update=True)
|
|
||||||
|
|
||||||
@property
|
|
||||||
def progress(self):
|
|
||||||
@@ -694,7 +694,7 @@ def _ipython_display_(self):
|
|
||||||
metadata = {
|
|
||||||
'application/geo+json': self.metadata
|
|
||||||
}
|
|
||||||
- display(bundle, metadata=metadata, raw=True)
|
|
||||||
+ display_functions.display(bundle, metadata=metadata, raw=True)
|
|
||||||
|
|
||||||
class Javascript(TextDisplayObject):
|
|
||||||
|
|
@ -1,3 +1,48 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Feb 26 21:08:02 UTC 2022 - Arun Persaud <arun@gmx.de>
|
||||||
|
|
||||||
|
- specfile:
|
||||||
|
* removed patch: skip-network-test.patch (included upstream)
|
||||||
|
* removed patch: ipython-pr13371-py310-oserror.patch (included upstream)
|
||||||
|
* removed patch: ipython-pr13466-display.patch (included upstream)
|
||||||
|
* removed patch: ipython-pr13282-py310-inspect.patch (fixed upstream)
|
||||||
|
|
||||||
|
- update to version 8.1.0:
|
||||||
|
* Misc and multiple fixes around quotation auto-closing. It is now
|
||||||
|
disabled by default. Run with
|
||||||
|
TerminalInteractiveShell.auto_match=True to re-enabled
|
||||||
|
* Require pygments>=2.4.0 :ghpull:`13459`, this was implicit in the
|
||||||
|
code, but is now explicit in setup.cfg/setup.py
|
||||||
|
* Docs improvement of core.magic_arguments examples. :ghpull:`13433`
|
||||||
|
* Multi-line edit executes too early with await. :ghpull:`13424`
|
||||||
|
* black is back as an optional dependency, and autoformatting
|
||||||
|
disabled by default until some fixes are implemented (black
|
||||||
|
improperly reformat magics). :ghpull:`13471` Additionally the
|
||||||
|
ability to use yapf as a code reformatter has been added
|
||||||
|
:ghpull:`13528` . You can use
|
||||||
|
TerminalInteractiveShell.autoformatter="black",
|
||||||
|
TerminalInteractiveShell.autoformatter="yapf" to re-enable auto
|
||||||
|
formating with black, or switch to yapf.
|
||||||
|
* Fix and issue where display was not defined.
|
||||||
|
* Auto suggestions are now configurable. Currently only
|
||||||
|
AutoSuggestFromHistory (default) and None. new provider
|
||||||
|
contribution welcomed. :ghpull:`13475`
|
||||||
|
* multiple packaging/testing improvement to simplify downstream
|
||||||
|
packaging (xfail with reasons, try to not access network...).
|
||||||
|
* Update deprecation. InteractiveShell.magic internal method has
|
||||||
|
been deprecated for many years but did not emit a warning until
|
||||||
|
now.
|
||||||
|
* internal appended_to_syspath context manager has been deprecated.
|
||||||
|
* fix an issue with symlinks in virtualenv :ghpull:`13537`
|
||||||
|
* Fix an issue with vim mode, where cursor would not be reset on
|
||||||
|
exit :ghpull:`13472`
|
||||||
|
* ipython directive now remove only known pseudo-decorators
|
||||||
|
:ghpull:`13532`
|
||||||
|
* IPython/lib/security which used to be used for jupyter notebook
|
||||||
|
has been removed.
|
||||||
|
* Fix an issue where async with would execute on new
|
||||||
|
lines. :ghpull:`13436`
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Feb 3 20:32:01 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
Thu Feb 3 20:32:01 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
@ -16,12 +16,6 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%if 0%{?suse_version} > 1500
|
|
||||||
%bcond_without libalternatives
|
|
||||||
%else
|
|
||||||
%bcond_with libalternatives
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%global flavor @BUILD_FLAVOR@%{nil}
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
%if "%{flavor}" == "test"
|
%if "%{flavor}" == "test"
|
||||||
%define psuffix -test
|
%define psuffix -test
|
||||||
@ -30,11 +24,15 @@
|
|||||||
%define psuffix %{nil}
|
%define psuffix %{nil}
|
||||||
%bcond_with test
|
%bcond_with test
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%{?!python_module:%define python_module() python3-%{**}}
|
%{?!python_module:%define python_module() python3-%{**}}
|
||||||
%define skip_python2 1
|
%define skip_python2 1
|
||||||
|
%if 0%{?suse_version} > 1500
|
||||||
|
%bcond_without libalternatives
|
||||||
|
%else
|
||||||
|
%bcond_with libalternatives
|
||||||
|
%endif
|
||||||
Name: python-ipython%{psuffix}
|
Name: python-ipython%{psuffix}
|
||||||
Version: 8.0.1
|
Version: 8.1.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Rich architecture for interactive computing with Python
|
Summary: Rich architecture for interactive computing with Python
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
@ -42,20 +40,12 @@ Group: Development/Languages/Python
|
|||||||
URL: https://github.com/ipython/ipython
|
URL: https://github.com/ipython/ipython
|
||||||
Source: https://files.pythonhosted.org/packages/source/i/ipython/ipython-%{version}.tar.gz
|
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
|
Source1: https://raw.githubusercontent.com/jupyter/qtconsole/4.0.0/qtconsole/resources/icon/JupyterConsole.svg
|
||||||
# PATCH-FIX-UPSTREAM ipython-pr13282-py310-inspect.patch -- gh#ipython/ipython#13282, gh#ipython/ipython#13412
|
|
||||||
Patch0: ipython-pr13282-py310-inspect.patch
|
|
||||||
# PATCH-FIX-UPSTREAM ipython-pr13371-py310-oserror.patch -- gh#ipython/ipython#13371
|
|
||||||
Patch1: ipython-pr13371-py310-oserror.patch
|
|
||||||
# PATCH-FIX-UPSTREAM ipython-pr13466-display.patch -- gh#ipython/ipython#13466
|
|
||||||
Patch2: https://github.com/ipython/ipython/pull/13466.patch#/ipython-pr13466-display.patch
|
|
||||||
# PATCH-FIX-OPENSUSE skip-network-test.patch gh#ipython/ipython#13468 mcepl@suse.com
|
|
||||||
# skip doctests requiring network connection
|
|
||||||
Patch3: skip-network-test.patch
|
|
||||||
BuildRequires: %pythons
|
|
||||||
BuildRequires: %{python_module base >= 3.7}
|
BuildRequires: %{python_module base >= 3.7}
|
||||||
BuildRequires: %{python_module setuptools >= 18.5}
|
BuildRequires: %{python_module setuptools >= 18.5}
|
||||||
|
BuildRequires: %{pythons}
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python-rpm-macros >= 20210929
|
BuildRequires: python-rpm-macros >= 20210929
|
||||||
|
Requires: (python-prompt_toolkit >= 2.0 with python-prompt_toolkit < 3.1)
|
||||||
# requires the full stdlib including sqlite3
|
# requires the full stdlib including sqlite3
|
||||||
Requires: python >= 3.7
|
Requires: python >= 3.7
|
||||||
Requires: python-backcall
|
Requires: python-backcall
|
||||||
@ -69,7 +59,6 @@ Requires: python-pygments
|
|||||||
Requires: python-setuptools >= 18.5
|
Requires: python-setuptools >= 18.5
|
||||||
Requires: python-stack-data
|
Requires: python-stack-data
|
||||||
Requires: python-traitlets >= 5
|
Requires: python-traitlets >= 5
|
||||||
Requires: (python-prompt_toolkit >= 2.0 with python-prompt_toolkit < 3.1)
|
|
||||||
Recommends: jupyter
|
Recommends: jupyter
|
||||||
Recommends: python-ipykernel
|
Recommends: python-ipykernel
|
||||||
Recommends: python-ipyparallel
|
Recommends: python-ipyparallel
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
---
|
|
||||||
IPython/core/display.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/IPython/core/display.py
|
|
||||||
+++ b/IPython/core/display.py
|
|
||||||
@@ -879,7 +879,7 @@ class Image(DisplayObject):
|
|
||||||
a URL, or a filename from which to load image data.
|
|
||||||
The result is always embedding image data for inline images.
|
|
||||||
|
|
||||||
- >>> Image('http://www.google.fr/images/srpr/logo3w.png')
|
|
||||||
+ >>> Image('http://www.google.fr/images/srpr/logo3w.png') # doctest: +SKIP
|
|
||||||
<IPython.core.display.Image object>
|
|
||||||
|
|
||||||
>>> Image('/path/to/image.jpg')
|
|
Loading…
Reference in New Issue
Block a user