git: ed310eb2d63c - main - devel/py-aiohttp-apispec: New port: build and document REST APIs with aiohttp and apispec

From: Jose Alonso Cardenas Marquez <acm_at_FreeBSD.org>
Date: Wed, 19 Apr 2023 21:11:31 UTC
The branch main has been updated by acm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ed310eb2d63c6d31715ed0edb0782f5c51f5c301

commit ed310eb2d63c6d31715ed0edb0782f5c51f5c301
Author:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
AuthorDate: 2023-04-19 21:10:14 +0000
Commit:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
CommitDate: 2023-04-19 21:10:14 +0000

    devel/py-aiohttp-apispec: New port: build and document REST APIs with aiohttp and apispec
    
    aiohttp-apispec key features:
    
    - docs and request_schema decorators to add swagger spec support out of the box
    - validation_middleware middleware to enable validating with marshmallow
      schemas from those decorators;
    - SwaggerUI support.
    - match_info_schema, querystring_schema, form_schema, json_schema,
      headers_schema and cookies_schema decorators for specific request parts
      validation.
---
 devel/Makefile                     |  1 +
 devel/py-aiohttp-apispec/Makefile  | 22 ++++++++++++++++++++++
 devel/py-aiohttp-apispec/distinfo  |  3 +++
 devel/py-aiohttp-apispec/pkg-descr |  9 +++++++++
 4 files changed, 35 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index da67a548b09e..0d863c5f3427 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4170,6 +4170,7 @@
     SUBDIR += py-aioapns
     SUBDIR += py-aiocontextvars
     SUBDIR += py-aiofiles
+    SUBDIR += py-aiohttp-apispec
     SUBDIR += py-aioice
     SUBDIR += py-aioitertools
     SUBDIR += py-aiologger
diff --git a/devel/py-aiohttp-apispec/Makefile b/devel/py-aiohttp-apispec/Makefile
new file mode 100644
index 000000000000..001ba3f7de38
--- /dev/null
+++ b/devel/py-aiohttp-apispec/Makefile
@@ -0,0 +1,22 @@
+PORTNAME=	aiohttp-apispec
+DISTVERSION=	2.2.3
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	acm@FreeBSD.org
+COMMENT=	build and document REST APIs with aiohttp and apispec
+WWW=		https://github.com/maximdanilchenko/aiohttp-apispec
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiohttp>0:www/py-aiohttp@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}apispec>0:devel/py-apispec@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}webargs>0:www/py-webargs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR}
+
+USES=		python:3.7+
+USE_PYTHON=	autoplist distutils
+
+.include <bsd.port.mk>
diff --git a/devel/py-aiohttp-apispec/distinfo b/devel/py-aiohttp-apispec/distinfo
new file mode 100644
index 000000000000..6ed7215fc6b0
--- /dev/null
+++ b/devel/py-aiohttp-apispec/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1681935757
+SHA256 (aiohttp-apispec-2.2.3.tar.gz) = d70431e5f3ef5c6dc96dc9180ce10ddfd78fa054f178af8259707eb6d421ed05
+SIZE (aiohttp-apispec-2.2.3.tar.gz) = 2653064
diff --git a/devel/py-aiohttp-apispec/pkg-descr b/devel/py-aiohttp-apispec/pkg-descr
new file mode 100644
index 000000000000..31eeaf87cbf5
--- /dev/null
+++ b/devel/py-aiohttp-apispec/pkg-descr
@@ -0,0 +1,9 @@
+aiohttp-apispec key features:
+
+- docs and request_schema decorators to add swagger spec support out of the box
+- validation_middleware middleware to enable validating with marshmallow
+  schemas from those decorators;
+- SwaggerUI support.
+- match_info_schema, querystring_schema, form_schema, json_schema,
+  headers_schema and cookies_schema decorators for specific request parts
+  validation.