./www/py-aiohttp, Async http client/server framework

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.11.17, Package name: py312-aiohttp-3.11.17, Maintainer: pkgsrc-users

HTTP client/server for asyncio (PEP 3156).

Features:
* Supports both Client and HTTP Server.
* Supports both Server WebSockets and Client WebSockets out-of-the-box.
* Web-server has Middlewares, Signals and pluggable routing.


Required to run:
[devel/py-setuptools] [converters/py-chardet] [devel/py-cython] [devel/py-attrs] [databases/py-multidict] [www/py-yarl] [devel/py-async-timeout] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 7499.113 KB

Version history: (Expand)


CVS history: (Expand)


   2025-04-20 14:12:09 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.17

3.11.17

Miscellaneous internal changes

- Optimized web server performance when access logging is disabled by reducing \ 
time syscalls
- Improved web server performance when connection can be reused
- Improved performance of the WebSocket reader
- Improved performance of the WebSocket reader with large messages
   2025-04-13 20:59:47 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-aiohttp: update to 3.11.16.

3.11.16 (2025-04-01)
====================

Bug fixes
---------

- Replaced deprecated ``asyncio.iscoroutinefunction`` with its counterpart from \ 
``inspect``
  -- by :user:`layday`.

  *Related issues and pull requests on GitHub:*
  :issue:`10634`.

- Fixed :class:`multidict.CIMultiDict` being mutated when passed to \ 
:class:`aiohttp.web.Response` -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10672`.

----

3.11.15 (2025-03-31)
====================

Bug fixes
---------

- Reverted explicitly closing sockets if an exception is raised during \ 
``create_connection`` -- by :user:`bdraco`.

  This change originally appeared in aiohttp 3.11.13

  *Related issues and pull requests on GitHub:*
  :issue:`10464`, :issue:`10617`, :issue:`10656`.

Miscellaneous internal changes
------------------------------

- Improved performance of WebSocket buffer handling -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10601`.

- Improved performance of serializing headers -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10625`.

----

3.11.14 (2025-03-16)
====================

Bug fixes
---------

- Fixed an issue where dns queries were delayed indefinitely when an exception \ 
occurred in a ``trace.send_dns_cache_miss``
  -- by :user:`logioniz`.

  *Related issues and pull requests on GitHub:*
  :issue:`10529`.

- Fixed DNS resolution on platforms that don't support ``socket.AI_ADDRCONFIG`` \ 
-- by :user:`maxbachmann`.

  *Related issues and pull requests on GitHub:*
  :issue:`10542`.

- The connector now raises :exc:`aiohttp.ClientConnectionError` instead of \ 
:exc:`OSError` when failing to explicitly close the socket after \ 
:py:meth:`asyncio.loop.create_connection` fails -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10551`.

- Break cyclic references at connection close when there was a traceback -- by \ 
:user:`bdraco`.

  Special thanks to :user:`availov` for reporting the issue.

  *Related issues and pull requests on GitHub:*
  :issue:`10556`.

- Break cyclic references when there is an exception handling a request -- by \ 
:user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10569`.

Features
--------

- Improved logging on non-overlapping WebSocket client protocols to include the \ 
remote address -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10564`.

Miscellaneous internal changes
------------------------------

- Improved performance of parsing content types by adding a cache in the same \ 
manner currently done with mime types -- by :user:`bdraco`.

  *Related issues and pull requests on GitHub:*
  :issue:`10552`.
   2025-02-25 14:06:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.13

3.11.13 (2025-02-24)

Bug fixes

- Removed a break statement inside the finally block in \ 
:py:class:`~aiohttp.web.RequestHandler`
- Changed connection creation to explicitly close sockets if an exception is \ 
raised in the event loop's ``create_connection`` method -- by :user:`top-oai`.

Packaging updates and notes for downstreams

- Fixed test \ 
``test_write_large_payload_deflate_compression_data_in_eof_writelines`` failing \ 
with Python 3.12.9+ or 3.13.2+ -- by :user:`bdraco`.

Miscellaneous internal changes

- Added human-readable error messages to the exceptions for WebSocket \ 
disconnects due to PONG not being received -- by :user:`bdraco`.
  Previously, the error messages were empty strings, which made it hard to \ 
determine what went wrong.
   2025-02-06 10:43:33 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.12

3.11.12 (2025-02-05)

Bug fixes

- ``MultipartForm.decode()`` now follows RFC1341 7.2.1 with a ``CRLF`` after the \ 
boundary
- Restored the missing ``total_bytes`` attribute to ``EmptyStreamReader``

