Skip to content

Release 0.4.0

Compare
Choose a tag to compare
@tushushu tushushu released this 26 Dec 06:39
44028b3

What's new?

Features:

  • Implement any, all, and_, or_ and not_ methods for BooleanList;
  • Overload the __and__, __or__ and __invert__ (not) operators for BooleanList;
  • Implement greater_than_scala and less_than_scala methods for NumericalList;
  • Implement equal_scala, not_equal_scala, greater_than_or_equal_scala and less_than_or_equal_scala methods for IntegerList;
  • Overload the __gt__, __ge__, __lt__, __le__ __ne__, and __eq__ methods for NumericalList or IntegerList;
  • Implement append, pop, set and replace methods to modify the List object in place.
  • Removed duplicated bound check for the get method.
  • Implementing mypy stub and make ulist 100% type annotation.

Misc:

  • Fix type annotations for unit tests.
  • Using explicit way to construct List objects.
  • 100% type checking in the unit tests.
  • Clear unnecessary lifetime declarations.
  • Run mypy linter in the unit tests.
  • Create CI for Ubuntu and MacOS with Python 3.6. Although, the Python language does not provide backward compatibility, but the ulist does not have any Python 3rd party dependencies, so we don't have to worry too much about the compatibility with Python 3.7, 3.8, 3.9 and 3.10.
  • Add PyPI, Licence, CI, PyPI - Format and Code Style badges in ReadMe.md.
  • Put the develop guide into a separate file.