Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.5:Update
python-ipython
ipython-jedi018.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File ipython-jedi018.patch of Package python-ipython
From 5e979ec2119487e0d6ac33292f07ab62826645a5 Mon Sep 17 00:00:00 2001 From: Diego Fernandez <aiguo.fernandez@gmail.com> Date: Thu, 26 Mar 2020 14:07:22 -0600 Subject: [PATCH 1/3] Backport PR #12207 on 7.x This should make jedi 0.18 compatible with 7.x. Pinning is not an option as the resolver is free to pick older IPython with jedi 0.18 -- Bump jedi to at least 0.16.0 and fix deprecated function usage --- IPython/core/completer.py | 22 +++++++++++----------- IPython/terminal/ptutils.py | 2 ++ setup.py | 2 +- 3 files changed, 14 insertions(+), 12 deletions(-) Index: ipython-7.16.1/IPython/core/completer.py =================================================================== --- ipython-7.16.1.orig/IPython/core/completer.py +++ ipython-7.16.1/IPython/core/completer.py @@ -110,26 +110,23 @@ current development version to get bette # Copyright (C) 2001 Python Software Foundation, www.python.org -import __main__ import builtins as builtin_mod import glob -import time import inspect import itertools import keyword import os import re +import string import sys +import time import unicodedata -import string import warnings - from contextlib import contextmanager from importlib import import_module -from typing import Iterator, List, Tuple, Iterable from types import SimpleNamespace +from typing import Iterable, Iterator, List, Tuple -from traitlets.config.configurable import Configurable from IPython.core.error import TryNext from IPython.core.inputtransformer2 import ESC_MAGIC from IPython.core.latex_symbols import latex_symbols, reverse_latex_symbol @@ -137,7 +134,10 @@ from IPython.core.oinspect import Inspec from IPython.utils import generics from IPython.utils.dir2 import dir2, get_real_method from IPython.utils.process import arg_split -from traitlets import Bool, Enum, observe, Int +from traitlets import Bool, Enum, Int, observe +from traitlets.config.configurable import Configurable + +import __main__ # skip module docstests skip_doctest = True @@ -987,8 +987,17 @@ def _make_signature(completion)-> str: `(a, *args, b=1, **kwargs)` """ + # it looks like this might work on jedi 0.17 + if hasattr(completion, 'get_signatures'): + signatures = completion.get_signatures() + if not signatures: + return '(?)' + + c0 = completion.get_signatures()[0] + return '('+c0.to_string().split('(', maxsplit=1)[1] - return '(%s)'% ', '.join([f for f in (_formatparamchildren(p) for p in completion.params) if f]) + return '(%s)'% ', '.join([f for f in (_formatparamchildren(p) for signature in completion.get_signatures() + for p in signature.defined_names()) if f]) class IPCompleter(Completer): """Extension of the completer class with IPython-specific features""" @@ -1370,8 +1379,7 @@ class IPCompleter(Completer): else: raise ValueError("Don't understand self.omit__names == {}".format(self.omit__names)) - interpreter = jedi.Interpreter( - text[:offset], namespaces, column=cursor_column, line=cursor_line + 1) + interpreter = jedi.Interpreter(text[:offset], namespaces) try_jedi = True try: @@ -1398,7 +1406,7 @@ class IPCompleter(Completer): if not try_jedi: return [] try: - return filter(completion_filter, interpreter.completions()) + return filter(completion_filter, interpreter.complete(column=cursor_column, line=cursor_line + 1)) except Exception as e: if self.debug: return [_FakeJediCompletion('Oops Jedi has crashed, please report a bug with the following:\n"""\n%s\ns"""' % (e))] Index: ipython-7.16.1/IPython/terminal/ptutils.py =================================================================== --- ipython-7.16.1.orig/IPython/terminal/ptutils.py +++ ipython-7.16.1/IPython/terminal/ptutils.py @@ -9,6 +9,8 @@ not to be used outside IPython. import unicodedata from wcwidth import wcwidth +import sys +import traceback from IPython.core.completer import ( provisionalcompleter, cursor_to_position, Index: ipython-7.16.1/setup.py =================================================================== --- ipython-7.16.1.orig/setup.py +++ ipython-7.16.1/setup.py @@ -186,7 +186,7 @@ extras_require = dict( install_requires = [ 'setuptools>=18.5', - 'jedi>=0.10', + 'jedi>=0.16', 'decorator', 'pickleshare', 'traitlets>=4.2',
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor