15
0

4 Commits

Author SHA256 Message Date
f68869d608 Accepting request 1317641 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1317641
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aioquic?expand=0&rev=10
2025-11-17 11:08:07 +00:00
826da33558 - Update to 1.3.0
* Ensure PATH_CHALLENGE frames are sent before other frame types.
  * Reclaim memory when HTTP/3 streams end.
  * Limit the number of remote PATH_CHALLENGE stored per path.
  * Avoid assertion error when receiving multiple STOP_SENDING frames.
  * Improve type annotations.
  * Make it possible to use LibreSSL instead of OpenSSL.
  * Add support Python 3.13 and 3.14, drop support for Python 3.8 and 3.9.
  * Build binary wheels for musllinux.
  * Build binary wheels against OpenSSL 3.5.4.
  * Add command-line argument to the http3_client example to request
    a key update during interoperability tests.
- Update BuildRequires from setup.py

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aioquic?expand=0&rev=18
2025-11-13 16:41:38 +00:00
8bc84087a4 Accepting request 1206502 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1206502
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aioquic?expand=0&rev=9
2024-10-09 20:03:38 +00:00
83214d7c23 - Update to 1.2.0
* Ensure no data is sent after a stream reset.
  * Make H3Connection’s send_datagram() and send_push_promise() methods 
    raise an InvalidStreamTypeError exception if an invalid stream ID 
    is specified.
  * Fix utcnow() deprecation warning on Python 3.12 by using 
    cryptography 42.0 and timezone-aware datetime instances when 
    validating TLS certificates.
  * Perform more extensive HTTP/3 header validation in H3Connection.
  * Enable SHA-384 based signature algorithms and SECP384R1 key exchange.
  * Add support for QUIC Version 2
  * Drop support for draft QUIC versions which were obsoleted by RFC 9000.
  * Allow asyncio clients to make efficient use of 0-RTT by passing 
    wait_connected=False to connect().
- Drop merged support-service-identity-24.patch

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aioquic?expand=0&rev=16
2024-10-09 11:11:30 +00:00
5 changed files with 41 additions and 68 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:70795c78905326d855c2ae524072234aae586c789b81292e272d021e9b0430a3
size 165877

3
aioquic-1.3.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:28d070b2183e3e79afa9d4e7bd558960d0d53aeb98bc0cf0a358b279ba797c92
size 181923

View File

@@ -1,3 +1,39 @@
-------------------------------------------------------------------
Thu Nov 13 14:41:20 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 1.3.0
* Ensure PATH_CHALLENGE frames are sent before other frame types.
* Reclaim memory when HTTP/3 streams end.
* Limit the number of remote PATH_CHALLENGE stored per path.
* Avoid assertion error when receiving multiple STOP_SENDING frames.
* Improve type annotations.
* Make it possible to use LibreSSL instead of OpenSSL.
* Add support Python 3.13 and 3.14, drop support for Python 3.8 and 3.9.
* Build binary wheels for musllinux.
* Build binary wheels against OpenSSL 3.5.4.
* Add command-line argument to the http3_client example to request
a key update during interoperability tests.
- Update BuildRequires from setup.py
-------------------------------------------------------------------
Wed Oct 9 08:43:08 UTC 2024 - Markéta Machová <mmachova@suse.com>
- Update to 1.2.0
* Ensure no data is sent after a stream reset.
* Make H3Connections send_datagram() and send_push_promise() methods
raise an InvalidStreamTypeError exception if an invalid stream ID
is specified.
* Fix utcnow() deprecation warning on Python 3.12 by using
cryptography 42.0 and timezone-aware datetime instances when
validating TLS certificates.
* Perform more extensive HTTP/3 header validation in H3Connection.
* Enable SHA-384 based signature algorithms and SECP384R1 key exchange.
* Add support for QUIC Version 2
* Drop support for draft QUIC versions which were obsoleted by RFC 9000.
* Allow asyncio clients to make efficient use of 0-RTT by passing
wait_connected=False to connect().
- Drop merged support-service-identity-24.patch
-------------------------------------------------------------------
Thu Jan 25 04:25:09 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>

View File

@@ -18,15 +18,13 @@
%{?sle15_python_module_pythons}
Name: python-aioquic
Version: 0.9.25
Version: 1.3.0
Release: 0
Summary: Python implementation of QUIC and HTTP/3
License: BSD-3-Clause
URL: https://github.com/aiortc/aioquic
Source: https://files.pythonhosted.org/packages/source/a/aioquic/aioquic-%{version}.tar.gz
# PATCH-FIX-UPSTREAM gh#aiortc/aioquic#452
Patch0: support-service-identity-24.patch
BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module devel >= 3.10}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}

View File

@@ -1,61 +0,0 @@
From 9dd2b961dac1c9192d2459b697925ffab26a8ed2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jeremy=20Lain=C3=A9?= <jeremy.laine@m4x.org>
Date: Sun, 14 Jan 2024 11:49:14 +0100
Subject: [PATCH] Adapt "no subjectaltname" test for service-identitity >= 24
When a certificate contains no subjectAltName extension,
`service-identity` now raises a `CertificateError` instead of a
`VerificationError`.
---
pyproject.toml | 2 +-
src/aioquic/tls.py | 7 +++++--
tests/test_tls.py | 3 +--
3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/pyproject.toml b/pyproject.toml
index 562a2a72..927fa0d4 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -31,7 +31,7 @@ dependencies = [
"cryptography",
"pylsqpack>=0.3.3,<0.4.0",
"pyopenssl>=22",
- "service-identity>=23.1.0",
+ "service-identity>=24.1.0",
]
dynamic = ["version"]
diff --git a/src/aioquic/tls.py b/src/aioquic/tls.py
index a8bcb2ce..35f92ce7 100644
--- a/src/aioquic/tls.py
+++ b/src/aioquic/tls.py
@@ -244,10 +244,13 @@ def verify_certificate(
certificate, server_name
)
- except service_identity.VerificationError as exc:
+ except (
+ service_identity.CertificateError,
+ service_identity.VerificationError,
+ ) as exc:
patterns = service_identity.cryptography.extract_patterns(certificate)
if len(patterns) == 0:
- errmsg = "subject alternative name not found in the certificate"
+ errmsg = str(exc)
elif len(patterns) == 1:
errmsg = f"hostname {server_name!r} doesn't match {patterns[0]!r}"
else:
diff --git a/tests/test_tls.py b/tests/test_tls.py
index 1de9cf35..cf28bf11 100644
--- a/tests/test_tls.py
+++ b/tests/test_tls.py
@@ -1666,8 +1666,7 @@ def test_verify_subject_no_subjaltname(self):
cadata=cadata, certificate=certificate, server_name="example.com"
)
self.assertEqual(
- str(cm.exception),
- "subject alternative name not found in the certificate",
+ str(cm.exception), "Certificate does not contain any `subjectAltName`s."
)
def test_verify_subject_with_subjaltname(self):