On Fri, Apr 4, 2008 at 8:08 AM, Jason Orendorff
<[EMAIL PROTECTED]> wrote:
> On Fri, Apr 4, 2008 at 9:38 AM, Guido van Rossum <[EMAIL PROTECTED]> wrote:
>
> >  What specific code breaks? Maybe we need to turn this into a warning
>  >  in order to be more backwards compatible?
>
>  I looked at Mercurial.
>
>  It doesn't use __hash__ at all.  It uses __eq__ in two files, three total 
> uses:
>  
> http://hg.intevation.org/mercurial/crew/file/6c4e12682fb9/mercurial/commands.py
>  
> http://hg.intevation.org/mercurial/crew/file/6c4e12682fb9/mercurial/context.py

If it breaks, perhaps the instances of one of those classes that
define __eq__ but not __hash__ are used in a set or as dict keys?
That's the difference between 2.5 and 2.6 in this area.

-- 
--Guido van Rossum (home page: http://www.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