pkgsrc-Changes archive

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

CVS commit: pkgsrc/www/py-aiohttp



Module Name:    pkgsrc
Committed By:   adam
Date:           Thu Nov 14 18:22:00 UTC 2024

Modified Files:
        pkgsrc/www/py-aiohttp: Makefile PLIST distinfo

Log Message:
py-aiohttp: updated to 3.11.0

3.11.0 (2024-11-13)

Bug fixes

- Raise :exc:`aiohttp.ServerFingerprintMismatch` exception on client-side if request through http proxy with mismatching server fingerprint digest: `aiohttp.ClientSession(headers=headers, 
connector=TCPConnector(ssl=aiohttp.Fingerprint(mismatch_digest), trust_env=True).request(...)`
- Modified websocket :meth:`aiohttp.ClientWebSocketResponse.receive_str`, :py:meth:`aiohttp.ClientWebSocketResponse.receive_bytes`, :py:meth:`aiohttp.web.WebSocketResponse.receive_str` & 
:py:meth:`aiohttp.web.WebSocketResponse.receive_bytes` methods to raise new :py:exc:`aiohttp.WSMessageTypeError` exception, instead of generic :py:exc:`TypeError`, when websocket messages of 
incorrect types are received
- Made ``TestClient.app`` a ``Generic`` so type checkers will know the correct type (avoiding unneeded ``client.app is not None`` checks)
- Fixed the keep-alive connection pool to be FIFO instead of LIFO
  Keep-alive connections are more likely to be reused before they disconnect.

Features

- Added ``strategy`` parameter to :meth:`aiohttp.web.StreamResponse.enable_compression`
  The value of this parameter is passed to the :func:`zlib.compressobj` function, allowing people
  to use a more sufficient compression algorithm for their data served by :mod:`aiohttp.web`
- Added ``server_hostname`` parameter to ``ws_connect``.
- Exported :py:class:`~aiohttp.ClientWSTimeout` to top-level namespace
- Added ``secure``/``httponly``/``samesite`` parameters to ``.del_cookie()``
- Updated :py:class:`~aiohttp.ClientSession`'s auth logic to include default auth only if the request URL's origin matches _base_url; otherwise, the auth will not be included
- Added ``proxy`` and ``proxy_auth`` parameters to :py:class:`~aiohttp.ClientSession`
- Added ``default_to_multipart`` parameter to ``FormData``.
- Added :py:meth:`~aiohttp.ClientWebSocketResponse.send_frame` and :py:meth:`~aiohttp.web.WebSocketResponse.send_frame` for WebSockets
- Updated :py:class:`~aiohttp.ClientSession` to support paths in ``base_url`` parameter.
- Improved performance of reading WebSocket messages with a Cython implementation
- Added ``writer_limit`` to the :py:class:`~aiohttp.web.WebSocketResponse` to be able to adjust the limit before the writer forces the buffer to be drained
- Added an :attr:`~aiohttp.abc.AbstractAccessLogger.enabled` property to :class:`aiohttp.abc.AbstractAccessLogger` to dynamically check if logging is enabled

Deprecations (removal in next major release)

- Deprecate obsolete `timeout: float` and `receive_timeout: Optional[float]` in :py:meth:`~aiohttp.ClientSession.ws_connect`. Change default websocket receive timeout from `None` to `10.0`.

Removals and backward incompatible breaking changes

- Dropped support for Python 3.8
- Increased minimum yarl version to 1.17.0
- Removed the ``is_ipv6_address`` and ``is_ip4_address`` helpers are they are no longer used
- Changed ``ClientRequest.connection_key`` to be a `NamedTuple` to improve client performance
- ``FlowControlDataQueue`` has been replaced with the ``WebSocketDataQueue``
- Changed ``ClientRequest.request_info`` to be a `NamedTuple` to improve client performance

Packaging updates and notes for downstreams

- Switched to using the :mod:`propcache <propcache.api>` package for property caching
  The :mod:`propcache <propcache.api>` package is derived from the property caching
  code in :mod:`yarl` and has been broken out to avoid maintaining it for multiple
  projects.
- Separated ``aiohttp.http_websocket`` into multiple files to make it easier to maintain

Contributor-facing changes

- Changed diagram images generator from ``blockdiag`` to ``GraphViz``.
  Generating documentation now requires the GraphViz executable to be included in $PATH or sphinx build configuration.

Miscellaneous internal changes

- Added flake8 settings to avoid some forms of implicit concatenation.
- Enabled keep-alive support on proxies (which was originally disabled several years ago)
- Changed web entry point to not listen on TCP when only a Unix path is passed
- Disabled automatic retries of failed requests in :class:`aiohttp.test_utils.TestClient`'s client session
  (which could potentially hide errors in tests)
