Bump attrs from 22.2.0 to 23.1.0
Bumps attrs from 22.2.0 to 23.1.0.
Release notes
Sourced from attrs's releases.
23.1.0
Highlights
A lot of features and smaller bug fixes! But also with a heavy heart, we're leaving the last
dataclass
-less Python version (3.6) behind, but don't worry: the old versions aren't going anywhere and thanks to the magic of package metadata,pip install attrs
should still work on Python 3.6 as if nothing happened.Special Thanks
This release would not be possible without my generous sponsors! Thank you to all of you making sustainable maintenance possible! If you would like to join them, go to https://github.com/sponsors/hynek and check out the sweet perks!
Above and Beyond
Variomedia AG (
@variomedia
), Tidelift (@tidelift
), Sentry (@getsentry
), HiredScore (@HiredScore
), FilePreviews (@filepreviews
), and Daniel Fortunov (@asqui
).Maintenance Sustainers
Adam Hill (
@adamghill
), Dan Groshev (@si14
), Magnus Watn (@magnuswatn
), David Cramer (@dcramer
), Moving Content AG (@moving-content
), Stein Magnus Jodal (@jodal
), ProteinQure (@ProteinQure
), Jesse Snyder (@jessesnyder
), Rivo Laks (@rivol
), Tom Ballinger (@thomasballinger
),@medecau
, Ionel Cristian Mărieș (@ionelmc
), The Westervelt Company (@westerveltco
), Philippe Galvan (@PhilippeGalvan
), Birk Jernström (@birkjernstrom
), Tim Schilling (@tim-schilling
), Chris Withers (@cjw296
), Christopher Dignam (@chdsbd
), and Stefan Hagen (@sthagen
).Not to forget 3 more amazing humans who chose to be generous but anonymous!
Full Changelog
Backwards-incompatible Changes
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()
andattrs.filters.include()
now support the passing of attribute names as strings. #1068
attrs.has()
andattrs.fields()
now handle generic classes correctly. #1079Fix 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). #1084Restored ability to unpickle instances pickled before 22.2.0. #1085
attrs.asdict()
's andattrs.astuple()
's type stubs now accept theattrs.AttrsInstance
protocol. #1090
... (truncated)
Changelog
Sourced from attrs's changelog.
23.1.0 - 2023-04-16
Backwards-incompatible Changes
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()
andattrs.filters.include()
now support the passing of attribute names as strings. #1068
attrs.has()
andattrs.fields()
now handle generic classes correctly. #1079Fix 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). #1084Restored ability to unpickle instances pickled before 22.2.0. #1085
attrs.asdict()
's andattrs.astuple()
's type stubs now accept theattrs.AttrsInstance
protocol. #1090Fix slots class cellvar updating closure in CPython 3.8+ even when
__code__
introspection is unavailable. #1092
attrs.resolve_types()
can now passinclude_extras
totyping.get_type_hints()
on Python 3.9+, and does so by default. #1099Added instructions for pull request workflow to
CONTRIBUTING.md
. #1105Added type parameter to
attrs.field()
function for use withattrs.make_class()
.Please note that type checkers ignore type metadata passed into
make_class()
, but it can be useful if you're wrapping attrs. #1107It is now possible for
attrs.evolve()
(andattr.evolve()
) to change fields namedinst
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
Commits
-
1e2f6f9
Prepare 23.1.0 -
3786d5a
Fix next version -
a7e1a56
Fix missing backtick -
dadc020
Fix links broken by pyright removing their transform spec -
bef2f52
Added example for version docstrings to PR template (#1127) -
c4c6fdd
Add literal string support to include and exclude filters (#1068) -
e4c9f27
CONTRIBUTING: Small improvements (#1123) -
683d056
Cull trove classifiers -
c8b342d
Deprecate zope-interface support (#1120) -
d1aaeee
Remove special-casing of pretend version for pytest (#1124) - Additional commits viewable in compare view