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.

Author charlesc
Recipients charlesc
Date 2017-04-25.16:19:37
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1493137178.06.0.0316334052023.issue30161@psf.upfronthosting.co.za>
In-reply-to
Content
This is a weird one.  I've reproduced it with 3 versions of 2.7, including the latest 2.7.13.  I didn't find an open bug about this, but I had difficulty crafting a search string for it, so I may have missed something.

Basically, using a `with` statement (maybe any such statement, but using an open file definitely does it, even when I do nothing with it) causes the built-in dict class to stop raising AttributeErrors, which can result in odd bugs.

Example:

Python 2.7.13 (default, Apr 25 2017, 10:12:36) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> with sys.stderr as foo:
...     pass
... 
>>> {}.nosuchattribute
>>> {}.nosuchattribute is None
>>> 

I haven't tried the latest 3.x, but it's definitely still there in 3.2.3:

Python 3.2.3 (default, Nov 17 2016, 01:04:00) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> with sys.stderr as foo:
...     pass
... 
>>> {}.nosuchattribute
>>> {}.nosuchattribute is None
>>>
History
Date User Action Args
2017-04-25 16:19:38charlescsetrecipients: + charlesc
2017-04-25 16:19:38charlescsetmessageid: <1493137178.06.0.0316334052023.issue30161@psf.upfronthosting.co.za>
2017-04-25 16:19:37charlesclinkissue30161 messages
2017-04-25 16:19:37charlesccreate