Nick Coghlan <ncogh...@gmail.com> added the comment:

I've added Guido to the thread, as my initial reaction is to propose 
deprecating writable __bases__ rather than trying to support it properly.

However, if we do decide to fix it, then the potential path to resolution I 
would suggest is:

1. Factor out all of the slot derivation code from its current location into a 
separate helper function
2. Adjust the descriptor for __bases__ to rerun all of that code when the bases 
are changed

That still wouldn't be guaranteed to work entirely reliably (since there are 
some actions taken in the first initialisation that make it hard for us to tell 
whether a method came from the class definition or was added implicitly by the 
class machinery, and any class decorators wouldn't be executed again, and we 
wouldn't be running __init_subclass__ for any of the new base classes either).

----------
nosy: +gvanrossum

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32768>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to