mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
dev-python/dill: Remove old
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST dill-0.3.9.tar.gz 187000 BLAKE2B 56196bd04d0a050619feee6b719e9232376853a03fae3a7486fa48f90fea1e27b4f4eaa31b0df54e70cf1aa4333268213dd6350408db0b78778d92f04ae65bd0 SHA512 461943ff8a0b7212b30e7c8b9e35348d0215c1c6dca356ad813e15c8721f39692fb61809349e5ee63a00d19a39aeae34c3b4def17257f8f7820e4318b81b273f
|
||||
DIST dill-0.4.0.tar.gz 186976 BLAKE2B fefaaa23b98df7548089907224ec405efa75570df51fb08940d14193a7710355ab473b335642d153920a42fe648e218db30b846c826964accd1c1ba79b2cc708 SHA512 1289780e9326959a4d2488e5097b889f27212fba23d35d5c0db00337b952cde20786ecdbefa03a8b276f0cec8dba5b8ea118245e39e4fe8fd3209b5c920829e7
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..13} pypy3 pypy3_11 )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Serialize all of Python (almost)"
|
||||
HOMEPAGE="
|
||||
https://github.com/uqfoundation/dill/
|
||||
https://pypi.org/project/dill/
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/uqfoundation/dill/pull/707
|
||||
# https://github.com/uqfoundation/dill/pull/701
|
||||
"${FILESDIR}/${P}-pypy311.patch"
|
||||
)
|
||||
|
||||
python_test() {
|
||||
"${EPYTHON}" -m dill.tests || die
|
||||
}
|
||||
@@ -1,123 +0,0 @@
|
||||
From 599265e0a0cec406e245808105b63987077f53f2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
|
||||
Date: Wed, 12 Mar 2025 03:41:39 +0100
|
||||
Subject: [PATCH] fix CodeType support for PyPy3.11 7.3.19+ (#707)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Add support for the variation of `types.CodeType` used in PyPy3.11
|
||||
7.3.19 and newer. It introduces `co_qualname` in addition
|
||||
to the previous members — but it does not feature `co_exceptiontable`
|
||||
like CPython 3.11. I've named the version `(3,11,'p')` for PyPy.
|
||||
|
||||
Fixes #706
|
||||
---
|
||||
dill/_dill.py | 26 ++++++++++++++++++++++++++
|
||||
1 file changed, 26 insertions(+)
|
||||
|
||||
diff --git a/dill/_dill.py b/dill/_dill.py
|
||||
index 152899f1..aec297c4 100644
|
||||
--- a/dill/_dill.py
|
||||
+++ b/dill/_dill.py
|
||||
@@ -665,6 +665,7 @@ def __getattr__(self, item):
|
||||
# Version New attribute CodeType parameters
|
||||
((3,11,'a'), 'co_endlinetable', 'argcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name qualname firstlineno linetable endlinetable columntable exceptiontable freevars cellvars'),
|
||||
((3,11), 'co_exceptiontable', 'argcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name qualname firstlineno linetable exceptiontable freevars cellvars'),
|
||||
+ ((3,11,'p'), 'co_qualname', 'argcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name qualname firstlineno linetable freevars cellvars'),
|
||||
((3,10), 'co_linetable', 'argcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name firstlineno linetable freevars cellvars'),
|
||||
((3,8), 'co_posonlyargcount', 'argcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name firstlineno lnotab freevars cellvars'),
|
||||
((3,7), 'co_kwonlyargcount', 'argcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name firstlineno lnotab freevars cellvars'),
|
||||
@@ -701,6 +702,22 @@ def _create_code(*args):
|
||||
args[17],
|
||||
)
|
||||
fields = m.fields
|
||||
+ # PyPy 3.11 7.3.19+ (17 members)
|
||||
+ elif m.case((
|
||||
+ 'argcount', 'posonlyargcount', 'kwonlyargcount', 'nlocals', 'stacksize', 'flags', # args[0:6]
|
||||
+ 'code', 'consts', 'names', 'varnames', 'filename', 'name', 'qualname', # args[6:13]
|
||||
+ 'firstlineno', 'linetable', 'freevars', 'cellvars' # args[13:]
|
||||
+ )):
|
||||
+ if CODE_VERSION == (3,11,'p'):
|
||||
+ return CodeType(
|
||||
+ *args[:6],
|
||||
+ args[6].encode() if hasattr(args[6], 'encode') else args[6], # code
|
||||
+ *args[7:14],
|
||||
+ args[14].encode() if hasattr(args[14], 'encode') else args[14], # linetable
|
||||
+ args[15],
|
||||
+ args[16],
|
||||
+ )
|
||||
+ fields = m.fields
|
||||
# Python 3.10 or 3.8/3.9 (16 members)
|
||||
elif m.case((
|
||||
'argcount', 'posonlyargcount', 'kwonlyargcount', 'nlocals', 'stacksize', 'flags', # args[0:6]
|
||||
@@ -1175,6 +1192,15 @@ def save_code(pickler, obj):
|
||||
obj.co_firstlineno, obj.co_linetable, obj.co_exceptiontable,
|
||||
obj.co_freevars, obj.co_cellvars
|
||||
)
|
||||
+ elif hasattr(obj, "co_qualname"): # pypy 3.11 7.3.19+ (17 args)
|
||||
+ args = (
|
||||
+ obj.co_lnotab, obj.co_argcount, obj.co_posonlyargcount,
|
||||
+ obj.co_kwonlyargcount, obj.co_nlocals, obj.co_stacksize,
|
||||
+ obj.co_flags, obj.co_code, obj.co_consts, obj.co_names,
|
||||
+ obj.co_varnames, obj.co_filename, obj.co_name, obj.co_qualname,
|
||||
+ obj.co_firstlineno, obj.co_linetable, obj.co_freevars,
|
||||
+ obj.co_cellvars
|
||||
+ )
|
||||
elif hasattr(obj, "co_linetable"): # python 3.10 (16 args)
|
||||
args = (
|
||||
obj.co_lnotab, # for < python 3.10 [not counted in args]
|
||||
|
||||
From a3d129f9c8aceb856a7e50277af4b7fef6ab9202 Mon Sep 17 00:00:00 2001
|
||||
From: Mike McKerns <mmckerns@caltech.edu>
|
||||
Date: Mon, 17 Feb 2025 00:06:31 -0500
|
||||
Subject: [PATCH] support pypy-3.11 (#701)
|
||||
|
||||
---
|
||||
dill/_dill.py | 2 +-
|
||||
dill/_objects.py | 2 +-
|
||||
dill/detect.py | 5 ++++-
|
||||
3 files changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dill/_dill.py b/dill/_dill.py
|
||||
index 987b96b..152899f 100644
|
||||
--- a/dill/_dill.py
|
||||
+++ b/dill/_dill.py
|
||||
@@ -571,7 +571,7 @@ if sys.hexversion >= 0x30a00a0:
|
||||
_incedental_reverse_typemap['LineIteratorType'] = type(compile('3', '', 'eval').co_lines())
|
||||
'''
|
||||
|
||||
-if sys.hexversion >= 0x30b00b0:
|
||||
+if sys.hexversion >= 0x30b00b0 and not IS_PYPY:
|
||||
from types import GenericAlias
|
||||
_incedental_reverse_typemap["GenericAliasIteratorType"] = type(iter(GenericAlias(list, (int,))))
|
||||
'''
|
||||
diff --git a/dill/_objects.py b/dill/_objects.py
|
||||
index 500322f..a37cd79 100644
|
||||
--- a/dill/_objects.py
|
||||
+++ b/dill/_objects.py
|
||||
@@ -402,7 +402,7 @@ except ImportError:
|
||||
if sys.hexversion >= 0x30a00a0 and not IS_PYPY:
|
||||
x['LineIteratorType'] = compile('3', '', 'eval').co_lines()
|
||||
|
||||
-if sys.hexversion >= 0x30b00b0:
|
||||
+if sys.hexversion >= 0x30b00b0 and not IS_PYPY:
|
||||
from types import GenericAlias
|
||||
d["GenericAliasIteratorType"] = iter(GenericAlias(list, (int,)))
|
||||
x['PositionsIteratorType'] = compile('3', '', 'eval').co_positions()
|
||||
diff --git a/dill/detect.py b/dill/detect.py
|
||||
index 1f8ae3d..2f0bea1 100644
|
||||
--- a/dill/detect.py
|
||||
+++ b/dill/detect.py
|
||||
@@ -145,7 +145,10 @@ def nestedglobals(func, recurse=True):
|
||||
CAN_NULL = sys.hexversion >= 0x30b00a7 # NULL may be prepended >= 3.11a7
|
||||
names = set()
|
||||
with capture('stdout') as out:
|
||||
- dis.dis(func) #XXX: dis.dis(None) disassembles last traceback
|
||||
+ try:
|
||||
+ dis.dis(func) #XXX: dis.dis(None) disassembles last traceback
|
||||
+ except IndexError:
|
||||
+ pass #FIXME: HACK for IS_PYPY (3.11)
|
||||
for line in out.getvalue().splitlines():
|
||||
if '_GLOBAL' in line:
|
||||
name = line.split('(')[-1].split(')')[0]
|
||||
Reference in New Issue
Block a user