- Changed web ``keepalive_timeout`` default to around an hour in order to reduce race conditions on reverse proxies
- Reduced memory required for stream objects created during the client request lifecycle
- Improved performance of the internal ``DataQueue``
- Improved performance of calling ``receive`` for WebSockets for the most common message types
- Replace internal helper methods ``method_must_be_empty_body`` and ``status_code_must_be_empty_body`` with simple `set` lookups
- Improved performance of :py:class:`aiohttp.BaseConnector` when there is no ``limit_per_host``
- Improved performance of sending HTTP requests when there is no body
- Improved performance of the ``WebsocketWriter`` when the protocol is not paused
- Implemented zero copy writes for ``StreamWriter``


To generate a diff of this commit:
cvs rdiff -u -r1.76 -r1.77 pkgsrc/www/py-aiohttp/Makefile
cvs rdiff -u -r1.14 -r1.15 pkgsrc/www/py-aiohttp/PLIST
cvs rdiff -u -r1.70 -r1.71 pkgsrc/www/py-aiohttp/distinfo

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

Modified files:

Index: pkgsrc/www/py-aiohttp/Makefile
diff -u pkgsrc/www/py-aiohttp/Makefile:1.76 pkgsrc/www/py-aiohttp/Makefile:1.77
--- pkgsrc/www/py-aiohttp/Makefile:1.76 Wed Nov 13 17:35:37 2024
+++ pkgsrc/www/py-aiohttp/Makefile      Thu Nov 14 18:22:00 2024
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.76 2024/11/13 17:35:37 adam Exp $
+# $NetBSD: Makefile,v 1.77 2024/11/14 18:22:00 adam Exp $
 
-DISTNAME=      aiohttp-3.10.11
+DISTNAME=      aiohttp-3.11.0
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    www python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=a/aiohttp/}
@@ -17,7 +17,8 @@ DEPENDS+=     ${PYPKGPREFIX}-aiosignal>=1.1.
 DEPENDS+=      ${PYPKGPREFIX}-attrs>=17.3.0:../../devel/py-attrs
 DEPENDS+=      ${PYPKGPREFIX}-frozenlist>=1.1.1:../../devel/py-frozenlist
 DEPENDS+=      ${PYPKGPREFIX}-multidict>=4.5:../../databases/py-multidict
-DEPENDS+=      ${PYPKGPREFIX}-yarl>=1.12.0:../../www/py-yarl
+DEPENDS+=      ${PYPKGPREFIX}-propcache>=0.2.0:../../devel/py-propcache
+DEPENDS+=      ${PYPKGPREFIX}-yarl>=1.17.0:../../www/py-yarl
 TEST_DEPENDS+= ${PYPKGPREFIX}-brotli-[0-9]*:../../archivers/py-brotli
 TEST_DEPENDS+= ${PYPKGPREFIX}-freezegun-[0-9]*:../../devel/py-freezegun
 TEST_DEPENDS+= ${PYPKGPREFIX}-gunicorn-[0-9]*:../../www/py-gunicorn

Index: pkgsrc/www/py-aiohttp/PLIST
diff -u pkgsrc/www/py-aiohttp/PLIST:1.14 pkgsrc/www/py-aiohttp/PLIST:1.15
--- pkgsrc/www/py-aiohttp/PLIST:1.14    Mon Oct 14 16:56:43 2024
+++ pkgsrc/www/py-aiohttp/PLIST Thu Nov 14 18:22:00 2024
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.14 2024/10/14 16:56:43 adam Exp $
+@comment $NetBSD: PLIST,v 1.15 2024/11/14 18:22:00 adam Exp $
 ${PYSITELIB}/${WHEEL_INFODIR}/LICENSE.txt
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
 ${PYSITELIB}/${WHEEL_INFODIR}/RECORD
