mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-10-12 17:51:11 -04:00
dev-python/fastapi: drop 0.127.0
Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
This commit is contained in:
3 files changed
-139
No files matched your search
@@ -1,2 +1 @@
|
||||
DIST fastapi-0.127.0.tar.gz 369269 BLAKE2B 5d7372892fdc63b3f8e9b75f3c7d9d23a902792badb91298e423e1d4630c77edf03ececef01db4fb0da750b6f5df4ec774e13da16c076f191aeeaf89fb2d72a4 SHA512 ec453a68385904b5d2d073ff362062a903b6b91c47cfce50e482715f4acd11574052c6d0d63f9a3932895226cff92d2c3771400b2d1230ebe55e1c9a45845c60
|
||||
DIST fastapi-0.135.1.tar.gz 394962 BLAKE2B 95e002ac88880562fb19c51d6a9fa5b3a10f58ebfed32d70f8e4fcb9dd2e3c3366c5cbdefc3b4a8cd4d0fee8dc2e64dd9b1f5393d479cb6b3a62d5ee9b34abca SHA512 bd9b2789dbf98fbf566f340f9c890229ccb6f283066df54a82fab62763bd417a08b5fe3aa287409f224c30dbb4879b78f48e0a90d2261303879926621f4bc326
|
||||
@@ -1,112 +0,0 @@
|
||||
# Copyright 2024-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=pdm-backend
|
||||
PYTHON_COMPAT=( python3_{12..13} )
|
||||
|
||||
inherit distutils-r1 optfeature
|
||||
|
||||
DESCRIPTION="FastAPI framework, high performance, easy to learn, ready for production"
|
||||
HOMEPAGE="
|
||||
https://fastapi.tiangolo.com/
|
||||
https://pypi.org/project/fastapi/
|
||||
https://github.com/fastapi/fastapi
|
||||
"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/fastapi/fastapi.git"
|
||||
else
|
||||
inherit pypi
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/annotated-doc-0.0.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/pydantic-2.7.0[${PYTHON_USEDEP}]
|
||||
<dev-python/starlette-0.51.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/starlette-0.40.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/typing-extensions-4.8.0[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/aiosqlite[${PYTHON_USEDEP}]
|
||||
>=dev-python/anyio-3.2.1[${PYTHON_USEDEP}]
|
||||
dev-python/argon2-cffi[${PYTHON_USEDEP}]
|
||||
dev-python/dirty-equals[${PYTHON_USEDEP}]
|
||||
dev-python/email-validator[${PYTHON_USEDEP}]
|
||||
>=dev-python/flask-1.1.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/inline-snapshot-0.21.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/jinja2-3.1.5[${PYTHON_USEDEP}]
|
||||
dev-python/orjson[${PYTHON_USEDEP}]
|
||||
>=dev-python/pwdlib-0.2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pydantic-extra-types-2.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pydantic-settings-2.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyjwt[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-multipart-0.0.18[${PYTHON_USEDEP}]
|
||||
<dev-python/pyyaml-7.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyyaml-5.3.1[${PYTHON_USEDEP}]
|
||||
dev-python/sqlmodel[${PYTHON_USEDEP}]
|
||||
dev-python/trio[${PYTHON_USEDEP}]
|
||||
dev-python/ujson[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
# brotli and zstd due to starlette based tests expecting it
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-0.115.6-httpx-0.28-test-fix.patch"
|
||||
)
|
||||
|
||||
EPYTEST_PLUGINS=( anyio )
|
||||
distutils_enable_tests pytest
|
||||
|
||||
EPYTEST_DESELECT=(
|
||||
# Depends on coverage
|
||||
"tests/test_fastapi_cli.py::test_fastapi_cli"
|
||||
# Test result affected by unrelated packages such as brotli and zstd
|
||||
# https://github.com/fastapi/fastapi/blob/7c6f2f8fde68f488163376c9e92a59d46c491298/tests/test_tutorial/test_header_param_models/test_tutorial001.py#L77
|
||||
"tests/test_tutorial/test_header_param_models/test_tutorial001.py::test_header_param_model_invalid"
|
||||
"tests/test_tutorial/test_header_param_models/test_tutorial003.py::test_header_param_model_invalid"
|
||||
"tests/test_tutorial/test_header_param_models/test_tutorial003.py::test_header_param_model_no_underscore"
|
||||
# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6afa196ca0cb1604875847b1b84fa64896a06f6e
|
||||
"tests/test_multipart_installation.py::test_incorrect_multipart_installed_form"
|
||||
"tests/test_multipart_installation.py::test_incorrect_multipart_installed_file_upload"
|
||||
"tests/test_multipart_installation.py::test_incorrect_multipart_installed_file_bytes"
|
||||
"tests/test_multipart_installation.py::test_incorrect_multipart_installed_multi_form"
|
||||
"tests/test_multipart_installation.py::test_incorrect_multipart_installed_form_file"
|
||||
"tests/test_multipart_installation.py::test_no_multipart_installed"
|
||||
"tests/test_multipart_installation.py::test_no_multipart_installed_file"
|
||||
"tests/test_multipart_installation.py::test_no_multipart_installed_file_bytes"
|
||||
"tests/test_multipart_installation.py::test_no_multipart_installed_multi_form"
|
||||
"tests/test_multipart_installation.py::test_no_multipart_installed_form_file"
|
||||
"tests/test_multipart_installation.py::test_old_multipart_installed"
|
||||
# Hangs with network-sandbox
|
||||
"tests/test_tutorial/test_websockets/test_tutorial003_py39.py::test_websocket_handle_disconnection"
|
||||
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
||||
# Dont install fastapi executable as fastapi-cli is supposed to handle it
|
||||
sed -i -e '/\[project.scripts\]/,/^$/d' pyproject.toml || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "commandline interface" dev-python/fastapi-cli
|
||||
optfeature "test client" dev-python/httpx
|
||||
optfeature "templates" dev-python/jinja2
|
||||
optfeature "forms and file uploads" dev-python/python-multipart
|
||||
optfeature "validate emails" dev-python/email-validator
|
||||
optfeature "uvicorn with uvloop" dev-python/uvicorn
|
||||
optfeature "settings management" dev-python/pydantic-settings
|
||||
optfeature "extra Pydantic data types" dev-python/pydantic-extra-types
|
||||
optfeature_header "Alternative JSON responses"
|
||||
optfeature "ORJSONResponse" dev-python/orjson
|
||||
optfeature "UJSONResponse" dev-python/ujson
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
--- a/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py
|
||||
+++ b/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py
|
||||
@@ -14,6 +14,22 @@ def test_endpoint_works():
|
||||
def test_exception_handler_body_access():
|
||||
response = client.post("/", json={"numbers": [1, 2, 3]})
|
||||
assert response.json() == IsDict(
|
||||
+ {
|
||||
+ 'detail': {
|
||||
+ 'body': '{"numbers":[1,2,3]}',
|
||||
+ 'errors': [
|
||||
+ {
|
||||
+ 'input': {'numbers': [1, 2, 3]},
|
||||
+ 'loc': ['body'],
|
||||
+ 'msg': 'Input should be a valid list',
|
||||
+ 'type': 'list_type'
|
||||
+ }
|
||||
+ ]
|
||||
+ }
|
||||
+ }
|
||||
+ ) | IsDict(
|
||||
+ # Pre httpx-0.28.0 json output
|
||||
+ # https://github.com/encode/httpx/pull/3367
|
||||
{
|
||||
"detail": {
|
||||
"errors": [
|
||||
|
||||
Reference in new issue
Block a user