Uh oh!
There was an error while loading. Please reload this page.
gh-118033: Fix __weakref__ not set for generic dataclasses - #118099
Conversation
No, this is not correct, we also need to check |
sobolevn
commented
Apr 19, 2024
Ubuntu failures are not related, there are some network problems right now |
carljm
left a comment
There was a problem hiding this comment.
I think this fix is correct; some suggestions and a question.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
carljm
left a comment
There was a problem hiding this comment.
This looks fine to me. Sorry I didn't see the notification sooner that you requested another review!
I still think the best version of this might look at __weakrefoffset__ and __dictrefoffset__ always to decide on those two slots, but I agree that's an edge case and can be handled separately; this is still a clear improvement and fixes the original bug.
Thanks @sobolevn for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12, 3.13. |
…ythonGH-118099) (cherry picked from commit fa9b9cb) Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
…ythonGH-118099) (cherry picked from commit fa9b9cb) Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
GH-118821 is a backport of this pull request to the 3.13 branch. |
GH-118822 is a backport of this pull request to the 3.12 branch. |
Looks like that classes with
__weakrefoffset__ == 0does not need to add__weakref__slot to existing super ones.dataclasses: 3.12.3 regression withweakref_slot#118033