pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/py-attrs



Module Name:    pkgsrc
Committed By:   wiz
Date:           Sun Apr 30 13:14:49 UTC 2023

Modified Files:
        pkgsrc/devel/py-attrs: Makefile PLIST distinfo

Log Message:
py-attrs: update to 23.1.0.

##  - 2023-04-16

### Backwards-incompatible Changes

- Python 3.6 has been dropped and packaging switched to static package data using .

### 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.

### Changes

- `attrs.filters.exclude()` and `attrs.filters.include()` now support the passing of attribute names as strings.

- `attrs.has()` and `attrs.fields()` now handle generic classes correctly.

- Fix frozen exception classes when raised within e.g. `contextlib.contextmanager`, which mutates their `__traceback__` attributes.

- `@frozen` now works with type checkers that implement .

- Restored ability to unpickle instances pickled before 22.2.0.

- `attrs.asdict()`'s and `attrs.astuple()`'s type stubs now accept the `attrs.AttrsInstance` protocol.

- Fix slots class cellvar updating closure in CPython 3.8+ even when `__code__` introspection is unavailable.

- `attrs.resolve_types()` can now pass `include_extras` to `typing.get_type_hints()` on Python 3.9+, and does so by default.

- Added instructions for pull request workflow to `CONTRIBUTING.md`.

- 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_.

- 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.

- `attrs.validators.optional()` now also accepts a tuple of validators (in addition to lists of validators).

##  - 2022-12-21

### Backwards-incompatible Changes

- Python 3.5 is not supported anymore.

### Deprecations

- Python 3.6 is now deprecated and support will be removed in the next release.

### Changes

- `attrs.field()` now supports an *alias* option for explicit `__init__` argument names.

  Get `__init__` signatures matching any taste, peculiar or plain!
  The  *alias* option can be use to override private attribute name mangling, or add other arbitrary field argument name overrides.

- `attrs.NOTHING` is now an enum value, making it possible to use with e.g. .

- Added missing re-import of `attr.AttrsInstance` to the `attrs` namespace.

- Fix slight performance regression in classes with custom `__setattr__` and speedup even more.

- 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.

- `attrs.has()` is now a  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.

- Made `attrs.AttrsInstance` stub available at runtime and fixed type errors related to the usage of `attrs.AttrsInstance` in *Pyright*.

- On Python 3.10 and later, call  on dict classes after creation.
  This improves the detection of abstractness.

- *attrs*'s pickling methods now use dicts instead of tuples.
  That is safer and more robust across different versions of a class.

- 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).

- The type stubs for `attrs.cmp_using()` now have default values.

