summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-09-28 08:40:17 +0200
committerMichał Górny <mgorny@gentoo.org>2024-09-28 09:42:17 +0200
commit5fb9e4e83712855d2797f0f2020e86297f61eb30 (patch)
tree48492ee5e00a386790930873b43eaecedad0802e /dev-python/uvicorn
parentdev-python/yarl: Bump to 1.13.1 (diff)
downloadgentoo-5fb9e4e83712855d2797f0f2020e86297f61eb30.tar.gz
gentoo-5fb9e4e83712855d2797f0f2020e86297f61eb30.tar.bz2
gentoo-5fb9e4e83712855d2797f0f2020e86297f61eb30.zip
dev-python/uvicorn: Bump to 0.31.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/uvicorn')
-rw-r--r--dev-python/uvicorn/Manifest1
-rw-r--r--dev-python/uvicorn/files/uvicorn-0.31.0-ws-0.13.patch25
-rw-r--r--dev-python/uvicorn/uvicorn-0.31.0.ebuild80
3 files changed, 106 insertions, 0 deletions
diff --git a/dev-python/uvicorn/Manifest b/dev-python/uvicorn/Manifest
index 0e8b8104d1c5..f28ac7d5fec0 100644
--- a/dev-python/uvicorn/Manifest
+++ b/dev-python/uvicorn/Manifest
@@ -1 +1,2 @@
DIST uvicorn-0.30.6.gh.tar.gz 724296 BLAKE2B c95ee6764947e51958da2e62627d20bfbef48f065832f6214c7c05b9daf344b76eb6b0ec4ccbc3ebc2502b9f2cc77157dcf90e824cec0a8adc62601ceb4abf0c SHA512 d4c4410648509b14e18c3c86a33df4152e951703d287153a26ad35f4dce35eb594b940d3773cb444119b9bfa72ae3885c54d84b1a09c0c6069b80941f453c2e8
+DIST uvicorn-0.31.0.gh.tar.gz 728288 BLAKE2B 8cdc15895be8689cb38c402beac415463b185d2402484e16cac28d51e4ef7359a23e084163761abe62483a02d987555dda628938c5b93cdf19e5759372598557 SHA512 d1d8875681ecb81febac2eb1d00d245f421bfb3d06c91be831daf11411c94368707afde8781147752bcd327fa3eb83cff1635f24b9d57107675e69c12885950d
diff --git a/dev-python/uvicorn/files/uvicorn-0.31.0-ws-0.13.patch b/dev-python/uvicorn/files/uvicorn-0.31.0-ws-0.13.patch
new file mode 100644
index 000000000000..c0e89b47b801
--- /dev/null
+++ b/dev-python/uvicorn/files/uvicorn-0.31.0-ws-0.13.patch
@@ -0,0 +1,25 @@
+From c5966796a772d1e6504fd5c7f3e4678ede1a5a29 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 28 Sep 2024 08:50:03 +0200
+Subject: [PATCH] Update test_websocket.py::test_invalid_upgrade for
+ websockets==0.13*
+
+Update the expected messages in
+`tests/protocols/test_websocket.py::test_invalid_upgrade[websockets-h11]`
+to cover the new variant emitted by websockets==0.13*.
+---
+ tests/protocols/test_websocket.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tests/protocols/test_websocket.py b/tests/protocols/test_websocket.py
+index 074c01d03..78c65d635 100644
+--- a/tests/protocols/test_websocket.py
++++ b/tests/protocols/test_websocket.py
+@@ -114,6 +114,7 @@ def app(scope: Scope):
+ "missing or empty sec-websocket-key header", # wsproto
+ "failed to open a websocket connection: missing " "sec-websocket-key header",
+ "failed to open a websocket connection: missing or empty " "sec-websocket-key header",
++ "failed to open a websocket connection: missing sec-websocket-key header; 'sec-websocket-key'",
+ ]
+ )
+
diff --git a/dev-python/uvicorn/uvicorn-0.31.0.ebuild b/dev-python/uvicorn/uvicorn-0.31.0.ebuild
new file mode 100644
index 000000000000..6aaf8d360663
--- /dev/null
+++ b/dev-python/uvicorn/uvicorn-0.31.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Lightning-fast ASGI server implementation"
+HOMEPAGE="
+ https://www.uvicorn.org/
+ https://github.com/encode/uvicorn/
+ https://pypi.org/project/uvicorn/
+"
+# as of 0.28.0, no tests in sdist
+SRC_URI="
+ https://github.com/encode/uvicorn/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test-rust"
+
+RDEPEND="
+ >=dev-python/asgiref-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/click-7.0[${PYTHON_USEDEP}]
+ >=dev-python/h11-0.8[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-python/a2wsgi[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/python-dotenv[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/websockets-10.4[${PYTHON_USEDEP}]
+ dev-python/wsproto[${PYTHON_USEDEP}]
+ test-rust? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ dev-python/watchfiles[${PYTHON_USEDEP}]
+ )
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/encode/uvicorn/pull/2470
+ "${FILESDIR}/${P}-ws-0.13.patch"
+)
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # too long path for unix socket
+ tests/test_config.py::test_bind_unix_socket_works_with_reload_or_workers
+ )
+ case ${EPYTHON} in
+ pypy3)
+ # TODO
+ EPYTEST_DESELECT+=(
+ tests/middleware/test_logging.py::test_running_log_using_fd
+ )
+ ;;
+ esac
+
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "auto reload on file changes" dev-python/watchfiles
+}