Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ok, here's something easy to merge.
I've done some work on the simple_classes strategy. It's somewhat documented, takes some parameters, and implemented in a clearer way. This is in the hopes it will get used more by other contributors in tests.
I've then applied this strategy to assoc tests. The tests picked up failures right away. I've applied a dumb fix to assoc to make slot classes pass.
The tests picked up another failure though: if a class is both slots and frozen, assoc will fail deep in copy.copy. This isn't so easily fixed.
Plot twist!
Digging around in the source of copy.copy, I see mentions of pickling. Applying these changes on to #81 allows copy.copy() to copy slots+frozen classes.