Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update dependency attrs to v24 #152

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 3, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
attrs (changelog) ^23.2.0 -> ^24.0.0 age adoption passing confidence
attrs (changelog) ==23.2.0 -> ==24.2.0 age adoption passing confidence

Release Notes

python-attrs/attrs (attrs)

v24.2.0

Compare Source

Deprecations
  • Given the amount of warnings raised in the broader ecosystem, we've decided to only soft-deprecate the hash argument to @define / @attr.s.
    Please don't use it in new code, but we don't intend to remove it anymore.
    #​1330
Changes
  • attrs.converters.pipe() (and its syntactic sugar of passing a list for attrs.field()'s / attr.ib()'s converter argument) works again when passing attrs.setters.convert to on_setattr (which is default for attrs.define).
    #​1328
  • Restored support for PEP 649 / 749-implementing Pythons -- currently 3.14-dev.
    #​1329

v24.1.0

Compare Source

Backwards-incompatible Changes
  • attrs.evolve() doesn't accept the inst argument as a keyword argument anymore.
    Pass it as the first positional argument instead.
    #​1264

  • attrs.validators.provides() has been removed.
    The removed code is available as a gist for convenient copy and pasting.
    #​1265

  • All packaging metadata except from __version__ and __version_info__ has been removed from the attr and attrs modules (for example, attrs.__url__).

    Please use importlib.metadata or importlib-metadata instead.
    #​1268

  • The generated __eq__ methods have been sped up significantly by generating a chain of attribute comparisons instead of constructing and comparing tuples.
    This change arguably makes the behavior more correct,
    but changes it if an attribute compares equal by identity but not value, like float('nan').
    #​1310

Deprecations
  • The repr_ns argument to attr.s is now deprecated.
    It was a workaround for nested classes in Python 2 and is pointless in Python 3.
    #​1263
  • The hash argument to @attr.s, @attrs.define, and make_class() is now deprecated in favor of unsafe_hash, as defined by PEP 681.
    #​1323
Changes
  • Allow original slotted functools.cached_property classes to be cleaned by garbage collection.
    Allow super() calls in slotted cached properties.
    #​1221

  • Our type stubs now use modern type notation and are organized such that VS Code's quick-fix prefers the attrs namespace.
    #​1234

  • Preserve AttributeError raised by properties of slotted classes with functools.cached_properties.
    #​1253

  • It is now possible to wrap a converter into an attrs.Converter and get the current instance and/or the current field definition passed into the converter callable.

    Note that this is not supported by any type checker, yet.
    #​1267

  • attrs.make_class() now populates the __annotations__ dict of the generated class, so that attrs.resolve_types() can resolve them.
    #​1285

  • Added the attrs.validators.or_() validator.
    #​1303

  • The combination of a __attrs_pre_init__ that takes arguments, a kw-only field, and a default on that field does not crash anymore.
    #​1319

  • attrs.validators.in_() now transforms certain unhashable options to tuples to keep the field hashable.

    This allows fields that use this validator to be used with, for example, attrs.filters.include().
    #​1320

  • If a class has an inherited method called __attrs_init_subclass__, it is now called once the class is done assembling.

    This is a replacement for Python's __init_subclass__ and useful for registering classes, and similar.
    #​1321


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants