On Mon, Aug 23, 2010 at 7:46 AM, Benjamin Peterson <benja...@python.org> wrote: > 2010/8/23 Yury Selivanov <yseliva...@gmail.com>: >> 1) I propose to change 'hasattr' behaviour in Python 3, making it to swallow >> only AttributeError exceptions (exactly like 'getattr'). Probably, Python >> 3.2 release is our last chance. > > I would be in support of that.
I am cautiously in favor. The existing behavior is definitely a mistake and a trap. But it has been depended on for almost 20 years now. I recommend that you create a patch, apply it, run the *entire* stdlib test suite and see how much breaks. That will give you an idea of the damage to expect for 3rd party code. >> 2) If you afraid that this new behaviour will break too much python 2 code >> converted with 2to3, we can introduce another 'hasattr' function defined in >> 2to3 module itself, and make it imported automatically in all files passed >> through 2to3 transformation pipeline. This new function will mimic >> 'hasattr' behaviour from python 2 and converted code should work as expected. > > But not this. Compatibility functions don't belong in 2to3. Indeed. -- --Guido van Rossum (python.org/~guido) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com