Uh oh!
There was an error while loading. Please reload this page.
inheritance for multiprocessing.managers.DictProxy - #12893
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
tungol
commented
Oct 24, 2024
I'm honestly kind of surprised all three of these turned out to be "no effect". |
According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉 |
AlexWaygood
commented
Oct 24, 2024
I think they're used somewhat rarely; I wouldn't be surprised if there's no mypy_primer coverage for them. They are used, though; we've had bug reports in the past about them when I caused a regression. |
tungol
commented
Oct 24, 2024
That makes sense. |
srittau
left a comment
There was a problem hiding this comment.
I'm in favor of changes like this, especially when there's no primer impact. It's also a chance to steer users towards using protocols. (In the long term we should also look into adding some "mapping light" protocols to typing. Similar to what I suggested for Reader/Writer protocols (which I need to prepare a PR for).)
AlexWaygood
commented
Oct 24, 2024
I'm a bit nervous about this, because sort-of the whole point of this class is that it's meant to be basically drop-in compatible with |
tungol
commented
Nov 5, 2024
I've opened a cpython issue and MR to get this and BaseListProxy registered to their ABCs at runtime. |
tungol
commented
Nov 6, 2024
This is now fixed in cpython for 3.12 and up. It probably doesn't make sense to branch for the sake of 3.8 to 3.11. |
Similar to #12873 and #12892
DictProxy doesn't inherit from MutableMapping and it isn't registered to it either. It does have all the relevant methods.