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

Reply via email to