Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core: store multidata/multisave enums by value on py3.11 #1783

Merged
merged 1 commit into from
May 2, 2023

Conversation

black-sliver
Copy link
Member

What is this fixing or adding?

Python 3.11 changed to pickle/store enums by name rather than by value. This breaks our safe unpickle, it produces bigger pickles and it makes it impossible to rename keys in enums after the fact.
Changing it back to ByValue produces the same output as py<=3.10.

Change in python is here: python/cpython#26658

How was this tested?

$ python --version
Python 3.11.3
$ Generate.py
$ MultiServer.py ...
/send Player1 A Shrubbery
/save
$ MultiServer.py ...
Loaded save file with 1 received items for 1 players

This is what py3.10 did and should be better for AP than the new default
@black-sliver black-sliver merged commit 39c7c72 into ArchipelagoMW:main May 2, 2023
@black-sliver black-sliver deleted the enum-by-value-mixin branch May 2, 2023 06:23
kindasneaki pushed a commit to kindasneaki/Archipelago that referenced this pull request Jun 28, 2023
…MW#1783)

This is what py3.10 did and should be better for AP than the new default
FlySniper pushed a commit to FlySniper/Archipelago that referenced this pull request Nov 14, 2023
…MW#1783)

This is what py3.10 did and should be better for AP than the new default
Jouramie pushed a commit to Jouramie/Archipelago that referenced this pull request Feb 28, 2024
…MW#1783)

This is what py3.10 did and should be better for AP than the new default
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants