git: b4c9bc97bb14 - main - devel/py-asgi-lifespan: New port: Programmatic startup/shutdown of ASGI apps

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sat, 17 Dec 2022 09:14:25 UTC
The branch main has been updated by yuri:

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

commit b4c9bc97bb146574281e704a28988355ab91dafe
Author:     Goran Mekić <meka@tilda.center>
AuthorDate: 2022-12-17 05:41:15 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-12-17 09:14:19 +0000

    devel/py-asgi-lifespan: New port: Programmatic startup/shutdown of ASGI apps
    
    PR:             257334
---
 devel/Makefile                   |  1 +
 devel/py-asgi-lifespan/Makefile  | 26 ++++++++++++++++++++++++++
 devel/py-asgi-lifespan/distinfo  |  3 +++
 devel/py-asgi-lifespan/pkg-descr |  4 ++++
 4 files changed, 34 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index a32a35f80384..4100566303ee 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4165,6 +4165,7 @@
     SUBDIR += py-arpeggio
     SUBDIR += py-arrow
     SUBDIR += py-asciimatics
+    SUBDIR += py-asgi-lifespan
     SUBDIR += py-asn1crypto
     SUBDIR += py-aspy.yaml
     SUBDIR += py-asteval
diff --git a/devel/py-asgi-lifespan/Makefile b/devel/py-asgi-lifespan/Makefile
new file mode 100644
index 000000000000..0cb01642e27a
--- /dev/null
+++ b/devel/py-asgi-lifespan/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	asgi-lifespan
+DISTVERSION=	2.0.0
+CATEGORIES=	devel python
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	meka@tilda.center
+COMMENT=	Programmatic startup/shutdown of ASGI apps
+WWW=		https://github.com/florimondmanca/asgi-lifespan
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sniffio>0:devel/py-sniffio@${PY_FLAVOR}
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pytest-trio>0:devel/py-pytest-trio@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}starlette>0:www/py-starlette@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}trio>0:net/py-trio@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent distutils pytest
+
+TEST_ENV=	PYTHONPATH=${WRKSRC}/src
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-asgi-lifespan/distinfo b/devel/py-asgi-lifespan/distinfo
new file mode 100644
index 000000000000..c55aad4dc0c0
--- /dev/null
+++ b/devel/py-asgi-lifespan/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1671255378
+SHA256 (asgi-lifespan-2.0.0.tar.gz) = d46a31ff681e9edf1f776c9f61cf8fa6274cc66fca8cb4f11e940b1183e18842
+SIZE (asgi-lifespan-2.0.0.tar.gz) = 14804
diff --git a/devel/py-asgi-lifespan/pkg-descr b/devel/py-asgi-lifespan/pkg-descr
new file mode 100644
index 000000000000..0b3e2bdda5fc
--- /dev/null
+++ b/devel/py-asgi-lifespan/pkg-descr
@@ -0,0 +1,4 @@
+Programmatically send startup/shutdown lifespan events into ASGI applications.
+When used in combination with an ASGI-capable HTTP client such as HTTPX, this
+allows mocking or testing ASGI applications without having to spin up an ASGI
+server.