git: 311edf3c6567 - 2024Q4 - www/py-dj50-channels: New port

From: Kai Knoblich <kai_at_FreeBSD.org>
Date: Sun, 15 Dec 2024 11:03:35 UTC
The branch 2024Q4 has been updated by kai:

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

commit 311edf3c656730e185745743c0f51d64f30de3e4
Author:     James TD Smith <ahktenzero+freebsd@mohorovi.cc>
AuthorDate: 2024-12-14 16:51:20 +0000
Commit:     Kai Knoblich <kai@FreeBSD.org>
CommitDate: 2024-12-15 10:14:24 +0000

    www/py-dj50-channels: New port
    
    Channels augments Django to bring WebSocket, long-poll HTTP, task
    offloading and other async support to your code, using familiar Django
    design patterns and a flexible underlying framework that lets you not
    only customize behaviours but also write support for your own protocols
    and needs.
    
    Happy to pass this port to its maintainer who already maintain the
    Django 4.2 variant of it.
    
    Co-authored-by: Kai Knoblich <kai@FreeBSD.org>
    PR:             283044, 283045 [1]
    Reported by:    James TD Smith
    MFH:            2024Q4 (required to fix [1])
    
    (cherry picked from commit 6e0d3b5fc73fd05df664b07c8b1ab3a8aa41c9e3)
---
 www/Makefile                   |  1 +
 www/py-dj50-channels/Makefile  | 27 +++++++++++++++++++++++++++
 www/py-dj50-channels/distinfo  |  3 +++
 www/py-dj50-channels/pkg-descr |  4 ++++
 4 files changed, 35 insertions(+)

diff --git a/www/Makefile b/www/Makefile
index 3d7321abc1c0..4850ec03fd29 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -1491,6 +1491,7 @@
     SUBDIR += py-cssutils
     SUBDIR += py-daphne
     SUBDIR += py-dj-database-url
+    SUBDIR += py-dj50-channels
     SUBDIR += py-dj50-django-auth-ldap
     SUBDIR += py-dj50-django-choices-field
     SUBDIR += py-dj50-django-cors-headers
diff --git a/www/py-dj50-channels/Makefile b/www/py-dj50-channels/Makefile
new file mode 100644
index 000000000000..91b5259f6186
--- /dev/null
+++ b/www/py-dj50-channels/Makefile
@@ -0,0 +1,27 @@
+PORTNAME=	channels
+PORTVERSION=	4.2.0
+CATEGORIES=	www python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}dj50-
+
+MAINTAINER=	kai@FreeBSD.org
+COMMENT=	Brings async, event-driven capabilities to Django
+WWW=		https://channels.readthedocs.io/en/latest/ \
+		https://github.com/django/channels
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}asgiref>=3.6.0<4:www/py-asgiref@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}django50>=4.2:www/py-django50@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent pep517
+
+CONFLICTS_INSTALL=	${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj50-channels/distinfo b/www/py-dj50-channels/distinfo
new file mode 100644
index 000000000000..cfa8d2a5103d
--- /dev/null
+++ b/www/py-dj50-channels/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1732202562
+SHA256 (channels-4.2.0.tar.gz) = d9e707487431ba5dbce9af982970dab3b0efd786580fadb99e45dca5e39fdd59
+SIZE (channels-4.2.0.tar.gz) = 26554
diff --git a/www/py-dj50-channels/pkg-descr b/www/py-dj50-channels/pkg-descr
new file mode 100644
index 000000000000..01296180bc27
--- /dev/null
+++ b/www/py-dj50-channels/pkg-descr
@@ -0,0 +1,4 @@
+Channels augments Django to bring WebSocket, long-poll HTTP, task offloading and
+other async support to your code, using familiar Django design patterns and a
+flexible underlying framework that lets you not only customize behaviours but
+also write support for your own protocols and needs.