- Update from version 22.1.0 to 23.2.0 - Update of rootfile - setup.py is no longer available so build to use pyproject.toml was used. - A new series of build dependencies are also now required for python3-attrs - Changelog 23.2.0 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 23.1.0 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 22.2.0 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
Tested-by: Adolf Belka adolf.belka@ipfire.org Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- config/rootfiles/packages/python3-attrs | 17 ++++++++++------- lfs/python3-attrs | 21 +++++++++++++++------ 2 files changed, 25 insertions(+), 13 deletions(-)
diff --git a/config/rootfiles/packages/python3-attrs b/config/rootfiles/packages/python3-attrs index b84c91ba4..f65c80b40 100644 --- a/config/rootfiles/packages/python3-attrs +++ b/config/rootfiles/packages/python3-attrs @@ -8,6 +8,7 @@ usr/lib/python3.10/site-packages/attr/_config.py usr/lib/python3.10/site-packages/attr/_funcs.py usr/lib/python3.10/site-packages/attr/_make.py usr/lib/python3.10/site-packages/attr/_next_gen.py +usr/lib/python3.10/site-packages/attr/_typing_compat.pyi usr/lib/python3.10/site-packages/attr/_version_info.py usr/lib/python3.10/site-packages/attr/_version_info.pyi usr/lib/python3.10/site-packages/attr/converters.py @@ -22,13 +23,15 @@ usr/lib/python3.10/site-packages/attr/setters.pyi usr/lib/python3.10/site-packages/attr/validators.py usr/lib/python3.10/site-packages/attr/validators.pyi #usr/lib/python3.10/site-packages/attrs -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/PKG-INFO -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/SOURCES.txt -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/dependency_links.txt -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/not-zip-safe -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/requires.txt -#usr/lib/python3.10/site-packages/attrs-22.1.0-py3.10.egg-info/top_level.txt +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/INSTALLER +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/METADATA +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/RECORD +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/REQUESTED +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/WHEEL +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/direct_url.json +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/licenses +#usr/lib/python3.10/site-packages/attrs-23.2.0.dist-info/licenses/LICENSE usr/lib/python3.10/site-packages/attrs/__init__.py usr/lib/python3.10/site-packages/attrs/__init__.pyi usr/lib/python3.10/site-packages/attrs/converters.py diff --git a/lfs/python3-attrs b/lfs/python3-attrs index 9ac72e14a..03a809a27 100644 --- a/lfs/python3-attrs +++ b/lfs/python3-attrs @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2024 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 22.1.0 +VER = 23.2.0 SUMMARY = Classes Without Boilerplate
THISAPP = attrs-$(VER) @@ -33,7 +33,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = python3-attrs -PAK_VER = 2 +PAK_VER = 3
DEPS =
@@ -47,7 +47,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 5da48b3cbcd99cdcc531a0859be264a4d209778caa53bd95480a103549b816c8a805079e1555fce38eb33f8bd3d5b7bfa6f814ef2b60dc405bda6686c7746f0b +$(DL_FILE)_BLAKE2 = a06f4f17a81fc173c37661bcf518367a1cdc9a333d2783bd2cd1ac5f0a72bd20ec1afdd964e10255624bcfa027e3a152375cd21472c177428d29bd06b29984a1
install : $(TARGET)
@@ -80,7 +80,16 @@ $(subst %,%_BLAKE2,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && python3 setup.py build - cd $(DIR_APP) && python3 setup.py install --root=/ + cd $(DIR_APP) && python3 -m build \ + --no-isolation \ + --wheel + cd $(DIR_APP) && pip3 install \ + --no-build-isolation \ + --root="/" \ + --no-deps \ + --ignore-installed \ + dist/*.whl + # remove temp build files in /root/.cache from rootfile + cd $(DIR_APP) && rm -R /root/.cache/ @rm -rf $(DIR_APP) @$(POSTBUILD)