pkgsrc/devel/py-attrs
adam 34834137b1 py-attrs: updated to 19.1.0
19.1.0:
Backward-incompatible Changes
- Fixed a bug where deserialized objects with cache_hash=True could have incorrect hash code values.
  This change breaks classes with cache_hash=True when a custom __setstate__ is present.
  An exception will be thrown when applying the attrs annotation to such a class.

Changes
- Add is_callable, deep_iterable, and deep_mapping validators.
  * is_callable: validates that a value is callable
  * deep_iterable: Allows recursion down into an iterable,
    applying another validator to every member in the iterable
    as well as applying an optional validator to the iterable itself.
  * deep_mapping: Allows recursion down into the items in a mapping object,
    applying a key validator and a value validator to the key and value in every item.
    Also applies an optional validator to the mapping object itself.
  You can find them in the attr.validators package.
- Fixed stub files to prevent errors raised by mypy's disallow_any_generics = True option.
- Attributes with init=False now can follow after kw_only=True attributes.
- attrs now has first class support for defining exception classes.

  If you define a class using @attr.s(auto_exc=True) and subclass an exception, the class will behave like a well-behaved exception class including an appropriate __str__ method, and all attributes additionally available in an args attribute.
- Clarified documentation for hashing to warn that hashable objects should be deeply immutable (in their usage, even if this is not enforced).
2019-03-03 12:17:05 +00:00
..
DESCR
distinfo
Makefile
PLIST