.. _changelog: Changelog ========= master ------ 0.11.0 (2016-02-05) ------------------- - Add :class:`bidict.orderedbidict`, :class:`bidict.looseorderedbidict`, and :class:`bidict.frozenorderedbidict`. - Adopt `Open Code of Conduct `_. - Drop official support for pypy3 (it still may work but is no longer being tested). bidict may add back support for pypy3 once it's made more progress. 0.10.0.post1 (2015-12-23) ------------------------- - Minor documentation fixes/improvements 0.10.0 (2015-12-23) ------------------- - Removed several features in favor of keeping the API simpler and the code more maintainable. - In the interest of protecting data safety more proactively, by default bidict now raises an error on attempting to insert a non-unique value, rather than allowing its associated key to be silently overwritten. See discussion in `#21 `_. - New :attr:`forceupdate ` method for bulk :attr:`forceput `. - Fix bugs in :attr:`pop ` and :attr:`setdefault ` which could leave a bidict in an inconsistent state. Breaking API Changes ^^^^^^^^^^^^^^^^^^^^ - Removed ``bidict.__invert__``, and with it, support for the ``~b`` syntax. Use :attr:`b.inv ` instead. `#19 `_ - Removed support for the slice syntax. Use ``b.inv[val]`` rather than ``b[:val]``. `#19 `_ - Removed ``bidict.invert``. Use :attr:`b.inv ` rather than inverting a bidict in place. `#20 `_ - Raise :class:`ValueExistsException ` when attempting to insert a mapping with a non-unique key. `#21 `_ - Renamed ``collapsingbidict`` to :class:`loosebidict ` now that it suppresses :class:`ValueExistsException ` rather than the less general ``CollapseException``. `#21 `_ - ``CollapseException`` has been subsumed by :class:`ValueExistsException `. `#21 `_ - :attr:`put ` now raises :class:`KeyExistsException ` when attempting to insert an already-existing key, and :class:`ValueExistsException ` when attempting to insert an already-existing value. 0.9.0.post1 (2015-06-06) ------------------------ - Fixed metadata missing in the 0.9.0rc0 release 0.9.0rc0 (2015-05-30) --------------------- - Added a Changelog! Also a `Contributors' Guide `_, `Gitter chat room `_, and other community-oriented improvements - Adopted Pytest (thanks Tom Viner and Adopt Pytest Month) - Added property-based tests via `hypothesis `_ - Other code, tests, and docs improvements Breaking API Changes ^^^^^^^^^^^^^^^^^^^^ - Moved :func:`bidict.iteritems` and :func:`bidict.viewitems` to new :attr:`bidict.compat` module - Moved :class:`bidict.inverted` to new :attr:`bidict.util` module (still available from top-level :mod:`bidict` module as well) - Moved/renamed ``bidict.fancy_iteritems`` to :func:`bidict.util.pairs` (also available from top level as :func:`bidict.pairs`) - Renamed ``bidict_type`` keyword arg to ``base_type`` in :func:`bidict.namedbidict`