-
Notifications
You must be signed in to change notification settings - Fork 98
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
Caching a box resuts in read error #260
Labels
Comments
It seems that when pickling the box, only the outer most box is set to box_dots=True for some reason. from box import Box
import pickle
b2 = Box(
{
"l1": {
"time_range_selected_utc": {
"left": "2023-03-01 10:00:00",
"right": "2023-06-01 10:00:00",
}
},
},
**{'box_dots': True, 'conversion_box': False, 'frozen_box': False}
)
pickle.dump(b2, open("testpickle", "wb"))
loaded = pickle.load(open("testpickle", "rb"))
print(loaded._box_config)
print(loaded["l1"]) # Works
print(loaded["l1"]._box_config)
print(loaded["l1.time_range_selected_utc"]) # Works
print(loaded["l1.time_range_selected_utc"]._box_config)
print(loaded["l1.time_range_selected_utc.left"]) # Breaks |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I have a use case where I want to cache boxes and read them back again. Below is a MWE using
joblib
for caching but I also found it doesn't work Flask caching. I think some metadata is lost when caching the box, so the retrieved box somehow is not a box withbox_dots = True
.Code
Output
The text was updated successfully, but these errors were encountered: