Python 3.8: PEP 570 positional only arguments (patch)
This commit is contained in:
parent
25810e08f8
commit
dbe539c83b
97
11720.patch
Normal file
97
11720.patch
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
From 248128dfaabb33e922b1e36a298fd7ec0c730069 Mon Sep 17 00:00:00 2001
|
||||||
|
From: stonebig <stonebig34@gmail.com>
|
||||||
|
Date: Sat, 11 May 2019 14:19:20 +0200
|
||||||
|
Subject: [PATCH 1/2] Python-3.8 PEP570 positional only argument
|
||||||
|
|
||||||
|
---
|
||||||
|
IPython/core/interactiveshell.py | 54 ++++++++++++++++++++++----------
|
||||||
|
1 file changed, 37 insertions(+), 17 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/IPython/core/interactiveshell.py b/IPython/core/interactiveshell.py
|
||||||
|
index ce8ceb196c..8cc89e4192 100644
|
||||||
|
--- a/IPython/core/interactiveshell.py
|
||||||
|
+++ b/IPython/core/interactiveshell.py
|
||||||
|
@@ -138,23 +138,43 @@ def removed_co_newlocals(function:types.FunctionType) -> types.FunctionType:
|
||||||
|
from types import CodeType, FunctionType
|
||||||
|
CO_NEWLOCALS = 0x0002
|
||||||
|
code = function.__code__
|
||||||
|
- new_code = CodeType(
|
||||||
|
- code.co_argcount,
|
||||||
|
- code.co_kwonlyargcount,
|
||||||
|
- code.co_nlocals,
|
||||||
|
- code.co_stacksize,
|
||||||
|
- code.co_flags & ~CO_NEWLOCALS,
|
||||||
|
- code.co_code,
|
||||||
|
- code.co_consts,
|
||||||
|
- code.co_names,
|
||||||
|
- code.co_varnames,
|
||||||
|
- code.co_filename,
|
||||||
|
- code.co_name,
|
||||||
|
- code.co_firstlineno,
|
||||||
|
- code.co_lnotab,
|
||||||
|
- code.co_freevars,
|
||||||
|
- code.co_cellvars
|
||||||
|
- )
|
||||||
|
+ if sys.version_info > (3,8):
|
||||||
|
+ new_code = CodeType(
|
||||||
|
+ code.co_argcount,
|
||||||
|
+ code.co_posonlyargcount, # Python-3.8 PEP570 positional only argument
|
||||||
|
+ code.co_kwonlyargcount,
|
||||||
|
+ code.co_nlocals,
|
||||||
|
+ code.co_stacksize,
|
||||||
|
+ code.co_flags & ~CO_NEWLOCALS,
|
||||||
|
+ code.co_code,
|
||||||
|
+ code.co_consts,
|
||||||
|
+ code.co_names,
|
||||||
|
+ code.co_varnames,
|
||||||
|
+ code.co_filename,
|
||||||
|
+ code.co_name,
|
||||||
|
+ code.co_firstlineno,
|
||||||
|
+ code.co_lnotab,
|
||||||
|
+ code.co_freevars,
|
||||||
|
+ code.co_cellvars
|
||||||
|
+ )
|
||||||
|
+ else:
|
||||||
|
+ new_code = CodeType(
|
||||||
|
+ code.co_argcount,
|
||||||
|
+ code.co_kwonlyargcount,
|
||||||
|
+ code.co_nlocals,
|
||||||
|
+ code.co_stacksize,
|
||||||
|
+ code.co_flags & ~CO_NEWLOCALS,
|
||||||
|
+ code.co_code,
|
||||||
|
+ code.co_consts,
|
||||||
|
+ code.co_names,
|
||||||
|
+ code.co_varnames,
|
||||||
|
+ code.co_filename,
|
||||||
|
+ code.co_name,
|
||||||
|
+ code.co_firstlineno,
|
||||||
|
+ code.co_lnotab,
|
||||||
|
+ code.co_freevars,
|
||||||
|
+ code.co_cellvars
|
||||||
|
+ )
|
||||||
|
return FunctionType(new_code, globals(), function.__name__, function.__defaults__)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
From 3b160421894ef3495781a6d76fe0edd0fe44ea2d Mon Sep 17 00:00:00 2001
|
||||||
|
From: stonebig <stonebig34@gmail.com>
|
||||||
|
Date: Sat, 11 May 2019 14:31:54 +0200
|
||||||
|
Subject: [PATCH 2/2] be more precise : >3.8.0a3
|
||||||
|
|
||||||
|
---
|
||||||
|
IPython/core/interactiveshell.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/IPython/core/interactiveshell.py b/IPython/core/interactiveshell.py
|
||||||
|
index 8cc89e4192..c102b2352d 100644
|
||||||
|
--- a/IPython/core/interactiveshell.py
|
||||||
|
+++ b/IPython/core/interactiveshell.py
|
||||||
|
@@ -138,7 +138,7 @@ def removed_co_newlocals(function:types.FunctionType) -> types.FunctionType:
|
||||||
|
from types import CodeType, FunctionType
|
||||||
|
CO_NEWLOCALS = 0x0002
|
||||||
|
code = function.__code__
|
||||||
|
- if sys.version_info > (3,8):
|
||||||
|
+ if sys.version_info > (3, 8, 0, 'alpha', 3):
|
||||||
|
new_code = CodeType(
|
||||||
|
code.co_argcount,
|
||||||
|
code.co_posonlyargcount, # Python-3.8 PEP570 positional only argument
|
@ -13,6 +13,9 @@ License: (BSD and MIT and Python) and GPLv2+
|
|||||||
URL: http://ipython.org/
|
URL: http://ipython.org/
|
||||||
Source0: %pypi_source
|
Source0: %pypi_source
|
||||||
|
|
||||||
|
# Python 3.8: PEP 570 positional only arguments
|
||||||
|
Patch1: https://github.com/ipython/ipython/pull/11720.patch
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user