Releases: cdgriffith/Box
Releases · cdgriffith/Box
Version 5.0.0a2
- Fixing that recast of subclassses of
Box
orBoxList
were not fed box properties (thanks to Alexander Kapustin)
Version 5.0.0a1
- Adding
dotted
andflat
option forkeys
method to return box_dots style keys (thanks to ipcoder) - Fixing box_dots to properly delete items from lists
- Fixing box_dots to properly find items with dots in their key
Version 5.0.0a0
- Adding support for msgpack coverters
to_msgpack
andfrom_msgpack
- Adding support for comparision of
Box
to other boxes or dicts via the-
sub operator #144 (thanks to Hitz) - Adding support to
|
union boxes like will come default in Python 3.9 from PEP 0584 - Adding
mypy
type checking,black
formatting and other checks on commit - Adding new parameter
box_class
for cleaner inheritance #148 (thanks to David Aronchick) - Changing that sub boxes are always created to properly propagate settings and copy objects #150 (thanks to ipcoder)
- Changing that default_box will not raise key errors on
pop
ordel
#67 (thanks to Patrock) - Changing
to_csv
andfrom_csv
to have same string and filename options as all other transforms - Changing back to no required external imports
- Changing from putting all details in README.rst to a github wiki at https://github.com/cdgriffith/Box/wiki
- Changing
BoxList.box_class
to be stored inBoxList.box_options
dict asbox_class
- Removing support for single level circular references
- Removing readthedocs generation
- Removing overrides for
keys
,values
anditems
which will return views again
Version 4.2.3
Version 4.2.2
- Fixing
default_box
doesn't first look for safe attributes before falling back to default (thanks to Pymancer) - Changing from TravisCI to Github Actions
Version 4.2.1
- Fixing uncaught print statement (thanks to Bruno Rocha)
- Fixing old references to
box_it_up
in the documentation
Version 4.2.0
- Adding optimizations for speed ups to creation and inserts
- Adding internal record of safe attributes for faster lookups, increases memory footprint for speed (thanks to Jonas Irgens Kylling)
- Adding all additional methods specific to
Box
as protected keys - Fixing
merge_update
from incorrectly calling__setattr__
which was causing a huge slowdown (thanks to Jonas Irgens Kylling) - Fixing
copy
and__copy__
not copying box options
Version 4.1.0
- Adding support for list traversal with
box_dots
(thanks to Lei) - Adding
BoxWarning
class to allow for the clean suppression of warnings - Fixing default_box_attr to accept items that evaluate to
None
(thanks to Wenbo Zhao and Yordan Ivanov) - Fixing
BoxList
to properly send internal box options down into new lists - Fixing issues with conversion and camel killer boxes not being set properly on insert
- Changing default_box to set objects in box on lookup
- Changing
camel_killer
to convert items on insert, which will change the keys when converted back to dict unlike before - Fallback to
PyYAML
ifruamel.yaml
is not detected (thanks to wim glenn) - Removing official support for
pypy
as it's pickling behavior is not the same as CPython - Removing internal __box_heritage as it was no longer needed due to behavior update
Version 4.0.4 Not Found
- Fixing
get
to return None when not using default box (thanks to Jeremiah Lowin) - Updating outdated docs
Version 4.0.3
- Fixing non-string keys breaking when box_dots is enabled (thanks to Marcelo Huerta)