Features

- Updated :py:func:`~aiohttp.request` to make it accept ``_RequestOptions`` kwargs.
- Improved logging of HTTP protocol errors to include the remote address

Improved documentation

- Added ``aiohttp-openmetrics`` to list of third-party libraries

Packaging updates and notes for downstreams

- Added missing files to the source distribution to fix ``Makefile`` targets.
  Added a ``cythonize-nodeps`` target to run Cython without invoking pip to \ 
install dependencies.
- Started building armv7l musllinux wheels

Contributor-facing changes

- The CI/CD workflow has been updated to use `upload-artifact` v4 and \ 
`download-artifact` v4 GitHub Actions

Miscellaneous internal changes

- Restored support for zero copy writes when using Python 3.12 versions 3.12.9 \ 
and later or Python 3.13.2+
  Zero copy writes were previously disabled due to :cve:`2024-12254` which is \ 
resolved in these Python versions.
   2024-12-25 11:00:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.11

3.11.11 (2024-12-18)

Bug fixes

- Updated :py:meth:`~aiohttp.ClientSession.request` to reuse the \ 
``quote_cookie`` setting from ``ClientSession._cookie_jar`` when processing \ 
cookies parameter.
- Fixed type of ``SSLContext`` for some static type checkers (e.g. pyright).
- Updated :meth:`aiohttp.web.StreamResponse.write` annotation to also allow \ 
:class:`bytearray` and :class:`memoryview` as inputs -- by :user:`cdce8p`.
- Fixed a hang where a connection previously used for a streaming
  download could be returned to the pool in a paused state.

Features

- Enabled ALPN on default SSL contexts. This improves compatibility with some
  proxies which don't work without this extension.

Miscellaneous internal changes

- Fixed an infinite loop that can occur when using aiohttp in combination
  with `async-solipsism`_
   2024-12-06 09:08:53 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.10

3.11.10 (2024-12-05)

Bug fixes

- Fixed race condition in :class:`aiohttp.web.FileResponse` that could have \ 
resulted in an incorrect response if the file was replaced on the file system \ 
during ``prepare``
- Replaced deprecated call to :func:`mimetypes.guess_type` with \ 
:func:`mimetypes.guess_file_type` when using Python 3.13+
- Disabled zero copy writes in the ``StreamWriter``
   2024-12-04 10:26:23 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.9

3.11.9 (2024-12-01)

Bug fixes

- Fixed invalid method logging unexpected being logged at exception level on \ 
subsequent connections

Miscellaneous internal changes

- Improved performance of parsing headers when using the C parser

3.11.8 (2024-11-27)

Miscellaneous internal changes

- Improved performance of creating :class:`aiohttp.ClientResponse` objects when \ 
there are no cookies
- Improved performance of creating :class:`aiohttp.ClientResponse` objects
- Improved performances of creating objects during the HTTP request lifecycle
- Improved performance of constructing :class:`aiohttp.web.Response` with headers
- Improved performance of making requests when there are no auto headers to skip
- Downgraded logging of invalid HTTP method exceptions on the first request to \ 
debug level

  HTTP requests starting with an invalid method are relatively common, \ 
especially when connected to the public internet, because browsers or other \ 
clients may try to speak SSL to a plain-text server or vice-versa. These \ 
exceptions can quickly fill the log with noise when nothing is wrong.
   2024-11-24 08:27:08 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-aiohttp: updated to 3.11.7

3.11.7 (2024-11-21)

Bug fixes

- Fixed the HTTP client not considering the connector's ``force_close`` value \ 
when setting the ``Connection`` header

Miscellaneous internal changes

- Improved performance of serializing HTTP headers

3.11.6 (2024-11-19)

Bug fixes

- Restored the ``force_close`` method to the ``ResponseHandler``

3.11.5 (2024-11-19)

Bug fixes

- Fixed the ``ANY`` method not appearing in :meth:`~aiohttp.web.UrlDispatcher.routes`

3.11.4 (2024-11-18)

Bug fixes

- Fixed ``StaticResource`` not allowing the ``OPTIONS`` method after calling \ 
``set_options_route``

Miscellaneous internal changes

- Improved performance of creating web responses when there are no cookies

3.11.3 (2024-11-18)

Bug fixes

- Removed non-existing ``__author__`` from ``dir(aiohttp)``
- Restored the ``FlowControlDataQueue`` class
  This class is no longer used internally, and will be permanently removed in \ 
the next major version.

Miscellaneous internal changes

- Improved performance of resolving resources when multiple methods are \ 
registered for the same route