attrs: Attributes without boilerplate.

Edit Package python-attrs

Python package with class decorators that ease the chores of implementing the most common attribute-related object protocols.

You just specify the attributes to work with and attrs gives you:

a nice human-readable __repr__,
a complete set of comparison methods,
an initializer,
and much more

without writing dull boilerplate code again and again.

This gives you the power to use actual classes with actual types in your code instead of confusing tuples or confusingly behaving namedtuples.

So put down that type-less data structures and welcome some class into your life!

python-attrs is the successor to python-characterstic

Refresh
Refresh
Source Files
Filename Size Changed
_multibuild 0000000053 53 Bytes
attrs-21.4.0.tar.gz 0000201839 197 KB
python-attrs.changes 0000025517 24.9 KB
python-attrs.spec 0000002708 2.64 KB
Revision 16 (latest revision is 25)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 945429 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 16)
- update to 21.4.0:
  * Fixed the test suite on PyPy3.8 where ``cloudpickle`` does not work.
  * Fixed ``coverage report`` for projects that use ``attrs`` and don't
    set a ``--source``.
  * When using ``@define``, converters are now run by default when
    setting an attribute on an instance -- additionally to validators.
  * ``import attrs`` has finally landed!
  * ``attr.asdict(retain_collection_types=False)`` (default)
    dumps collection-esque keys as tuples.
  * ``__match_args__`` are now generated to support Python 3.10's
  * If the class-level *on_setattr* is set to ``attrs.setters.validate``
    (default in ``@define`` and ``@mutable``) but no field defines
    a validator, pretend that it's not set.
  * The generated ``__repr__`` is significantly faster on Pythons with
    f-strings.
  * Attributes transformed via ``field_transformer`` are wrapped with
    ``AttrsClass`` again.
  * Generated source code is now cached more efficiently for identical classes.
  * Added ``attrs.converters.to_bool()``.
  * ``attrs.resolve_types()`` now resolves types of subclasses after
    the parents are resolved.
  * Added new validators: ``lt(val)`` (< val), ``le(va)`` (≤ val),
    ``ge(val)`` (≥ val), ``gt(val)`` (> val), and ``maxlen(n)``.
  * ``attrs`` classes are now fully compatible with cloudpickle
  * Added new context manager ``attrs.validators.disabled()`` and
    functions ``attrs.validators.(set|get)_disabled()``.
    They deprecate ``attrs.(set|get)_run_validators()``.
    All functions are interoperable and modify the same internal state.
    They are not – and never were – thread-safe, though.
Comments 0
openSUSE Build Service is sponsored by