@@ -6,11 +6,8 @@ ${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
 ${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
 ${PYSITELIB}/aiohttp/.hash/_cparser.pxd.hash
 ${PYSITELIB}/aiohttp/.hash/_find_header.pxd.hash
-${PYSITELIB}/aiohttp/.hash/_helpers.pyi.hash
-${PYSITELIB}/aiohttp/.hash/_helpers.pyx.hash
 ${PYSITELIB}/aiohttp/.hash/_http_parser.pyx.hash
 ${PYSITELIB}/aiohttp/.hash/_http_writer.pyx.hash
-${PYSITELIB}/aiohttp/.hash/_websocket.pyx.hash
 ${PYSITELIB}/aiohttp/.hash/hdrs.py.hash
 ${PYSITELIB}/aiohttp/__init__.py
 ${PYSITELIB}/aiohttp/__init__.pyc
@@ -18,15 +15,39 @@ ${PYSITELIB}/aiohttp/__init__.pyo
 ${PYSITELIB}/aiohttp/_cparser.pxd
 ${PYSITELIB}/aiohttp/_find_header.pxd
 ${PYSITELIB}/aiohttp/_headers.pxi
-${PYSITELIB}/aiohttp/_helpers.pyi
-${PYSITELIB}/aiohttp/_helpers.pyx
-${PYSITELIB}/aiohttp/_helpers.so
 ${PYSITELIB}/aiohttp/_http_parser.pyx
 ${PYSITELIB}/aiohttp/_http_parser.so
 ${PYSITELIB}/aiohttp/_http_writer.pyx
 ${PYSITELIB}/aiohttp/_http_writer.so
-${PYSITELIB}/aiohttp/_websocket.pyx
-${PYSITELIB}/aiohttp/_websocket.so
+${PYSITELIB}/aiohttp/_websocket/.hash/mask.pxd.hash
+${PYSITELIB}/aiohttp/_websocket/.hash/mask.pyx.hash
+${PYSITELIB}/aiohttp/_websocket/.hash/reader_c.pxd.hash
+${PYSITELIB}/aiohttp/_websocket/__init__.py
+${PYSITELIB}/aiohttp/_websocket/__init__.pyc
+${PYSITELIB}/aiohttp/_websocket/__init__.pyo
+${PYSITELIB}/aiohttp/_websocket/helpers.py
+${PYSITELIB}/aiohttp/_websocket/helpers.pyc
+${PYSITELIB}/aiohttp/_websocket/helpers.pyo
+${PYSITELIB}/aiohttp/_websocket/mask.pxd
+${PYSITELIB}/aiohttp/_websocket/mask.pyx
+${PYSITELIB}/aiohttp/_websocket/mask.so
+${PYSITELIB}/aiohttp/_websocket/models.py
+${PYSITELIB}/aiohttp/_websocket/models.pyc
+${PYSITELIB}/aiohttp/_websocket/models.pyo
+${PYSITELIB}/aiohttp/_websocket/reader.py
+${PYSITELIB}/aiohttp/_websocket/reader.pyc
+${PYSITELIB}/aiohttp/_websocket/reader.pyo
+${PYSITELIB}/aiohttp/_websocket/reader_c.pxd
+${PYSITELIB}/aiohttp/_websocket/reader_c.py
+${PYSITELIB}/aiohttp/_websocket/reader_c.pyc
+${PYSITELIB}/aiohttp/_websocket/reader_c.pyo
+${PYSITELIB}/aiohttp/_websocket/reader_c.so
+${PYSITELIB}/aiohttp/_websocket/reader_py.py
+${PYSITELIB}/aiohttp/_websocket/reader_py.pyc
+${PYSITELIB}/aiohttp/_websocket/reader_py.pyo
+${PYSITELIB}/aiohttp/_websocket/writer.py
+${PYSITELIB}/aiohttp/_websocket/writer.pyc
+${PYSITELIB}/aiohttp/_websocket/writer.pyo
 ${PYSITELIB}/aiohttp/abc.py
 ${PYSITELIB}/aiohttp/abc.pyc
 ${PYSITELIB}/aiohttp/abc.pyo

Index: pkgsrc/www/py-aiohttp/distinfo
diff -u pkgsrc/www/py-aiohttp/distinfo:1.70 pkgsrc/www/py-aiohttp/distinfo:1.71
--- pkgsrc/www/py-aiohttp/distinfo:1.70 Wed Nov 13 17:35:37 2024
+++ pkgsrc/www/py-aiohttp/distinfo      Thu Nov 14 18:22:00 2024
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.70 2024/11/13 17:35:37 adam Exp $
+$NetBSD: distinfo,v 1.71 2024/11/14 18:22:00 adam Exp $
 
-BLAKE2s (aiohttp-3.10.11.tar.gz) = 18fb9240b5bd65a85c1aaf8c8d3c3b8ce27ed18162a8c313281ddae50f8197c3
-SHA512 (aiohttp-3.10.11.tar.gz) = 41e2a35a39e019706a174ab7d75943524d05ac124a258215ba34dc1276edde2a304321c1184c5f00bc5a485c16050d299c56c4c5d803576c1c8a4ab05aae9b3c
-Size (aiohttp-3.10.11.tar.gz) = 7551886 bytes
+BLAKE2s (aiohttp-3.11.0.tar.gz) = dcd590ef99b90aa30ea1ea3adf2d529b0d05b81d1ab35912bc29ce0fccaa2639
+SHA512 (aiohttp-3.11.0.tar.gz) = 99c77f12d72a8c526d345e44ab4e66f33061375c23e9178cb3517f421c965d6a5d38a5401aa3d722868ffa862bfcd4bf8b52884169a2a0f9b5dbc447cd10343f
+Size (aiohttp-3.11.0.tar.gz) = 7656057 bytes



Home | Main Index | Thread Index | Old Index