This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: __new__ is class method
Type: Stage:
Components: Documentation Versions:
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: georg.brandl Nosy List: georg.brandl, georg.brandl, hierro, mwh
Priority: normal Keywords:

Created on 2005-08-16 18:53 by hierro, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (4)
msg26063 - (view) Author: Mike Orr (hierro) Date: 2005-08-16 18:53
Section 3.3.1 of the Language Reference says,
" __new__() is a static method"

But it's actually a class method since it's first
argument is the class.
msg26064 - (view) Author: Georg Brandl (georg.brandl) * (Python committer) Date: 2005-08-25 21:57
Logged In: YES 
user_id=1188172

Thanks for the report, fixed in Doc/ref/ref3.tex r1.127,
1.121.2.6.
msg26065 - (view) Author: Michael Hudson (mwh) (Python committer) Date: 2005-08-26 09:47
Logged In: YES 
user_id=6656

Argh!  Confusing as it is, __new__ really *is* a static method:

>>> class C(object):
...  def __new__(cls, name, bases, ns):
...   pass
... 
>>> C.__dict__['__new__']
<staticmethod object at 0x2de9d0>

so please revert this.
msg26066 - (view) Author: Georg Brandl (georg.brandl) * (Python committer) Date: 2005-08-26 12:56
Logged In: YES 
user_id=1188172

Okay, reverted in Doc/ref/ref3.tex 1.128, 1.121.2.7.
History
Date User Action Args
2022-04-11 14:56:12adminsetgithub: 42282
2005-08-16 18:53:23hierrocreate