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 abarnert
Recipients abarnert, abarry, curioswati, gvanrossum, martin.panter, ncoghlan, r.david.murray, rhettinger, serhiy.storchaka, terry.reedy
Date 2016-01-04.22:25:00
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1451946300.12.0.514183572336.issue25864@psf.upfronthosting.co.za>
In-reply-to
Content
> My main concern about the documentation was that in your patch you say _all_ special methods are now allowed to be None, but in your code you only check __iter__(). This is adding new undocumented inconsistencies e.g. with Iterable vs Container.

No it isn't. We already have undocumented inconsistencies between, e.g., Hashable vs. Container; we're just moving Iterable from one set to the other. (Notice that there's an even larger inconsistency between, e.g., Hashable and Container vs. Sequence and Set. As Guido suggests, that probably _does_ need to be fixed, but not as part of this bug, or #25958.)

And, as for the docs, it's already true that you can block fallback and inheritance of special methods by assigning them to None, but that isn't documented anywhere.

So, this bug doesn't add fix any of those inconsistencies, but it doesn't add any new ones, either. If you think we actually _need_ to fix them, see #25958 as at least a starting point. (Notice that Guido seems to want that one fixed, so, assuming I can write a decent patch for it, this bug would then become a one-liner: "__reversed__ = None" inside Mapping.)
History
Date User Action Args
2016-01-04 22:25:00abarnertsetrecipients: + abarnert, gvanrossum, rhettinger, terry.reedy, ncoghlan, r.david.murray, martin.panter, serhiy.storchaka, abarry, curioswati
2016-01-04 22:25:00abarnertsetmessageid: <1451946300.12.0.514183572336.issue25864@psf.upfronthosting.co.za>
2016-01-04 22:25:00abarnertlinkissue25864 messages
2016-01-04 22:25:00abarnertcreate