New submission from Serhiy Storchaka:

Pickling of objects of classes whose __new__ mandates the use of keyword-only 
arguments is supported with protocol 4 (using a new opcode NEWOBJ_EX). But it 
is possible to implement this feature with protocol 2+ (less efficiently than 
with NEWOBJ_EX). __new_ex__ is pickled as partial(cls.__new__, cls, *args, 
**kwargs). Pickled data is compatible with older Python releases up to 2.7 
(issue5228).

Proposed patch adds support of __new__ with keyword arguments with protocols 2 
and 3.

----------
components: Extension Modules, Interpreter Core, Library (Lib)
files: pickle_new_ex_protocol_2.patch
keywords: patch
messages: 242890
nosy: alexandre.vassalotti, pitrou, serhiy.storchaka
priority: normal
severity: normal
stage: patch review
status: open
title: Support pickling objects with __new__ with keyword arguments with 
protocol 2+
type: enhancement
versions: Python 3.5
Added file: http://bugs.python.org/file39341/pickle_new_ex_protocol_2.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue24164>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to