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-23.2.0.tar.gz 0000780820 763 KB
python-attrs.changes 0000031989 31.2 KB
python-attrs.spec 0000002786 2.72 KB
Latest Revision
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1137517 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 23)
- update to 23.2.0:
  * The type annotation for `attrs.resolve_types()` is now
    correct.
  * Type stubs now use `typing.dataclass_transform` to decorate
    dataclass-like decorators, instead of the non-standard
    `__dataclass_transform__` special form, which is only
    supported by Pyright.
  * Fixed serialization of namedtuple fields using
    `attrs.asdict/astuple()` with `retain_collection_types=True`.
  * `attrs.AttrsInstance` is now a `typing.Protocol` in both type
    hints and code.
  * This allows you to subclass it along with another `Protocol`.
  * If *attrs* detects that `__attrs_pre_init__` accepts more
    than just `self`, it will call it with the same arguments as
    `__init__` was called.
  * This allows you to, for example, pass arguments to
    `super().__init__()`.
  * Slotted classes now transform `functools.cached_property`
    decorated methods to support equivalent semantics.
  * Added *class_body* argument to `attrs.make_class()` to
    provide additional attributes for newly created classes.
  * It is, for example, now possible to attach methods.

    be deeply immutable
- Initial version
Comments 0
openSUSE Build Service is sponsored by