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

Update python-box to 7.2.0 #395

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

This PR updates python-box from 3.2.3 to 7.2.0.

Changelog

7.2.0

-------------

* Adding 266 support for accessing nested items in BoxList using numpy-style tuple indexing (thanks to Bit0r)
* Adding tests and Cython releases for Python 3.12
* Fixing 251 support for circular references in lists (thanks to Muspi Merol)
* Fixing 261 altering all `__repr__` methods so that subclassing will output the correct class name (thanks to Gabriel Tkacz)
* Fixing 267 Fix type 'int' not iterable (thanks to YISH)

7.1.1

-------------

* Fixing Cython optimized build deployments for linux

7.1.0

-------------

* Adding 255 defer ipython import for large import speed improvements (thanks to Eric Prestat)
* Adding testing for Python 3.12
* Fixing 253 merge_update box list merge types not populated to sub dictionaries (thanks to lei wang)
* Fixing 257 Two test failures due to arguments having incorrect types (thanks to Michał Górny)
* Fixing stub files to match latest code signatures
* Removing 251 support for circular references in lists (thanks to d00m514y3r)
* Removing support for Python 3.7 as it is EOL

7.0.1

-------------

* Switching off of poetry due to multiple build issues

7.0.0

-------------

* Adding 169 default functions with the box_instance and key parameter (thanks to Коптев Роман Викторович)
* Adding 170 Be able to initialize with a flattened dict - by using DDBox (thanks to Ash A.)
* Adding 192 box_dots treats all keys with periods in them as separate keys (thanks to Rexbard)
* Adding 211 support for properties and setters in subclasses (thanks to Serge Lu and David Aronchick)
* Adding 226 namespace to track changes to the box (thanks to Jacob Hayes)
* Adding 236 iPython detection to prevent adding attribute lookup words (thanks to Nishikant Parmar)
* Adding 238 allow ``|`` and ``+`` for frozen boxes (thanks to Peter B)
* Adding new DDBox class (Default Dots Box) that is a subclass of SBox
* Adding 242 more Cython builds using cibuildwheel (thanks to Jacob Hayes)
* Fixing 235 how ``|`` and ``+`` updates were performed for right operations (thanks to aviveh21)
* Fixing 234 typos (thanks to Martin Schorfmann)
* Fixing no implicit optionals with type hinting
* Removing Cython builds for mac until we can build universal2 wheels for arm M1 macs

6.1.0

-------------

* Adding Python 3.11 support
* Adding 195 box_from_string function (thanks to Marcelo Huerta)
* Changing the deprecated ``toml`` package with modern ``tomllib``, ``tomli`` and ``tomli-w`` usage (thanks to Michał Górny)
* Fixing mypy __ior__ type (thanks to Jacob Hayes)
* Fixing line endings with a pre-commit update
* Fixing BoxList was using old style of `super` in internal code usage

6.0.2

-------------

* Fixing that the typing `pyi` files were not included in the manifest (thanks to Julian Torres)

6.0.1

-------------

* Fixing 218 Box dots would not raise KeyError on bad key (thanks to Cliff Wells)
* Fixing 217 wording in readme overview needed updated (thanks to Julie Jones)

6.0.0

-------------

* Adding Cython support to greatly speed up normal Box operations on supported systems
* Adding 161 support for access box dots with `get` and checking with `in` (thanks to scott-createplay)
* Adding 183 support for all allowed character sets (thanks to Giulio Malventi)
* Adding 196 support for sliceable boxes (thanks to Dias)
* Adding 164 default_box_create_on_get toggle to disable setting box variable on get request (thanks to ipcoder)
* Changing 208 __repr__ to produce `eval`-able text (thanks to Jeff Robbins)
* Changing 215 support ruamel.yaml new syntax (thanks to Ivan Pepelnjak)
* Changing `update` and `merge_update` to not use a keyword that could cause issues in rare circumstances
* Changing internal `_safe_key` logic to be twice as fast
* Removing support for ruamel.yaml < 0.17

5.4.1

-------------

* Fixing 205 setdefault behavior with box_dots (thanks to  Ivan Pepelnjak)

5.4.0

-------------

* Adding py.typed for mypy support (thanks to Dominic)
* Adding testing for Python 3.10-dev
* Fixing 189 by adding mappings for mypy
* Fixing setdefault behavior with box_dots (thanks to ipcoder)
* Changing 193 how magic methods are handled with default_box (thanks to Rexbard)

5.3.0

-------------

* Adding support for functions to box_recast (thanks to Jacob Hayes)
* Adding 181 support for extending or adding new items to list during `merge_update`  (thanks to Marcos Dione)
* Fixing maintain stacktrace cause for BoxKeyError and BoxValueError (thanks to Jacob Hayes)
* Fixing 177 that emtpy yaml files raised errors instead of returning empty objects (thanks to Tim Schwenke)
* Fixing 171 that `popitems` wasn't first checking if box was frozen (thanks to Varun Madiath)
* Changing all files to LF line endings
* Removing duplicate `box_recast` calls (thanks to Jacob Hayes)
* Removing coveralls code coverage, due to repeated issues with service

5.2.0

-------------