- To conform with ` now accept *unsafe_hash* in addition to *hash*.

##  - 2022-07-28

### Backwards-incompatible Changes

- Python 2.7 is not supported anymore.

  Dealing with Python 2.7 tooling has become too difficult for a volunteer-run project.

  We have supported Python 2 more than 2 years after it was officially discontinued and feel that we have paid our dues.
  All version up to 21.4.0 from December 2021 remain fully functional, of course.

- The deprecated `cmp` attribute of `attrs.Attribute` has been removed.
  This does not affect the *cmp* argument to `attr.s` that can be used as a shortcut to set *eq* and *order* at the same time.

### Changes

- Instantiation of frozen slotted classes is now faster.

- If an `eq` key is defined, it is also used before hashing the attribute.

- Added `attrs.validators.min_len()`.

- `attrs.validators.deep_iterable()`'s *member_validator* argument now also accepts a list of validators and wraps them in an `attrs.validators.and_()`.

- Added missing type stub re-imports for `attrs.converters` and `attrs.filters`.

- Added missing stub for `attr(s).cmp_using()`.

- `attrs.validators._in()`'s `ValueError` is not missing the attribute, expected options, and the value it got anymore.

- Python 3.11 is now officially supported.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 pkgsrc/devel/py-attrs/Makefile
cvs rdiff -u -r1.9 -r1.10 pkgsrc/devel/py-attrs/PLIST
cvs rdiff -u -r1.14 -r1.15 pkgsrc/devel/py-attrs/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/py-attrs/Makefile
diff -u pkgsrc/devel/py-attrs/Makefile:1.21 pkgsrc/devel/py-attrs/Makefile:1.22
--- pkgsrc/devel/py-attrs/Makefile:1.21 Sun Apr 30 12:12:52 2023
+++ pkgsrc/devel/py-attrs/Makefile      Sun Apr 30 13:14:49 2023
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.21 2023/04/30 12:12:52 wiz Exp $
+# $NetBSD: Makefile,v 1.22 2023/04/30 13:14:49 wiz Exp $
 
-DISTNAME=      attrs-21.4.0
+DISTNAME=      attrs-23.1.0
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=a/attrs/}
@@ -10,23 +10,34 @@ MAINTAINER= pkgsrc-users%NetBSD.org@localhost
 COMMENT=       Attributes without boilerplate
 LICENSE=       mit
 
-TEST_DEPENDS+= ${PYPKGPREFIX}-Pympler-[0-9]*:../../devel/py-Pympler
-# not required and does not support python 2.x
+TOOL_DEPENDS+= ${PYPKGPREFIX}-hatchling-[0-9]*:../../devel/py-hatchling
+TOOL_DEPENDS+= ${PYPKGPREFIX}-hatch-vcs-[0-9]*:../../devel/py-hatch-vcs
+TOOL_DEPENDS+= ${PYPKGPREFIX}-hatch-fancy-pypi-readme-[0-9]*:../../devel/py-hatch-fancy-pypi-readme
+# tests are doomed because py-test and py-hypothesis depend on py-attrs
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-Pympler-[0-9]*:../../devel/py-Pympler
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-cloudpickle-[0-9]*:../../wip/py-cloudpickle
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-hypothesis-[0-9]*:../../devel/py-hypothesis
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-test>=4.3.0:../../devel/py-test
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-mypy>=1.1.1:../../lang/py-mypy
 #TEST_DEPENDS+=        ${PYPKGPREFIX}-ZopeInterface-[0-9]*:../../devel/py-ZopeInterface
-TEST_DEPENDS+= ${PYPKGPREFIX}-six-[0-9]*:../../lang/py-six
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-coverage>=5.3:../../devel/py-coverage
 
-PYTHON_VERSIONED_DEPENDENCIES+=        coverage:test
-PYTHON_VERSIONED_DEPENDENCIES+=        hypothesis:test
-PYTHON_VERSIONED_DEPENDENCIES+=        test:test
+PYTHON_VERSIONS_INCOMPATIBLE=  27
 
 USE_LANGUAGES= # none
 
-# 13 failed, 1155 passed, 11 skipped, 1 xfailed, 6 warnings
-# with py-ZopeInterface
-# 13 failed, 1158 passed, 8 skipped, 1 xfailed, 6 warnings
-do-test:
-       cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest-${PYVERSSUFFIX}
+#do-test:
+#      cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest-${PYVERSSUFFIX}
 
-.include "../../lang/python/egg.mk"
-.include "../../lang/python/versioned_dependencies.mk"
+.include "../../lang/python/pyversion.mk"
+
+.if ${PYTHON_VERSION} < 311
+#TEST_DEPENDS+=        ${PYPKGPREFIX}-test-mypy-plugins-[0-9]*:../../devel/py-test-mypy-plugins
+.endif
+
+.if ${PYTHON_VERSION} < 308
+DEPENDS+=      ${PYPKGPREFIX}-importlib-metadata-[0-9]*:../../devel/py-importlib-metadata
+.endif
+
+.include "../../lang/python/wheel.mk"
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/devel/py-attrs/PLIST
diff -u pkgsrc/devel/py-attrs/PLIST:1.9 pkgsrc/devel/py-attrs/PLIST:1.10
--- pkgsrc/devel/py-attrs/PLIST:1.9     Sat Feb 26 13:39:07 2022
+++ pkgsrc/devel/py-attrs/PLIST Sun Apr 30 13:14:49 2023
@@ -1,75 +1,58 @@
-@comment $NetBSD: PLIST,v 1.9 2022/02/26 13:39:07 wiz Exp $
-${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
-${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
-${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
-${PYSITELIB}/${EGG_INFODIR}/not-zip-safe
-${PYSITELIB}/${EGG_INFODIR}/requires.txt
-${PYSITELIB}/${EGG_INFODIR}/top_level.txt
+@comment $NetBSD: PLIST,v 1.10 2023/04/30 13:14:49 wiz Exp $
 ${PYSITELIB}/attr/__init__.py
 ${PYSITELIB}/attr/__init__.pyc
 ${PYSITELIB}/attr/__init__.pyi
-${PYSITELIB}/attr/__init__.pyo
 ${PYSITELIB}/attr/_cmp.py
 ${PYSITELIB}/attr/_cmp.pyc
 ${PYSITELIB}/attr/_cmp.pyi
-${PYSITELIB}/attr/_cmp.pyo
 ${PYSITELIB}/attr/_compat.py
 ${PYSITELIB}/attr/_compat.pyc
-${PYSITELIB}/attr/_compat.pyo
 ${PYSITELIB}/attr/_config.py
 ${PYSITELIB}/attr/_config.pyc
-${PYSITELIB}/attr/_config.pyo
 ${PYSITELIB}/attr/_funcs.py
 ${PYSITELIB}/attr/_funcs.pyc
-${PYSITELIB}/attr/_funcs.pyo
 ${PYSITELIB}/attr/_make.py
 ${PYSITELIB}/attr/_make.pyc
-${PYSITELIB}/attr/_make.pyo
 ${PYSITELIB}/attr/_next_gen.py
-${PLIST.py3x}${PYSITELIB}/attr/_next_gen.pyc
-${PLIST.py3x}${PYSITELIB}/attr/_next_gen.pyo
+${PYSITELIB}/attr/_next_gen.pyc
+${PYSITELIB}/attr/_typing_compat.pyi
 ${PYSITELIB}/attr/_version_info.py
 ${PYSITELIB}/attr/_version_info.pyc
 ${PYSITELIB}/attr/_version_info.pyi
-${PYSITELIB}/attr/_version_info.pyo
 ${PYSITELIB}/attr/converters.py
 ${PYSITELIB}/attr/converters.pyc
 ${PYSITELIB}/attr/converters.pyi
-${PYSITELIB}/attr/converters.pyo
 ${PYSITELIB}/attr/exceptions.py
 ${PYSITELIB}/attr/exceptions.pyc
 ${PYSITELIB}/attr/exceptions.pyi
-${PYSITELIB}/attr/exceptions.pyo
 ${PYSITELIB}/attr/filters.py
 ${PYSITELIB}/attr/filters.pyc
 ${PYSITELIB}/attr/filters.pyi
-${PYSITELIB}/attr/filters.pyo
 ${PYSITELIB}/attr/py.typed
 ${PYSITELIB}/attr/setters.py
 ${PYSITELIB}/attr/setters.pyc
 ${PYSITELIB}/attr/setters.pyi
-${PYSITELIB}/attr/setters.pyo
 ${PYSITELIB}/attr/validators.py
 ${PYSITELIB}/attr/validators.pyc
 ${PYSITELIB}/attr/validators.pyi
-${PYSITELIB}/attr/validators.pyo
+${PYSITELIB}/${WHEEL_INFODIR}/INSTALLER
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/REQUESTED
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/direct_url.json
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
 ${PYSITELIB}/attrs/__init__.py
 ${PYSITELIB}/attrs/__init__.pyc
 ${PYSITELIB}/attrs/__init__.pyi
-${PYSITELIB}/attrs/__init__.pyo
 ${PYSITELIB}/attrs/converters.py
 ${PYSITELIB}/attrs/converters.pyc
-${PYSITELIB}/attrs/converters.pyo
 ${PYSITELIB}/attrs/exceptions.py
 ${PYSITELIB}/attrs/exceptions.pyc
-${PYSITELIB}/attrs/exceptions.pyo
 ${PYSITELIB}/attrs/filters.py
 ${PYSITELIB}/attrs/filters.pyc
-${PYSITELIB}/attrs/filters.pyo
 ${PYSITELIB}/attrs/py.typed
 ${PYSITELIB}/attrs/setters.py
 ${PYSITELIB}/attrs/setters.pyc
-${PYSITELIB}/attrs/setters.pyo
 ${PYSITELIB}/attrs/validators.py
 ${PYSITELIB}/attrs/validators.pyc
-${PYSITELIB}/attrs/validators.pyo

Index: pkgsrc/devel/py-attrs/distinfo
diff -u pkgsrc/devel/py-attrs/distinfo:1.14 pkgsrc/devel/py-attrs/distinfo:1.15
--- pkgsrc/devel/py-attrs/distinfo:1.14 Wed Feb 23 11:43:41 2022
+++ pkgsrc/devel/py-attrs/distinfo      Sun Apr 30 13:14:49 2023
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.14 2022/02/23 11:43:41 adam Exp $
+$NetBSD: distinfo,v 1.15 2023/04/30 13:14:49 wiz Exp $
 
-BLAKE2s (attrs-21.4.0.tar.gz) = 82e03760b7a686ea1bad4b529d7f1228035adcaefe8ad40b9c24dadfb08cae24
-SHA512 (attrs-21.4.0.tar.gz) = 5a52776eb505c8a354912fa037a9710e49830fa6ad37272cb6d8c3298f4179a5b237e36cd7db3b1c9af19fbf0194ad6b83c3db9a473f9349769180073273ba65
-Size (attrs-21.4.0.tar.gz) = 201839 bytes
+BLAKE2s (attrs-23.1.0.tar.gz) = f19605d4c61bb8752225f5ad7643f1a62c8404787f78f37372cdb6bc4f6783bc
+SHA512 (attrs-23.1.0.tar.gz) = 1fff41da90668601b29412f71b4419dd9ffb9f2a8e54ce2199198557729167d6d7574954dc998818caba0d6bc378ab2ce068541df9c1c0d4ab1b071758d4a38a
+Size (attrs-23.1.0.tar.gz) = 212878 bytes



Home | Main Index | Thread Index | Old Index