]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
python3-attrs: Update to version 23.2.0
authorAdolf Belka <adolf.belka@ipfire.org>
Mon, 29 Jan 2024 13:41:07 +0000 (14:41 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 29 Jan 2024 16:03:31 +0000 (16:03 +0000)
- 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>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
config/rootfiles/packages/python3-attrs
lfs/python3-attrs

index b84c91ba41a652719f708874521a0e7dc055d6dd..f65c80b40e4969d2bd47b24ebd477468f59cd3bb 100644 (file)
@@ -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
index 9ac72e14a3539d9855f0f9533fff6fd46232b458..03a809a27e1298fe47bbe3f486fb4a48bc334b31 100644 (file)
@@ -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)