Releases: nyggus/rounder
Modern building backend
The v0.7.1 release comes with a new structure of the project. Now, rounder uses the build-based backend which uses a pyproject.tomlfile instead ofsetup.py. The structure also integrates doctestwithpytest, so now pytestruns all thepytestanddoctest` tests, also from documentation files.
map_object() generaliztion
This release comes with the generalization of map_object() to use numbers.Numbers instead of Union[int, float]. The corresponding tests have been added.
Use built-in exceptions only
This release removes the custom exceptions from rounder, and instead uses the built-in TypeError exception, certainly customized to a particular error. This makes things easier at the user's side, as the user does not have to import these custom exception when wishing to catch the error from rounder.
Type annotation
This release comes with type annotations of the functions that create rounder's API. In addition, the release fixed a bug with signif_object() which in particular situations changed int numbers to float ones.
Generators, maps and filters included
This release adds generator, map and filter objects, which are now handled by the rounder functions - whatever a rounded map yields, for instance, will be rounded.
Optimization
This release comes with optimized code, which performs much better for large and complex objects.
Multiple types
rounder v0.4.1 handles many built-in types: int, float, complex, set, frozenset, list, tuple, collections.namedtuple, typing.NamedTuple, dict, collections.defaultdict, collections.OrderedDict, collections.UserDict, collections.Counter, collections.deque, array.array, and collections.abc.Mapping.