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

Update dependency attrs to v24 - autoclosed #714

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 4, 2024

Mend Renovate

This PR contains the following updates:

Package Change 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 - "before 4am" in timezone America/Chicago, Automerge - At any time (no schedule defined).

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

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

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


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

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

Copy link
Contributor Author

renovate bot commented Aug 4, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: poetry.lock
Updating dependencies
Resolving dependencies...

Creating virtualenv erasmus-o_RvpkAQ-py3.12 in /home/ubuntu/.cache/pypoetry/virtualenvs

Because botus-receptus[sqlalchemy,uvloop] (24.6.1) @ git+https://github.com/bryanforbes/botus_receptus.git@v24.6.1 depends on attrs (^23.2.0)
 and erasmus depends on attrs (24.2.0), botus-receptus is forbidden.
So, because erasmus depends on botus_receptus[sqlalchemy,uvloop] (24.6.1) @ git+https://github.com/bryanforbes/botus_receptus.git@v24.6.1, version solving failed.

@renovate renovate bot changed the title Update dependency attrs to v24 Update dependency attrs to v24 - autoclosed Aug 26, 2024
@renovate renovate bot closed this Aug 26, 2024
@renovate renovate bot deleted the renovate/attrs-24.x branch August 26, 2024 16:53
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.

1 participant