Changelog

0.11.0

  • #196 Define SortedDict.get to return the value mapped to a key or a specified default.
  • #198 Define SortedDict.setdefault to return the value mapped to a key or a specified default and map that default to the key.
  • 8fe14d796917 Add optional testing dependencies to project metadata.
  • #197 Define SortedDictItems.__contains__.

0.10.0

  • #184 Define SortedDictValues as a view over the values of a sorted dictionary. Define SortedDictValues.__repr__, SortedDictValues.__len__, SortedDictValues.__getitem__ and SortedDictValues.__iter__. Define SortedDictValuesIter as an iterator over the values of a sorted dictionary. Define SortedDictValuesIter.__iter__ and SortedDictValuesIter.__next__. Update SortedDict.values to return the aforementioned view.
  • #187 Define SortedDictItems as a view over the items of a sorted dictionary. Define SortedDictItems.__repr__, SortedDictItems.__len__, SortedDictItems.__getitem__ and SortedDictItems.__iter__. Define SortedDictItemsIter as an iterator over the items of a sorted dictionary. Define SortedDictItemsIter.__iter__ and SortedDictItemsIter.__next__. Update SortedDict.items to return the aforementioned view.

0.9.0

  • #179 Define SortedDict.__iter__.

0.8.2

  • #175 Update SortedDictKeys.__getitem__ to speed up the creation of a positive slice near the end or a negative slice near the beginning.

0.8.1

  • #169 Update SortedDictKeys.__getitem__ to raise the same errors list.__getitem__ raises.

0.8.0

  • #163 Define SortedDictKeys.__getitem__.
  • #164 Update SortedDict.__len__ to raise OverflowError if the length exceeds the maximum value a Py_ssize_t can have.

0.7.3

  • #149 Exclude test files from the source distribution. Exclude source files from the built distributions.
  • #157 Define SortedDictKeys.__contains__.

0.7.2

  • #141 Add changelog link to project metadata.

0.7.1

  • #131 Allow most modifications to a sorted dictionary while iterating over its keys. Prohibit deleting the key any iterator is about to yield next. Prohibit clearing the sorted dictionary when any unexhausted iterators exist.

0.7.0

  • #120 Define SortedDictKeys as a view over the keys of a sorted dictionary. Define SortedDictKeys.__repr__, SortedDictKeys.__len__ and SortedDictKeys.__iter__. Define SortedDictKeysIter as an iterator over the keys of a sorted dictionary. Define SortedDictKeysIter.__iter__ and SortedDictKeysIter.__next__. Update SortedDict.keys to return the aforementioned view. Prohibit modifications to a sorted dictionary while iterating over its keys.

0.6.0

  • 84830cb2d98a Update the check for the import of decimal.Decimal with type verification. Change the error message to reflect that importing the type failed.
  • #118 Update SortedDict.__contains__ to raise the same errors SortedDict.__getitem__ raises (excluding KeyError) instead of silently returning False.

0.5.3

0.5.2

  • 6bf7bbdef8cb Remove GitHub links from project metadata.
  • #111 Change the error message about failure to import Python types which are not built-in to report the problem more precisely.

0.5.1

No user-facing changes of note.

0.5.0

  • #102 Support decimal.Decimal keys. Prohibit the insertion of a key if it is NaN.
  • 8c145e38eb98 Add GitHub and homepage links to project metadata.

0.4.6

No user-facing changes of note.

0.4.5

  • #95 Change the type of the error raised when the key type is not set from ValueError to RuntimeError. Add documentation link to project metadata.

0.4.4

  • #91 Change error messages to provide actionable information.

0.4.3

No user-facing changes of note.

0.4.2

No user-facing changes of note.

0.4.1

  • #75 Include the C++ header files from the project in the source and built distributions.

0.4.0

  • #67 Support float keys. Prohibit the insertion of a key if it is NaN.
  • #71 Define SortedDict.key_type as the key type of a sorted dictionary.

0.3.0

  • #55 Support bytes and str keys.
  • #47 Update the SortedDict constructor to ignore all arguments. Update SortedDict.__setitem__ to set the key type upon succeeding the first time.
  • #49 Remove SortedDict.__str__. Define SortedDict.__repr__.

0.2.1

No user-facing changes of note.

0.2.0

  • #36 Define SortedDict.copy to return a shallow copy of a sorted dictionary.

0.1.0

  • #29 Define SortedDict.__contains__.
  • #31 Define SortedDict.clear to remove all key-value pairs from a sorted dictionary.

0.0.8

  • #22 Change the type of the error raised when the constructor argument is an unsupported type from ValueError to TypeError. Prohibit subclasses of supported key types. Update SortedDict.__str__ and SortedDict.items to raise allocation errors.

0.0.7

  • e377dc4266f6 Add intended audience, supported operating systems and targeted Python implementations to project metadata.

0.0.6

No user-facing changes of note.

0.0.5

No user-facing changes of note.

0.0.4

  • 8ef0310913b4 Define SortedDict. Define the SortedDict constructor to accept the key type, which must be int.
  • #1 Define the SortedDict destructor.
  • #2 Define SortedDict.__len__, SortedDict.__getitem__, SortedDict.__setitem__, SortedDict.__delitem__ and SortedDict.__str__. Prohibit insertion of a key if its type is not a subclass of what was passed to the constructor.
  • #3 Define SortedDict.items, SortedDict.keys and SortedDict.values to return lists (not views) containing the key-value pairs, keys and values in a sorted dictionary.