[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-06-16 Thread Nick Coghlan
Nick Coghlan added the comment: Thanks for the work on resolving this, all! -- resolution: -> fixed stage: backport needed -> resolved status: pending -> closed ___ Python tracker

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-06-15 Thread Serhiy Storchaka
Changes by Serhiy Storchaka : -- status: open -> pending ___ Python tracker ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-06-06 Thread Mariatta Wijaya
Mariatta Wijaya added the comment: New changeset 6fb12b5c43945f61f3da82e33eafb4ddae2296ee by Mariatta (Nate) in branch '3.6': bpo-29581: bpo-29581: Make ABCMeta.__new__ pass **kwargs to type.__new__ (GH-527) (GH-1282)

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-04-25 Thread Nate Soares
Changes by Nate Soares : -- pull_requests: +1390 ___ Python tracker ___ ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-04-24 Thread Mariatta Wijaya
Changes by Mariatta Wijaya : -- stage: -> backport needed ___ Python tracker ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-03-24 Thread Łukasz Langa
Łukasz Langa added the comment: New changeset bd583ef9857d99f9145ad0bb2c4424cc0baa63fc by Łukasz Langa (Nate) in branch 'master': bpo-29581: Make ABCMeta.__new__ pass **kwargs to type.__new__ (#527) https://github.com/python/cpython/commit/bd583ef9857d99f9145ad0bb2c4424cc0baa63fc --

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-03-06 Thread Roundup Robot
Changes by Roundup Robot : -- pull_requests: +437 ___ Python tracker ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-23 Thread Nick Coghlan
Nick Coghlan added the comment: Note that the publisher side workaround for this is relatively straightforward: __init_subclass__ implementations that want to be compatible with arbitrary metaclasses will need to take any additional parameters as class attributes (which they may delete),

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-23 Thread Nick Coghlan
Changes by Nick Coghlan : -- nosy: +Martin.Teichmann ___ Python tracker ___ ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-23 Thread Nick Coghlan
Nick Coghlan added the comment: Oops, and now I see the typo in the example code, it seems you're right. I was misremembering an earlier more decorator-like variant of the design where we didn't rely on passing the __init_subclass__ arguments through the metaclass constructor. --

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-23 Thread Nick Coghlan
Nick Coghlan added the comment: No, the filtering is only applied to the __new__ and __init__ calls on the metaclass, not to the __init_subclass__ call. Showing the last part of an interactive session where I ran the above commands: === >>> class

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-20 Thread Kevin Shweh
Kevin Shweh added the comment: Doesn't that ignore_extra_args thing prevent InitX.__init_subclass__ from receiving the x argument it wanted? It doesn't seem like a solution. -- nosy: +Kevin Shweh ___ Python tracker

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-19 Thread Nick Coghlan
Nick Coghlan added the comment: This is going to be the case anytime an attempt is made to combine parent classes with incompatible constructor signatures. "type" is unusual in that it goes to great lengths to present an adaptive signature that aligns with whatever the class definition does.

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-17 Thread Ivan Levkivskyi
Changes by Ivan Levkivskyi : -- nosy: +levkivskyi ___ Python tracker ___ ___

[issue29581] __init_subclass__ causes TypeError when used with standard library metaclasses (such as ABCMeta)

2017-02-16 Thread Nate Soares
New submission from Nate Soares: I believe I've found a bug (or, at least, critical shortcoming) in the way that python 3.6's __init_subclass__ interacts with abc.ABCMeta (and, presumably, most other metaclasses in the standard library). In short, if a class subclasses both an abstract class