[arch-commits] Commit in python-fastapi/repos (2 files)

David Runge dvzrv at gemini.archlinux.org
Tue Jul 12 11:02:24 UTC 2022


    Date: Tuesday, July 12, 2022 @ 11:02:24
  Author: dvzrv
Revision: 1250387

archrelease: copy trunk to community-staging-any

Added:
  python-fastapi/repos/community-staging-any/
  python-fastapi/repos/community-staging-any/PKGBUILD
    (from rev 1250386, python-fastapi/trunk/PKGBUILD)

----------+
 PKGBUILD |   89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 89 insertions(+)

Copied: python-fastapi/repos/community-staging-any/PKGBUILD (from rev 1250386, python-fastapi/trunk/PKGBUILD)
===================================================================
--- community-staging-any/PKGBUILD	                        (rev 0)
+++ community-staging-any/PKGBUILD	2022-07-12 11:02:24 UTC (rev 1250387)
@@ -0,0 +1,89 @@
+# Maintainer: David Runge <dvzrv at archlinux.org>
+# Maintainer: Filipe Laíns (FFY00) <lains at archlinux.org>
+
+_name=fastapi
+pkgname=python-$_name
+pkgver=0.78.0
+pkgrel=1
+pkgdesc='FastAPI framework, high performance, easy to learn, fast to code, ready for production'
+arch=(any)
+url="https://github.com/tiangolo/fastapi"
+license=(MIT)
+depends=(python-pydantic python-starlette)
+optdepends=(
+  'hypercorn: for Hypercorn as ASGI server'
+  'python-email-validator: for email validation'
+  'python-itsdangerous: for SessionMiddleware support'
+  'python-jinja: for default starlette template configuration'
+  'python-orjson: for ORJSONResponse'
+  'python-python-multipart: for form parsing support'
+  'python-pyyaml: for starlette SchemaGenerator support'
+  'python-requests: for TestClient support'
+  'python-ujson: for faster JSON parsing and UJSONResponse'
+  'uvicorn: for Uvicorn as ASGI server'
+)
+makedepends=(python-build python-installer python-flit python-wheel)
+checkdepends=(
+  # test dependencies
+  python-aiosqlite
+  python-anyio
+  python-databases
+  python-flask
+  python-httpx
+  python-peewee
+  python-pytest
+  python-pytest-cov
+  python-sqlalchemy
+  python-trio
+
+  # optdepends
+  python-email-validator
+  python-itsdangerous
+  python-jinja
+  python-orjson
+  python-python-multipart
+  python-pyyaml
+  python-requests
+  python-ujson
+  uvicorn
+
+  # dev depends
+  python-bcrypt
+  python-cryptography
+  python-jose
+  python-passlib
+)
+source=($_name-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz)
+sha512sums=('75def8903b957ab4e3f975ae6c60ad45ef66e0054d649d326f45286e5fe2b5edeb76fd727b8710f71aa68413df2f4398f1af070526594dde8dfe54b1ef516f0c')
+b2sums=('d15e35c8d33eb025dda3de4e6351016ede481cc7bbdd15c2defc966fe4139dacf4a7ca8e1781ac373e7a6e6d1c437b1f650ab7a980f0d4d345beb72726b29a6a')
+
+prepare() {
+  cd $_name-$pkgver
+  # do not pin starlette dependency
+  sed -i 's|starlette.*"|starlette"|' pyproject.toml
+}
+
+build() {
+  cd $_name-$pkgver
+  python -m build --wheel --skip-dependency-check --no-isolation
+}
+
+check() {
+  local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
+  local _deselected=(
+    --deselect docs_src/sql_databases/sql_app_py310/tests/test_sql_app.py::test_create_user
+    --deselect docs_src/sql_databases/sql_app_py39/tests/test_sql_app.py::test_create_user
+  )
+
+  cd $_name-$pkgver
+  # install to temporary location, as importlib is used
+  python -m installer --destdir=test_dir dist/*.whl
+  export PYTHONPATH="test_dir/$_site_packages:$PYTHONPATH"
+  pytest -vv -p no:warnings "${_deselected[@]}"
+}
+
+package() {
+  cd $_name-$pkgver
+  python -m installer --destdir="$pkgdir" dist/*.whl
+  install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
+}



More information about the arch-commits mailing list