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 michael.foord
Recipients Trundle, benjamin.peterson, michael.foord, ncoghlan, pitrou
Date 2010-11-04.12:20:55
SpamBayes Score 0.00021090981
Marked as misclassified No
Message-id <1288873259.43.0.314231981583.issue9732@psf.upfronthosting.co.za>
In-reply-to
Content
Further updated implementation. Now handles data descriptors correctly but removes the code that resolves the builtin descriptors (calling __get__ on slot and attribute descriptors).

As it was resolving some descriptors but not all, and resolving getset descriptors could still trigger execution in C extensions, Benjamin felt it was more consistent and cleaner to return descriptor objects rather than resolving them. As a bonus it makes the code shorter too.

I would add to the documentation some example code showing how to handle the descriptor if the user wants to resolve them herself. (Example code shown in the tests.)

The only remaining cases that are handled incorrectly are pathological ones. (See the notes in the tests.)
History
Date User Action Args
2010-11-04 12:20:59michael.foordsetrecipients: + michael.foord, ncoghlan, pitrou, benjamin.peterson, Trundle
2010-11-04 12:20:59michael.foordsetmessageid: <1288873259.43.0.314231981583.issue9732@psf.upfronthosting.co.za>
2010-11-04 12:20:56michael.foordlinkissue9732 messages
2010-11-04 12:20:55michael.foordcreate