-
Notifications
You must be signed in to change notification settings - Fork 54
Open
Description
There is an env var being checked in a couple places that I don't see mentioned outside the code:
class PickleProperty(BlobProperty):
...
def _from_base_type(self, value):
try:
return pickle.loads(value)
except UnicodeDecodeError:
if int(os.environ.get('NDB_PY2_UNPICKLE_COMPAT', '0')):
return pickle.loads(value, encoding='bytes')
raise
class Key(object):
...
def __new__(cls, *_args, **kwargs):
...
if int(os.environ.get('NDB_PY2_UNPICKLE_COMPAT', '0')):
kwargs = {six.ensure_str(k): v for (k, v) in kwargs.items()}
Should we set this, is it set for us, should we avoid it?
I'm running into some assorted pickle-related issues which had me looking at this (not-so-)recent change, and it's a bit tricky to figure out if it's better to try more "global" sorts of fixes or just site-specific workarounds to avoid dealing with messier problems.
Metadata
Metadata
Assignees
Labels
No labels