bpo-27635: Fix pickle documentation about `__new__` not being called. (GH-19269)

Automerge-Triggered-By: @pitrou
(cherry picked from commit 482259d0dc)

Co-authored-by: Furkan Önder <furkantahaonder@gmail.com>
This commit is contained in:
Miss Islington (bot) 2020-04-18 11:14:55 -07:00 committed by GitHub
parent bfda4db0d2
commit 020f2aaaea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -639,9 +639,9 @@ the methods :meth:`__getstate__` and :meth:`__setstate__`.
At unpickling time, some methods like :meth:`__getattr__`,
:meth:`__getattribute__`, or :meth:`__setattr__` may be called upon the
instance. In case those methods rely on some internal invariant being
true, the type should implement :meth:`__getnewargs__` or
:meth:`__getnewargs_ex__` to establish such an invariant; otherwise,
neither :meth:`__new__` nor :meth:`__init__` will be called.
true, the type should implement :meth:`__new__` to establish such an
invariant, as :meth:`__init__` is not called when unpickling an
instance.
.. index:: pair: copy; protocol

View File

@ -0,0 +1,2 @@
The pickle documentation incorrectly claimed that ``__new__`` isn't called by
default when unpickling.