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

chore(deps): update dependency attrs to v23 #96

Merged
merged 3 commits into from
May 28, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented May 28, 2024

Mend Renovate

This PR contains the following updates:

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

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

python-attrs/attrs (attrs)

v23.2.0

Compare Source

Changes
  • The type annotation for attrs.resolve_types() is now correct.
    #​1141
  • 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.
    #​1158
  • Fixed serialization of namedtuple fields using attrs.asdict/astuple() with retain_collection_types=True.
    #​1165
  • attrs.AttrsInstance is now a typing.Protocol in both type hints and code.
    This allows you to subclass it along with another Protocol.
    #​1172
  • 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__().
    #​1187
  • Slotted classes now transform functools.cached_property decorated methods to support equivalent semantics.
    #​1200
  • 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.
    #​1203

v23.1.0

Compare Source

Backwards-incompatible Changes
  • Python 3.6 has been dropped and packaging switched to static package data using Hatch.
    #​993
Deprecations
  • The support for zope-interface via the attrs.validators.provides validator is now deprecated and will be removed in, or after, April 2024.

    The presence of a C-based package in our developement dependencies has caused headaches and we're not under the impression it's used a lot.

    Let us know if you're using it and we might publish it as a separate package.
    #​1120

Changes
  • attrs.filters.exclude() and attrs.filters.include() now support the passing of attribute names as strings.
    #​1068

  • attrs.has() and attrs.fields() now handle generic classes correctly.
    #​1079

  • Fix frozen exception classes when raised within e.g. contextlib.contextmanager, which mutates their __traceback__ attributes.
    #​1081

  • @frozen now works with type checkers that implement PEP-681 (ex. pyright).
    #​1084

  • Restored ability to unpickle instances pickled before 22.2.0.
    #​1085

  • attrs.asdict()'s and attrs.astuple()'s type stubs now accept the attrs.AttrsInstance protocol.
    #​1090

  • Fix slots class cellvar updating closure in CPython 3.8+ even when __code__ introspection is unavailable.
    #​1092

  • attrs.resolve_types() can now pass include_extras to typing.get_type_hints() on Python 3.9+, and does so by default.
    #​1099

  • Added instructions for pull request workflow to CONTRIBUTING.md.
    #​1105

  • Added type parameter to attrs.field() function for use with attrs.make_class().

    Please note that type checkers ignore type metadata passed into make_class(), but it can be useful if you're wrapping attrs.
    #​1107

  • It is now possible for attrs.evolve() (and attr.evolve()) to change fields named inst if the instance is passed as a positional argument.

    Passing the instance using the inst keyword argument is now deprecated and will be removed in, or after, April 2024.
    #​1117

  • attrs.validators.optional() now also accepts a tuple of validators (in addition to lists of validators).
    #​1122

v22.2.0

Compare Source

Backwards-incompatible Changes
  • Python 3.5 is not supported anymore.
    #​988
Deprecations
  • Python 3.6 is now deprecated and support will be removed in the next release.
    #​1017
Changes
  • attrs.field() now supports an alias option for explicit __init__ argument names.

    Get __init__ signatures matching any taste, peculiar or plain!
    The PEP 681 compatible alias option can be use to override private attribute name mangling, or add other arbitrary field argument name overrides.
    #​950

  • attrs.NOTHING is now an enum value, making it possible to use with e.g. typing.Literal.
    #​983

  • Added missing re-import of attr.AttrsInstance to the attrs namespace.
    #​987

  • Fix slight performance regression in classes with custom __setattr__ and speedup even more.
    #​991

  • Class-creation performance improvements by switching performance-sensitive templating operations to f-strings.

    You can expect an improvement of about 5% -- even for very simple classes.
    #​995

  • attrs.has() is now a TypeGuard for AttrsInstance.
    That means that type checkers know a class is an instance of an attrs class if you check it using attrs.has() (or attr.has()) first.
    #​997

  • Made attrs.AttrsInstance stub available at runtime and fixed type errors related to the usage of attrs.AttrsInstance in Pyright.
    #​999

  • On Python 3.10 and later, call abc.update_abstractmethods() on dict classes after creation.
    This improves the detection of abstractness.
    #​1001

  • attrs's pickling methods now use dicts instead of tuples.
    That is safer and more robust across different versions of a class.
    #​1009

  • Added attrs.validators.not_(wrapped_validator) to logically invert wrapped_validator by accepting only values where wrapped_validator rejects the value with a ValueError or TypeError (by default, exception types configurable).
    #​1010

  • The type stubs for attrs.cmp_using() now have default values.
    #​1027

  • To conform with PEP 681, attr.s() and attrs.define() now accept unsafe_hash in addition to hash.
    #​1065


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 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 has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot requested a review from jhatler as a code owner May 28, 2024 20:14
@jhatler jhatler enabled auto-merge (squash) May 28, 2024 20:28
@renovate renovate bot force-pushed the renovate/attrs-23.x branch 2 times, most recently from 0fc0681 to ac36837 Compare May 28, 2024 20:36
@renovate renovate bot force-pushed the renovate/attrs-23.x branch from ac36837 to 31aa002 Compare May 28, 2024 20:41
jhatler
jhatler previously approved these changes May 28, 2024
Copy link
Contributor Author

renovate bot commented May 28, 2024

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@jhatler jhatler disabled auto-merge May 28, 2024 21:53
Signed-off-by: Jaremy Hatler <hatler.jaremy@gmail.com>
@jhatler jhatler enabled auto-merge (squash) May 28, 2024 21:59
@jhatler jhatler merged commit 5d6285e into main May 28, 2024
27 checks passed
@jhatler jhatler deleted the renovate/attrs-23.x branch May 28, 2024 22:08
@github-actions github-actions bot mentioned this pull request May 28, 2024
jhatler added a commit that referenced this pull request May 30, 2024
jhatler added a commit that referenced this pull request May 30, 2024
Signed-off-by: Jaremy Hatler <hatler.jaremy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jaremy Hatler <hatler.jaremy@gmail.com>
@jhatler jhatler added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels May 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Projects
Development

Successfully merging this pull request may close these issues.

1 participant