summaryrefslogtreecommitdiff
path: root/dev-python/uvicorn
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-04-12 05:40:29 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-04-12 05:40:29 +0100
commit81663ab80e0e0c5839b216934509b6bcbf08429a (patch)
tree9592fd7a67715f7e35d669ab58594078bfe4a7f7 /dev-python/uvicorn
parent7d040c2d1b0c38c8635ec28dfaa632a2db8be895 (diff)
gentoo auto-resync : 12:04:2023 - 05:40:28
Diffstat (limited to 'dev-python/uvicorn')
-rw-r--r--dev-python/uvicorn/Manifest4
-rw-r--r--dev-python/uvicorn/files/uvicorn-0.21.1-optional-rust.patch80
-rw-r--r--dev-python/uvicorn/uvicorn-0.21.1-r1.ebuild96
-rw-r--r--dev-python/uvicorn/uvicorn-0.21.1.ebuild2
4 files changed, 180 insertions, 2 deletions
diff --git a/dev-python/uvicorn/Manifest b/dev-python/uvicorn/Manifest
index 96871f526331..7a59bcff1f37 100644
--- a/dev-python/uvicorn/Manifest
+++ b/dev-python/uvicorn/Manifest
@@ -1,3 +1,4 @@
+AUX uvicorn-0.21.1-optional-rust.patch 2870 BLAKE2B 8b5e50947773e0248214e1882eee8e8eab689e34fb3528e9c3169cdb262e90780c6318840f8544839ac097ee548883f3278fa0566c749a80826b6042863d3eac SHA512 a1da90433eae9ff7d3598116770288280eef094ca5b67b9ae1a81adc67603069d92cbc3a8eeca40aabcad6c8e2c0219a4152207612f729881d99e6d1fa7fbe04
DIST uvicorn-0.19.0.gh.tar.gz 713679 BLAKE2B ee83cd7d318b0e54bd2dc240b5bfe3874ef41933ba7e2376e8dd3bdce90387b3d253c02c16ef28bbb54435b2e666309769cd057fe703d4be498f3c0ef19532c0 SHA512 d030a0c5e61b5bec985fa1640a74bf5da1dfa1a48d0b3f758096eaff2e3bf1d1b3bee1c3a024f5960cafbf928e9ee94e285a8c24404e1c4b6b6aa29f0d4cb15a
DIST uvicorn-0.20.0.gh.tar.gz 716073 BLAKE2B 7f1cf4808e985199d39e54e3563119cef1fe3af31361ad05a91278d32bc6f0dd741ad87f6073fbb720e9d9d4119fc8389b4e2feaaede665d8f68c56d56b37a17 SHA512 fa089da78dd7ce3cc02d83405e7db401e6055e947b80bf4abb0e3a4dce6575d97761f3bd6fcc253f3338caad5f797fc4f01bd40d833514d9cc0bcd0f072ad793
DIST uvicorn-0.21.0.gh.tar.gz 717952 BLAKE2B 116153af13360f228032889feb63c4a652f298690fa0dc235e6ccead8e75a01bf3949e76b3eca4db0b8a6f1a4752127fd06b14c2cd83c88c5b247cba5c68eea8 SHA512 054355cbf09449d54255aebcfb43b77c9d8178d91d16a710e3d7213922908f2c107809116b635319fca2d3c12a738c9c6fbcd0e318a208f6a068075b9f997a2c
@@ -5,5 +6,6 @@ DIST uvicorn-0.21.1.gh.tar.gz 717974 BLAKE2B ac4e1ec6a2533e364fe2ad7cd52558ad70b
EBUILD uvicorn-0.19.0.ebuild 1672 BLAKE2B 717bc23c0b3438239ace5ff0443182dc3fcb603d89a529bc3a9df583b7e4f62bed5237a72fec94950cdc4c9431502439f9125b924f2edfa0a186c6aa0a636d68 SHA512 225856fc376629ae96d34fadc56bba68b3ea3d675bcc675407053c38e0da307b77f4d800b7935b7ce553817fcb17f62780da5fc7064ae0257e0e4119431f8bbc
EBUILD uvicorn-0.20.0.ebuild 1891 BLAKE2B 1b2b60d41b47f64023e304adea33540f1edb3fb2df92d995a0f7562380bf61437dfd180238489e517ef6417b5e1ca7d61f16567acf893da73a7756b017a63bf2 SHA512 3db6763fa4720bd705053721a2f65be0387858a8db71f6e122ec7613037ad1e948521828738fb21d258b648eb0f34442c283d85645aab3e4185bc710d53d2593
EBUILD uvicorn-0.21.0.ebuild 1897 BLAKE2B f3fd7b2f58004b54644f50023c61c1a2baa3f6014e99ebdc6791a91df76bf378b364782422e205055d1e781cb206750792445aaa5113adc754224a1e8a562bf4 SHA512 a1e17fcce3ccc3fcb7bc3395b88065865f05a8b6d9e3f3b5fc1d88e8953c1d9fc0c7b512e6554e0fef4ceecb118c48654a99681e1461cb879d199e567895594f
-EBUILD uvicorn-0.21.1.ebuild 1996 BLAKE2B 753b2308fb9f5a696114c4a46452d8e4b415503a7ffddca3e9f946d23aff77f69757a8efff0f890ab7ce76840ad5760072367335ad12be23467133264e220e6f SHA512 618cffec80ae94ed3d1497fe3b8dd5cc92e377ff4d149d095a8dedf0f2a6f4499b67be23b2583b47759ee23a370c6d7bcb2897c482a2629743932d2303a9a2c9
+EBUILD uvicorn-0.21.1-r1.ebuild 2332 BLAKE2B e52e3b35f49f18f1010610e3a4e07ad0683dc3cc01a984c946645b3231b7ad705508031e7abf2d7a88fbd31d25245aab7f3d539e11f4aa1d853b05e0d7915b69 SHA512 5fc00edd4b91cbd5399ddddcba7cc324f0de045b2b486486ea2e59ac663d40f91a30343a0fe5251dca092a467557276d78372d6acae39fbf475b927367e5cbc6
+EBUILD uvicorn-0.21.1.ebuild 2027 BLAKE2B 7a21242c15558393d27872700ce0c5d6e26f0e1a0f8536494e62a3a119c0cb448e8b00f084ca8d8a49292b10a2455a5c662fad59b3bc54bb49ca1f9b33a366a3 SHA512 2428b94bbda2020865420f1898b2b44b4fda3556cfa9879be3df1cf0b3ba19049db69678a20e1af4027eb7293af456d00c941a4270da7c51c671bf828936d3e0
MISC metadata.xml 451 BLAKE2B af9be617c95128297e3455b503e198e13c373244094f6aa9c80837945c3f9f023f1874efa28d4ffa8b241feb9a4e8c7f3d3534e96966733bd5593bffb90904a5 SHA512 4d76bab5c20f7cad81fa56a28c9be07bf2c2ebc412fc647f073215d437a2550eca247b8419df71d04200d0fdf545520684db0b6f4953e73848f69a4f4ad6931e
diff --git a/dev-python/uvicorn/files/uvicorn-0.21.1-optional-rust.patch b/dev-python/uvicorn/files/uvicorn-0.21.1-optional-rust.patch
new file mode 100644
index 000000000000..dddeda158252
--- /dev/null
+++ b/dev-python/uvicorn/files/uvicorn-0.21.1-optional-rust.patch
@@ -0,0 +1,80 @@
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -11,9 +11,13 @@ from time import sleep
+ from uuid import uuid4
+
+ import pytest
+-import trustme
+-from cryptography.hazmat.backends import default_backend
+-from cryptography.hazmat.primitives import serialization
++
++try:
++ import trustme
++ from cryptography.hazmat.backends import default_backend
++ from cryptography.hazmat.primitives import serialization
++except ImportError:
++ pass
+
+ from uvicorn.config import LOGGING_CONFIG
+
+@@ -30,12 +34,12 @@ LOGGING_CONFIG["loggers"]["uvicorn"]["propagate"] = True
+
+
+ @pytest.fixture
+-def tls_certificate_authority() -> trustme.CA:
++def tls_certificate_authority() -> "trustme.CA":
+ return trustme.CA()
+
+
+ @pytest.fixture
+-def tls_certificate(tls_certificate_authority: trustme.CA) -> trustme.LeafCert:
++def tls_certificate(tls_certificate_authority: "trustme.CA") -> "trustme.LeafCert":
+ return tls_certificate_authority.issue_cert(
+ "localhost",
+ "127.0.0.1",
+@@ -44,13 +48,13 @@ def tls_certificate(tls_certificate_authority: trustme.CA) -> trustme.LeafCert:
+
+
+ @pytest.fixture
+-def tls_ca_certificate_pem_path(tls_certificate_authority: trustme.CA):
++def tls_ca_certificate_pem_path(tls_certificate_authority: "trustme.CA"):
+ with tls_certificate_authority.cert_pem.tempfile() as ca_cert_pem:
+ yield ca_cert_pem
+
+
+ @pytest.fixture
+-def tls_ca_certificate_private_key_path(tls_certificate_authority: trustme.CA):
++def tls_ca_certificate_private_key_path(tls_certificate_authority: "trustme.CA"):
+ with tls_certificate_authority.private_key_pem.tempfile() as private_key:
+ yield private_key
+
+@@ -72,25 +76,25 @@ def tls_certificate_private_key_encrypted_path(tls_certificate):
+
+
+ @pytest.fixture
+-def tls_certificate_private_key_path(tls_certificate: trustme.CA):
++def tls_certificate_private_key_path(tls_certificate: "trustme.CA"):
+ with tls_certificate.private_key_pem.tempfile() as private_key:
+ yield private_key
+
+
+ @pytest.fixture
+-def tls_certificate_key_and_chain_path(tls_certificate: trustme.LeafCert):
++def tls_certificate_key_and_chain_path(tls_certificate: "trustme.LeafCert"):
+ with tls_certificate.private_key_and_cert_chain_pem.tempfile() as cert_pem:
+ yield cert_pem
+
+
+ @pytest.fixture
+-def tls_certificate_server_cert_path(tls_certificate: trustme.LeafCert):
++def tls_certificate_server_cert_path(tls_certificate: "trustme.LeafCert"):
+ with tls_certificate.cert_chain_pems[0].tempfile() as cert_pem:
+ yield cert_pem
+
+
+ @pytest.fixture
+-def tls_ca_ssl_context(tls_certificate_authority: trustme.CA) -> ssl.SSLContext:
++def tls_ca_ssl_context(tls_certificate_authority: "trustme.CA") -> ssl.SSLContext:
+ ssl_ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
+ tls_certificate_authority.configure_trust(ssl_ctx)
+ return ssl_ctx
diff --git a/dev-python/uvicorn/uvicorn-0.21.1-r1.ebuild b/dev-python/uvicorn/uvicorn-0.21.1-r1.ebuild
new file mode 100644
index 000000000000..de4c6ee2d808
--- /dev/null
+++ b/dev-python/uvicorn/uvicorn-0.21.1-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{9..11} )
+
+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.21.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="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv"
+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}]
+"
+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}]
+ )
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.21.1-optional-rust.patch
+)
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # too long path for unix socket
+ tests/test_config.py::test_bind_unix_socket_works_with_reload_or_workers
+ # need unpackaged httptools
+ "tests/middleware/test_logging.py::test_trace_logging_on_http_protocol[httptools]"
+ tests/protocols/test_http.py::test_fragmentation
+ # TODO
+ tests/protocols/test_websocket.py::test_connection_lost_before_handshake_complete
+ )
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ # TODO
+ EPYTEST_DESELECT+=(
+ tests/middleware/test_logging.py::test_running_log_using_fd
+ )
+ fi
+
+ local EPYTEST_IGNORE=()
+
+ if ! use test-rust ; then
+ EPYTEST_DESELECT+=(
+ # dev-python/cryptography
+ tests/test_config.py::test_ssl_config
+ tests/test_config.py::test_ssl_config_combined
+ )
+
+ EPYTEST_IGNORE+=(
+ # dev-python/watchfiles
+ tests/supervisors/test_reload.py
+ # dev-python/cryptography
+ tests/test_ssl.py
+ )
+ fi
+
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "auto reload on file changes" dev-python/watchfiles
+}
diff --git a/dev-python/uvicorn/uvicorn-0.21.1.ebuild b/dev-python/uvicorn/uvicorn-0.21.1.ebuild
index dae451364faf..4dbce7762222 100644
--- a/dev-python/uvicorn/uvicorn-0.21.1.ebuild
+++ b/dev-python/uvicorn/uvicorn-0.21.1.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 ~loong"
+KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv"
RDEPEND="
>=dev-python/asgiref-3.4.0[${PYTHON_USEDEP}]