[issue19364] Implementing __getattr__ breaks copy and deepcopy

2013-10-24 Thread Kassym Dorsel
Kassym Dorsel added the comment: Yes. You're correct. Sorry for the confusion. Below is an updated snippet of code. >>> from copy import copy >>> class foo(): ... def __getattr__(self, attr): ... return None ... >>> f = foo() >>> copy(f)

[issue19364] Implementing __getattr__ breaks copy and deepcopy

2013-10-23 Thread Kassym Dorsel
New submission from Kassym Dorsel: When __getattr__ is implemented without also implementing __copy__ and __deepcopy__ trying to (deep)copy the class fails. >>> import copy >>> class foo(): ... def __getattr__(self, attr): ... return None ... >>> f = foo()