* Adding checks for frozen boxes to `pop`, `popitem` and `clear` (thanks to Varun Madiath)
* Fixing requirements-test.txt (thanks to Fabian Affolter)
* Fixing Flake8 conflicts with black (thanks to Varun Madiath)
* Fixing coveralls update (thanks to Varun Madiath)

5.1.1

-------------

* Adding testing for Python 3.9
* Fixing 165 `box_dots` to work with `default_box`

5.1.0

-------------

* Adding 152 `dotted` option for `items` function (thanks to ipcoder)
* Fixing 157 bug in box.set_default where value is dictionary, return the internal value and not detached temporary (thanks to Noam Graetz)
* Removing warnings on import if optional libraries are missing

5.0.1

-------------

* Fixing 155 default box saving internal method calls and restricted options (thanks to Marcelo Huerta)

5.0.0

-------------

* Adding support for msgpack converters `to_msgpack` and `from_msgpack`
* Adding 144 support for comparision of `Box` to other boxes or dicts via the `-` sub operator (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 148 new parameter `box_class` for cleaner inheritance (thanks to David Aronchick)
* Adding 152 `dotted` option for `keys` 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
* Fixing that recast of subclassses of `Box` or `BoxList` were not fed box properties (thanks to Alexander Kapustin)
* Changing 150 that sub boxes are always created to properly propagate settings and copy objects (thanks to ipcoder)
* Changing 67 that default_box will not raise key errors on `pop` (thanks to Patrock)
* Changing `to_csv` and `from_csv` to have same string and filename options as all other transforms
* Changing 127 back to no required external imports, instead have extra requires like [all] (thanks to wim glenn)
* 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 in `BoxList.box_options` dict as `box_class`
* Changing `del` will raise `BoxKeyError`, subclass of both `KeyError` and `BoxError`
* Removing support for single level circular references
* Removing readthedocs generation
* Removing overrides for `keys`, `values` and `items` which will return views again

4.2.3

-------------

* Fixing README.md example 149 (thanks to J Alan Brogan)
* Changing `protected_keys` to remove magic methods from dict 146 (thanks to Krishna Penukonda)

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
* Changing that due to `default_box` fix, `pop` or `del` no longer raise BoxKeyErrors on missing items (UNCAUGHT BUG)

4.2.1

-------------

* Fixing uncaught print statement (thanks to Bruno Rocha)
* Fixing old references to `box_it_up` in the documentation

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

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` if `ruamel.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

4.0.4

-------------

* Fixing `get` to return None when not using default box (thanks to Jeremiah Lowin)

4.0.3

-------------

* Fixing non-string keys breaking when box_dots is enabled (thanks to Marcelo Huerta)

4.0.2

-------------

* Fixing converters to properly pass through new box arguments (thanks to Marcelo Huerta)

4.0.1

-------------

* Fixing setup.py for release
* Fixing documentation link

4.0.0

-------------

* Adding support for retrieving items via dot notation in keys
* Adding `box_from_file` helper function
* Adding merge_update that acts like previous Box magic update
* Adding support to `+` boxes together
* Adding default_box now can support expanding on `None` placeholders (thanks to Harun Tuncay and Jeremiah Lowin)
* Adding ability to recast specified fields (thanks to Steven McGrath)
* Adding to_csv and from_csv capability for BoxList objects (thanks to Jiuli Gao)
* Changing layout of project to be more object specific
* Changing update to act like normal dict update
* Changing to 120 line character limit
* Changing how `safe_attr` handles unsafe characters
* Changing all exceptions to be bases of BoxError so can always be caught with that base exception
* Changing delete to also access converted keys (thanks to iordanivanov)
* Changing from `PyYAML` to `ruamel.yaml` as default yaml import, aka yaml version default is 1.2 instead of 1.1
* Removing `ordered_box` as Python 3.6+ is ordered by default
* Removing `BoxObject` in favor of it being another module

3.4.6

-------------

* Fixing allowing frozen boxes to be deep copyable (thanks to jandelgado)

3.4.5

-------------

* Fixing update does not convert new sub dictionaries or lists (thanks to Michael Stella)
* Changing update to work as it used to with sub merging until major release

3.4.4

-------------

* Fixing pop not properly resetting box_heritage (thanks to Jeremiah Lowin)

3.4.3

-------------

* Fixing propagation of box options when adding a new list via setdefault (thanks to Stretch)
* Fixing update does not keep box_intact_types (thanks to pwwang)
* Fixing update to operate the same way as a normal dictionary (thanks to Craig Quiter)
* Fixing deepcopy not copying box options (thanks to Nikolay Stanishev)

3.4.2

-------------

* Adding license, changes and authors files to source distribution

3.4.1

-------------

* Fixing copy of inherited classes (thanks to pwwang)
* Fixing `get` when used with default_box

3.4.0

-------------

* Adding `box_intact_types` that allows preservation of selected object types (thanks to pwwang)
* Adding limitations section to readme

3.3.0

-------------

* Adding `BoxObject` (thanks to Brandon Gomes)

3.2.4

-------------

* Fixing recursion issue 68 when using setdefault (thanks to sdementen)
* Fixing ordered_box would make 'ordered_box_values' internal helper as key in sub boxes
Links

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.

1 participant