From d930d85f120d67f7bab3f69f881bb1c65f462ea7 Mon Sep 17 00:00:00 2001 From: Yury Selivanov Date: Sun, 2 Mar 2014 12:25:27 -0500 Subject: [PATCH] Issue #20786: Fix signatures for dict.__delitem__ and property.__delete__ --- Lib/test/test_inspect.py | 5 +++++ Misc/NEWS | 7 ++++++- Objects/typeobject.c | 4 ++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py index 0dc74512a2..5c6ae394d5 100644 --- a/Lib/test/test_inspect.py +++ b/Lib/test/test_inspect.py @@ -1764,6 +1764,11 @@ class TestSignatureObject(unittest.TestCase): __call__ = type test_callable(ThisWorksNow()) + # Regression test for issue #20786 + test_unbound_method(dict.__delitem__) + test_unbound_method(property.__delete__) + + @cpython_only @unittest.skipIf(MISSING_C_DOCSTRINGS, "Signature information for builtins requires docstrings") diff --git a/Misc/NEWS b/Misc/NEWS index a3ca8db080..172bb735a8 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -4,9 +4,14 @@ Python News What's New in Python 3.4.0 release candidate 3? =============================================== - Release date: 2014-03-09 +Core and Builtins +----------------- + +- Issue #20786: Fix signatures for dict.__delitem__ and + property.__delete__ builtins. + Build ----- diff --git a/Objects/typeobject.c b/Objects/typeobject.c index f58960d28c..49385e2f6c 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -6189,7 +6189,7 @@ static slotdef slotdefs[] = { "__set__($self, instance, value, /)\n--\n\nSet an attribute of instance to value."), TPSLOT("__delete__", tp_descr_set, slot_tp_descr_set, wrap_descr_delete, - "__delete__(instance, /)\n--\n\nDelete an attribute of instance."), + "__delete__($self, instance, /)\n--\n\nDelete an attribute of instance."), FLSLOT("__init__", tp_init, slot_tp_init, (wrapperfunc)wrap_init, "__init__($self, /, *args, **kwargs)\n--\n\n" "Initialize self. See help(type(self)) for accurate signature.", @@ -6286,7 +6286,7 @@ static slotdef slotdefs[] = { "__setitem__($self, key, value, /)\n--\n\nSet self[key] to value."), MPSLOT("__delitem__", mp_ass_subscript, slot_mp_ass_subscript, wrap_delitem, - "__delitem__(key)\n--\n\nDelete self[key]."), + "__delitem__($self, key, /)\n--\n\nDelete self[key]."), SQSLOT("__len__", sq_length, slot_sq_length, wrap_lenfunc, "__len__($self, /)\n--\n\nReturn len(self)."), -- 2.40.0