Changes

0.8.1

0.8

  • Dropped Python 3.5 support.
  • Added Python 3.10, 3.11 support.
  • Fixed handling UNIX-timestamps by validx.py.Date and validx.py.Datetime validators.
  • Added ability to specify default time which is used to implicitly convert date to datetime within validx.py.Datetime validator.
  • Fixed handling bool values by validx.py.Int and validx.py.Float validators.
  • Changed behavior of validx.py.Str validator, it now strips leading & trailing whitespace by default. Use dontstrip=True parameter to disable the stripping.
  • Added ability to normalize spaces by validx.py.Str validator, i.e. replace space sequences by single space character. Use normspace=True parameter to enable the normalization.
  • Added coerce parameter to validx.py.Str validator, which can be useful to sanitize data from sources with automatic type inferring, where string data might be incorrectly interpreted as another type.
  • Unified behavior of Python and Cython versions of validx.py.Int validator. Both versions support unlimited integer numbers now.
  • Added new validx.py.Set validator.
  • Added new validx.py.Decimal validator.
  • Renamed FloatValueError to validx.exc.NumberError, so it is now used for both validx.py.Float and validx.py.Decimal validators.
  • Added new validx.exc.CoerceError which is raised instead of validx.exc.InvalidTypeError when type coercion fails.

0.7

  • Dropped Python 2.7 support.
  • Fixed relmin/relmax checks for validx.py.Date validator with timezone.
  • Fixed constructing Cython version of validx.py.Type validator with type created from metaclass.

0.6.1

0.6

0.5.1

  • Fixed type declarations. Again. One does not simply make mypy happy.

0.5

  • Removed confusing nullable check from validx.py.Any validator.
  • Fixed type declarations.

0.4

  • Fixed library objects pickling.
  • Fixed checking of length within validx.py.List validator.

0.3

  • Fixed handling of default values and length validation within validx.py.Dict validator.

0.2

0.1

  • Initial release.