pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/www/py-aioquic
Module Name: pkgsrc
Committed By: adam
Date: Wed Oct 28 07:15:58 UTC 2026
Modified Files:
pkgsrc/www/py-aioquic: Makefile PLIST distinfo
Log Message:
py-aioquic: updated to 1.7.0
1.7.0
* Migrate clients to the server's preferred address, as :rfc:`9000` allows.
.. note::
If you drive :class:`~aioquic.quic.connection.QuicConnection` with your
own I/O, you must send each datagram to the address returned alongside
it by ``datagrams_to_send()``. That address may now differ from the one
passed to ``connect()``, so a connected UDP socket or a tunnel with a
single fixed destination no longer works.
* Add :meth:`~aioquic.quic.connection.QuicConnection.get_peer_address`, which
returns the address datagrams are currently sent to. It can change when
either endpoint migrates.
* Improve path validation and connection migration as :rfc:`9000` requires:
* Discard datagrams received by clients from unknown server addresses.
* Pad datagrams carrying PATH_CHALLENGE or PATH_RESPONSE frames to 1200
bytes, within the anti-amplification limit.
* Retransmit lost PATH_CHALLENGE frames on servers, abandon failed
validations and revert to the last validated address.
* Answer path probes on servers on the path they arrive on, with a
connection ID kept for each path.
* Keep outstanding PATH_CHALLENGE data for each path, and ignore a
PATH_RESPONSE that matches no challenge instead of closing the
connection.
* Keep clients on the preferred address when the server probes them from
its original address.
* Reset the spin bit when changing connection ID.
* Grant MAX_STREAMS credit as the peer's streams close, instead of whenever
half the limit was used, so the stream limit bounds concurrency. Stream IDs
an application skips can no longer be used later.
* Restart the idle timer when sending the first ack-eliciting packet after
receiving one, as :rfc:`9000` requires.
* Fix handshakes stalling or failing:
* Pad datagrams carrying INITIAL packets to 1200 bytes even when the
congestion window is full, as :rfc:`9000` requires. A client sending
0-RTT data could send short datagrams, which servers discard.
* Acknowledge 0-RTT packets before the handshake completes, as :rfc:`9000`
requires.
* Send lost HANDSHAKE data even when the congestion window is full, instead
of stalling until the idle timeout when no probe timer was armed.
* Only assume the server's INITIAL packets were lost while the client is
waiting for the ServerHello, as :rfc:`9002` describes, instead of sending
spurious probes for packets it cannot decrypt later on.
* Do not arm the ACK timer or the probe timeout while the anti-amplification
limit leaves no room to send, as :rfc:`9002` requires. A server answering a
0-RTT request could otherwise busy loop until the client sent again, or
until the idle timeout.
* Stop servers from exceeding the anti-amplification limit by one byte when a
packet's only frame is a single byte, such as a PING.
* Improve ACK frame handling as :rfc:`9000` requires:
* Reject ACK frames containing negative packet numbers with
``FRAME_ENCODING_ERROR``.
* Keep at most 64 ACK ranges, and leave out the oldest ranges which do not
fit in an ACK frame.
* Lower the cost of processing ACK frames, which now grows with the number
of ranges and of newly acknowledged packets, not of packets in flight.
* Encrypt retry tokens with AES-GCM instead of RSA, which makes validating
them much cheaper. Only accept a token on the Retry packet's connection ID
and for 30 seconds, to limit replays as :rfc:`9000` requires.
* Support interim (1xx) responses in HTTP/3. A final response which follows
them is no longer rejected as trailers.
* Reject HTTP/3 messages containing connection-specific header fields, and
only allow ``TE: trailers``, as :rfc:`9114` requires.
* Abort HTTP/3 request streams with ``H3_REQUEST_INCOMPLETE`` when they end
before their HEADERS frame, instead of keeping them until the connection
closes.
* Skip interim responses in the `httpx` example.
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 pkgsrc/www/py-aioquic/Makefile
cvs rdiff -u -r1.4 -r1.5 pkgsrc/www/py-aioquic/PLIST
cvs rdiff -u -r1.5 -r1.6 pkgsrc/www/py-aioquic/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-aioquic/Makefile
diff -u pkgsrc/www/py-aioquic/Makefile:1.9 pkgsrc/www/py-aioquic/Makefile:1.10
--- pkgsrc/www/py-aioquic/Makefile:1.9 Mon Oct 26 17:38:01 2026
+++ pkgsrc/www/py-aioquic/Makefile Wed Oct 28 07:15:58 2026
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.9 2026/10/26 17:38:01 wiz Exp $
+# $NetBSD: Makefile,v 1.10 2026/10/28 07:15:58 adam Exp $
-DISTNAME= aioquic-1.3.0
+DISTNAME= aioquic-1.7.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
-PKGREVISION= 1
CATEGORIES= www python
MASTER_SITES= ${MASTER_SITE_PYPI:=a/aioquic/}
@@ -14,8 +13,8 @@ LICENSE= modified-bsd
TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=84.2:../../devel/py-setuptools
DEPENDS+= ${PYPKGPREFIX}-OpenSSL>=24:../../security/py-OpenSSL
DEPENDS+= ${PYPKGPREFIX}-certifi>=0:../../security/py-certifi
-DEPENDS+= ${PYPKGPREFIX}-cryptography>=42.0.0:../../security/py-cryptography
-DEPENDS+= ${PYPKGPREFIX}-pylsqpack>=0.3.3:../../www/py-pylsqpack
+DEPENDS+= ${PYPKGPREFIX}-cryptography>=43.0.0:../../security/py-cryptography
+DEPENDS+= ${PYPKGPREFIX}-pylsqpack>=1.0.0:../../www/py-pylsqpack
DEPENDS+= ${PYPKGPREFIX}-service_identity>=24.1.0:../../security/py-service_identity
.include "../../lang/python/wheel.mk"
Index: pkgsrc/www/py-aioquic/PLIST
diff -u pkgsrc/www/py-aioquic/PLIST:1.4 pkgsrc/www/py-aioquic/PLIST:1.5
--- pkgsrc/www/py-aioquic/PLIST:1.4 Mon Oct 26 16:45:20 2026
+++ pkgsrc/www/py-aioquic/PLIST Wed Oct 28 07:15:58 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.4 2026/10/26 16:45:20 abs Exp $
+@comment $NetBSD: PLIST,v 1.5 2026/10/28 07:15:58 adam Exp $
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
@@ -10,9 +10,9 @@ ${PYSITELIB}/aioquic/__init__.pyo
${PYSITELIB}/aioquic/_buffer.c
${PYSITELIB}/aioquic/_buffer.pyi
${PYSITELIB}/aioquic/_buffer.so
-${PYSITELIB}/aioquic/_crypto.c
-${PYSITELIB}/aioquic/_crypto.pyi
-${PYSITELIB}/aioquic/_crypto.so
+${PYSITELIB}/aioquic/_crypto.py
+${PYSITELIB}/aioquic/_crypto.pyc
+${PYSITELIB}/aioquic/_crypto.pyo
${PYSITELIB}/aioquic/asyncio/__init__.py
${PYSITELIB}/aioquic/asyncio/__init__.pyc
${PYSITELIB}/aioquic/asyncio/__init__.pyo
Index: pkgsrc/www/py-aioquic/distinfo
diff -u pkgsrc/www/py-aioquic/distinfo:1.5 pkgsrc/www/py-aioquic/distinfo:1.6
--- pkgsrc/www/py-aioquic/distinfo:1.5 Mon Oct 20 09:16:37 2025
+++ pkgsrc/www/py-aioquic/distinfo Wed Oct 28 07:15:58 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.5 2025/10/20 09:16:37 adam Exp $
+$NetBSD: distinfo,v 1.6 2026/10/28 07:15:58 adam Exp $
-BLAKE2s (aioquic-1.3.0.tar.gz) = 2bd3fabcfe4dac0b50abb3892e2cf735602a5f38079f77a06316568d4b467a2e
-SHA512 (aioquic-1.3.0.tar.gz) = 149d46d5c3b7db26edb418569bec224f2e4c2ce419a0374a9241ea570d70cd09f0230c1fe5fd5ee73e1ff84adac41ab48dd15aa2f48d1b3b6c8caaa34b70c8fd
-Size (aioquic-1.3.0.tar.gz) = 181923 bytes
+BLAKE2s (aioquic-1.7.0.tar.gz) = fc5522f507a2d72ec46736251eaa2538d5f336f8a1662bb721e74b76edf0ce0f
+SHA512 (aioquic-1.7.0.tar.gz) = f9f0e598f7090881424e3b81aff874a464907e8a0d60fc3e021a9c6c213c42174ccf262492857baff889d5c4e4e657ab929b55aafd2b49b198ae4246b34d7f81
+Size (aioquic-1.7.0.tar.gz) = 227514 bytes
Home |
Main Index |
Thread Index |
Old Index