aboutsummaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorNeel Chauhan <nc@FreeBSD.org>2021-05-13 21:48:47 +0000
committerNeel Chauhan <nc@FreeBSD.org>2021-05-13 21:49:11 +0000
commit432ac2b0fdaa82f206f2e9f2c0572ebbae95c260 (patch)
tree847977b3bf195a98f8adaa766491e59843e87679 /www
parent65b112f339de41036217d783912dc06c2faf29ab (diff)
downloadports-432ac2b0fdaa82f206f2e9f2c0572ebbae95c260.tar.gz
ports-432ac2b0fdaa82f206f2e9f2c0572ebbae95c260.zip
New port: www/py-fastapi: High-performance Python API Framework
Diffstat (limited to 'www')
-rw-r--r--www/Makefile1
-rw-r--r--www/py-fastapi/Makefile21
-rw-r--r--www/py-fastapi/distinfo3
-rw-r--r--www/py-fastapi/files/patch-setup.py11
-rw-r--r--www/py-fastapi/pkg-descr24
5 files changed, 60 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index 661e68de16bd..01f6ff60a9ee 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -1574,6 +1574,7 @@
SUBDIR += py-enmerkar
SUBDIR += py-fake-useragent
SUBDIR += py-falcon
+ SUBDIR += py-fastapi
SUBDIR += py-feedgenerator
SUBDIR += py-flask
SUBDIR += py-flask-admin
diff --git a/www/py-fastapi/Makefile b/www/py-fastapi/Makefile
new file mode 100644
index 000000000000..101c8c156a8a
--- /dev/null
+++ b/www/py-fastapi/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= fastapi
+PORTVERSION= 0.65.1
+CATEGORIES= www python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= nc@FreeBSD.org
+COMMENT= High-performance Python API Framework
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pydantic>0:devel/py-pydantic@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}starlette>0:www/py-starlette@${PY_FLAVOR}
+
+USES= python:3.6+
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-fastapi/distinfo b/www/py-fastapi/distinfo
new file mode 100644
index 000000000000..53f8e06262ad
--- /dev/null
+++ b/www/py-fastapi/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1620940704
+SHA256 (fastapi-0.65.1.tar.gz) = 478b7e0cbb52c9913b9903d88ae14195cb8a479c4596e0b2f2238d317840a7dc
+SIZE (fastapi-0.65.1.tar.gz) = 5519965
diff --git a/www/py-fastapi/files/patch-setup.py b/www/py-fastapi/files/patch-setup.py
new file mode 100644
index 000000000000..4927af19ca7b
--- /dev/null
+++ b/www/py-fastapi/files/patch-setup.py
@@ -0,0 +1,11 @@
+--- setup.py.orig 1970-01-01 00:00:00 UTC
++++ setup.py
+@@ -15,7 +15,7 @@ package_data = \
+
+ install_requires = \
+ ['starlette ==0.14.2',
+- 'pydantic >=1.6.2,!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0']
++ 'pydantic >=1.6.2,<2.0.0']
+
+ extras_require = \
+ {'all': ['requests >=2.24.0,<3.0.0',
diff --git a/www/py-fastapi/pkg-descr b/www/py-fastapi/pkg-descr
new file mode 100644
index 000000000000..448bb07edb48
--- /dev/null
+++ b/www/py-fastapi/pkg-descr
@@ -0,0 +1,24 @@
+FastAPI is a modern, fast (high-performance), web framework for building APIs
+with Python 3.6+ based on standard Python type hints.
+
+The key features are:
+
+ * Fast: Very high performance, on par with NodeJS and Go.
+
+ * Fast to code: Increase the speed to develop features by about 200% to 300%.
+
+ * Fewer bugs: Reduce about 40% of human (developer) induced errors.
+
+ * Intuitive: Great editor support. Completion everywhere. Less time debugging.
+
+ * Easy: Designed to be easy to use and learn. Less time reading docs.
+
+ * Short: Minimize code duplication. Multiple features from each parameter
+ declaration. Fewer bugs.
+
+ * Robust: Get production-ready code. With automatic interactive documentation.
+
+ * Standards-based: Based on (and fully compatible with) the open standards for
+ APIs: OpenAPI (previously known as Swagger) and JSON Schema.
+
+WWW: https://github.com/tiangolo/fastapi