Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F142563759
D38649.id117485.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
34 KB
Referenced Files
None
Subscribers
None
D38649.id117485.diff
View Options
diff --git a/devel/Makefile b/devel/Makefile
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4512,7 +4512,9 @@
SUBDIR += py-distlib
SUBDIR += py-distributed
SUBDIR += py-dj40-django-rq
+ SUBDIR += py-dj41-django-rq
SUBDIR += py-dj40-graphene-django
+ SUBDIR += py-dj41-graphene-django
SUBDIR += py-django-rq
SUBDIR += py-dockerpty
SUBDIR += py-docopt
diff --git a/devel/py-dj41-django-rq/Makefile b/devel/py-dj41-django-rq/Makefile
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-django-rq/Makefile
@@ -0,0 +1,35 @@
+PORTNAME= django-rq
+PORTVERSION= 2.6.0
+CATEGORIES= devel python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Provides Django integration for RQ (Redis Queue)
+WWW= https://github.com/rq/django-rq
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.0:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}redis>=3:databases/py-redis@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}rq>=1.2:devel/py-rq@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}docutils>=0,1:textproc/py-docutils@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}yaml>=0:devel/py-yaml@${PY_FLAVOR} \
+ redis-server:databases/redis
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+# https://github.com/rq/django-rq/blob/master/Makefile
+do-test:
+ cd ${WRKSRC} && coverage-${PYTHON_VER} run ${LOCALBASE}/bin/django-admin.py test django_rq --settings=django_rq.tests.settings --pythonpath=.
+ cd ${WRKSRC} && ${PYTHON_CMD} setup.py check --metadata --restructuredtext --strict
+
+.include <bsd.port.mk>
diff --git a/devel/py-dj41-django-rq/distinfo b/devel/py-dj41-django-rq/distinfo
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-django-rq/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1668803526
+SHA256 (django-rq-2.6.0.tar.gz) = f03b1eb68afe218175989c14b1266c7b446d5152f629888a078d0022059b255e
+SIZE (django-rq-2.6.0.tar.gz) = 45297
diff --git a/devel/py-dj41-django-rq/pkg-descr b/devel/py-dj41-django-rq/pkg-descr
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-django-rq/pkg-descr
@@ -0,0 +1,3 @@
+Django integration with RQ, a Redis based Python queuing library. Django-RQ is a
+simple app that allows you to configure your queues in django's settings.py and
+easily use them in your project.
diff --git a/devel/py-dj41-graphene-django/Makefile b/devel/py-dj41-graphene-django/Makefile
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-graphene-django/Makefile
@@ -0,0 +1,34 @@
+PORTNAME= graphene-django
+PORTVERSION= 3.0.0
+CATEGORIES= devel python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Graphene Django integration
+WWW= https://github.com/graphql-python/graphene-django
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}graphene>=3.0<4:devel/py-graphene@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}graphql-core>=3.1.0<4:devel/py-graphql-core@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}graphql-relay>=3.1.1<4:devel/py-graphql-relay@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}promise>=2.1:devel/py-promise@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}text-unidecode>=0:converters/py-text-unidecode@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+OPTIONS_DEFINE= REST_FRAMEWORK
+OPTIONS_DEFAULT=REST_FRAMEWORK
+REST_FRAMEWORK_DESC= REST framework support
+
+REST_FRAMEWORK_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj41-djangorestframework>=3.6.3:www/py-dj41-djangorestframework@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/devel/py-dj41-graphene-django/distinfo b/devel/py-dj41-graphene-django/distinfo
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-graphene-django/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1668803621
+SHA256 (graphene-django-3.0.0.tar.gz) = 018a8dc4736d99b5bb4a15d7fd0b46c98010e9201cb52a290f6d1f16ae6fefda
+SIZE (graphene-django-3.0.0.tar.gz) = 77525
diff --git a/devel/py-dj41-graphene-django/files/patch-setup.py b/devel/py-dj41-graphene-django/files/patch-setup.py
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-graphene-django/files/patch-setup.py
@@ -0,0 +1,10 @@
+--- setup.py.orig 2020-12-31 06:55:53 UTC
++++ setup.py
+@@ -68,7 +68,6 @@ setup(
+ "promise>=2.1",
+ "text-unidecode",
+ ],
+- setup_requires=["pytest-runner"],
+ tests_require=tests_require,
+ rest_framework_require=rest_framework_require,
+ extras_require={
diff --git a/devel/py-dj41-graphene-django/pkg-descr b/devel/py-dj41-graphene-django/pkg-descr
new file mode 100644
--- /dev/null
+++ b/devel/py-dj41-graphene-django/pkg-descr
@@ -0,0 +1 @@
+A Django integration for Graphene.
diff --git a/www/Makefile b/www/Makefile
--- a/www/Makefile
+++ b/www/Makefile
@@ -1477,6 +1477,21 @@
SUBDIR += py-dj40-django-timezone-field
SUBDIR += py-dj40-djangorestframework
SUBDIR += py-dj40-drf-yasg
+ SUBDIR += py-dj41-django-auth-ldap
+ SUBDIR += py-dj41-django-cors-headers
+ SUBDIR += py-dj41-django-debug-toolbar
+ SUBDIR += py-dj41-django-filter
+ SUBDIR += py-dj41-django-graphiql-debug-toolbar
+ SUBDIR += py-dj41-django-js-asset
+ SUBDIR += py-dj41-django-mptt
+ SUBDIR += py-dj41-django-prometheus
+ SUBDIR += py-dj41-django-redis
+ SUBDIR += py-dj41-django-rich
+ SUBDIR += py-dj41-django-tables2
+ SUBDIR += py-dj41-django-taggit
+ SUBDIR += py-dj41-django-timezone-field
+ SUBDIR += py-dj41-djangorestframework
+ SUBDIR += py-dj41-drf-yasg
SUBDIR += py-django-admin-rangefilter
SUBDIR += py-django-advanced-filters
SUBDIR += py-django-allauth
diff --git a/www/py-dj41-django-auth-ldap/Makefile b/www/py-dj41-django-auth-ldap/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-auth-ldap/Makefile
@@ -0,0 +1,39 @@
+PORTNAME= django-auth-ldap
+PORTVERSION= 4.1.0
+PORTREVISION= 1
+CATEGORIES= www security python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= LDAP integration for django.contrib.auth
+WWW= https://github.com/django-auth-ldap/django-auth-ldap
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=3.4:devel/py-setuptools_scm@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ldap>=3.1:net/py-ldap@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent pep517
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+PORTDOCS= *
+OPTIONS_DEFINE= DOCS
+DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR}
+
+post-build-DOCS-on:
+ ${LOCALBASE}/bin/sphinx-build-${PYTHON_VER} -d ${WRKDIR} -b html ${WRKSRC}/docs ${WRKSRC}/build/sphinx/html
+
+post-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ (cd ${WRKSRC}/build/sphinx/html && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} \
+ "! -name .buildinfo -and ! -name objects.inv")
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-auth-ldap/distinfo b/www/py-dj41-django-auth-ldap/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-auth-ldap/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1654945388
+SHA256 (django-auth-ldap-4.1.0.tar.gz) = 77f749d3b17807ce8eb56a9c9c8e5746ff316567f81d5ba613495d9c7495a949
+SIZE (django-auth-ldap-4.1.0.tar.gz) = 53254
diff --git a/www/py-dj41-django-auth-ldap/files/patch-docs_conf.py b/www/py-dj41-django-auth-ldap/files/patch-docs_conf.py
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-auth-ldap/files/patch-docs_conf.py
@@ -0,0 +1,20 @@
+Avoid the download of various intersphinx inventories during build. Only two
+intersphinx mappings are used and the documentation can be built/used without
+them.
+
+--- docs/conf.py.orig 2022-06-12 10:26:47 UTC
++++ docs/conf.py
+@@ -188,13 +188,3 @@ texinfo_documents = [
+ # -- Extension configuration -------------------------------------------------
+
+ # -- Options for intersphinx extension ---------------------------------------
+-
+-intersphinx_mapping = {
+- "python": ("https://docs.python.org/3/", None),
+- "django": (
+- "https://docs.djangoproject.com/en/stable/",
+- "https://docs.djangoproject.com/en/stable/_objects/",
+- ),
+- "pythonldap": ("https://www.python-ldap.org/en/latest/", None),
+- "tox": ("https://tox.wiki/en/latest/", None),
+-}
diff --git a/www/py-dj41-django-auth-ldap/pkg-descr b/www/py-dj41-django-auth-ldap/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-auth-ldap/pkg-descr
@@ -0,0 +1,4 @@
+This is a Django authentication backend that authenticates against an LDAP
+service. Configuration can be as simple as a single distinguished name template,
+but there are many rich configuration options for working with users, groups,
+and permissions.
diff --git a/www/py-dj41-django-cors-headers/Makefile b/www/py-dj41-django-cors-headers/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-cors-headers/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= django-cors-headers
+PORTVERSION= 3.13.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Handles server headers required for Cross-Origin Resource Sharing
+WWW= https://github.com/adamchainz/django-cors-headers
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist distutils
+
+NO_ARCH= yes
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-cors-headers/distinfo b/www/py-dj41-django-cors-headers/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-cors-headers/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1655534977
+SHA256 (django-cors-headers-3.13.0.tar.gz) = f9dc6b4e3f611c3199700b3e5f3398c28757dcd559c2f82932687f3d0443cfdf
+SIZE (django-cors-headers-3.13.0.tar.gz) = 20995
diff --git a/www/py-dj41-django-cors-headers/pkg-descr b/www/py-dj41-django-cors-headers/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-cors-headers/pkg-descr
@@ -0,0 +1,2 @@
+A Django App that adds CORS (Cross-Origin Resource Sharing) headers to
+responses.
diff --git a/www/py-dj41-django-debug-toolbar/Makefile b/www/py-dj41-django-debug-toolbar/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-debug-toolbar/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= django-debug-toolbar
+PORTVERSION= 3.7.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Configurable set of panels to display debug information
+WWW= https://github.com/jazzband/django-debug-toolbar
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2.4:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}sqlparse>=0.2.0:databases/py-sqlparse@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-debug-toolbar/distinfo b/www/py-dj41-django-debug-toolbar/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-debug-toolbar/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1664768004
+SHA256 (django-debug-toolbar-3.7.0.tar.gz) = 1e3acad24e3d351ba45c6fa2072e4164820307332a776b16c9f06d1f89503465
+SIZE (django-debug-toolbar-3.7.0.tar.gz) = 133244
diff --git a/www/py-dj41-django-debug-toolbar/pkg-descr b/www/py-dj41-django-debug-toolbar/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-debug-toolbar/pkg-descr
@@ -0,0 +1,3 @@
+The Django Debug Toolbar is a configurable set of panels that display various
+debug information about the current request/response and when clicked, display
+more details about the panel's content.
diff --git a/www/py-dj41-django-filter/Makefile b/www/py-dj41-django-filter/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-filter/Makefile
@@ -0,0 +1,23 @@
+PORTNAME= django-filter
+DISTVERSION= 22.1
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Dynamic filtering for querysets with Django
+WWW= https://github.com/carltongibson/django-filter
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-filter/distinfo b/www/py-dj41-django-filter/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-filter/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1655739412
+SHA256 (django-filter-22.1.tar.gz) = ed473b76e84f7e83b2511bb2050c3efb36d135207d0128dfe3ae4b36e3594ba5
+SIZE (django-filter-22.1.tar.gz) = 134811
diff --git a/www/py-dj41-django-filter/pkg-descr b/www/py-dj41-django-filter/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-filter/pkg-descr
@@ -0,0 +1,2 @@
+Django-filter is a reusable Django application allowing users to declaratively
+add dynamic QuerySet filtering from URL parameters.
diff --git a/www/py-dj41-django-graphiql-debug-toolbar/Makefile b/www/py-dj41-django-graphiql-debug-toolbar/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-graphiql-debug-toolbar/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= django-graphiql-debug-toolbar
+DISTVERSION= 0.2.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Django Debug Toolbar for GraphiQL IDE
+WWW= https://github.com/flavors/django-graphiql-debug-toolbar
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj41-graphene-django>=2.0.0:devel/py-dj41-graphene-django@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj41-django-debug-toolbar>=3.1:www/py-dj41-django-debug-toolbar@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-graphiql-debug-toolbar/distinfo b/www/py-dj41-django-graphiql-debug-toolbar/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-graphiql-debug-toolbar/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1630337959
+SHA256 (django-graphiql-debug-toolbar-0.2.0.tar.gz) = aec7a9e096594123d9fc359a583da794a0020b5391d941dda584ce1e667e0afd
+SIZE (django-graphiql-debug-toolbar-0.2.0.tar.gz) = 5000
diff --git a/www/py-dj41-django-graphiql-debug-toolbar/pkg-descr b/www/py-dj41-django-graphiql-debug-toolbar/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-graphiql-debug-toolbar/pkg-descr
@@ -0,0 +1,2 @@
+This package is an extension for Django Debug Toolbar which enables support
+for debugging GraphiQL queries in Django Projects.
diff --git a/www/py-dj41-django-js-asset/Makefile b/www/py-dj41-django-js-asset/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-js-asset/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= django-js-asset
+DISTVERSION= 2.0.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+DISTNAME= django_js_asset-${DISTVERSION}
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Insert script tags with additional attributes for django.forms.Media
+WWW= https://github.com/matthiask/django-js-asset
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-js-asset/distinfo b/www/py-dj41-django-js-asset/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-js-asset/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1647897596
+SHA256 (django_js_asset-2.0.0.tar.gz) = adc1ee1efa853fad42054b540c02205344bb406c9bddf87c9e5377a41b7db90f
+SIZE (django_js_asset-2.0.0.tar.gz) = 4592
diff --git a/www/py-dj41-django-js-asset/pkg-descr b/www/py-dj41-django-js-asset/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-js-asset/pkg-descr
@@ -0,0 +1,2 @@
+Insert script tags with additional attributes (such as "id" and "data" for
+CSP-compatible data injection) for the django.forms.Media package.
diff --git a/www/py-dj41-django-mptt/Makefile b/www/py-dj41-django-mptt/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-mptt/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= django-mptt
+PORTVERSION= 0.14.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Utilities for implementing Modified Preorder Tree Traversal in Django
+WWW= https://github.com/django-mptt/django-mptt
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR}\
+ ${PYTHON_PKGNAMEPREFIX}dj41-django-js-asset>0:www/py-dj41-django-js-asset@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-mptt/distinfo b/www/py-dj41-django-mptt/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-mptt/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1665308477
+SHA256 (django-mptt-0.14.0.tar.gz) = 2c92a2b1614c53086278795ccf50580cf1f9b8564f3ff03055dd62bab5987711
+SIZE (django-mptt-0.14.0.tar.gz) = 103453
diff --git a/www/py-dj41-django-mptt/pkg-descr b/www/py-dj41-django-mptt/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-mptt/pkg-descr
@@ -0,0 +1,2 @@
+Utilities for implementing Modified Preorder Tree Traversal with your Django
+Models and working with trees of Model instances.
diff --git a/www/py-dj41-django-prometheus/Makefile b/www/py-dj41-django-prometheus/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-prometheus/Makefile
@@ -0,0 +1,35 @@
+PORTNAME= django-prometheus
+PORTVERSION= 2.2.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Export Django monitoring metrics for Prometheus.io
+WWW= https://github.com/korfuri/django-prometheus
+
+LICENSE= APACHE20
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-runner>0:devel/py-pytest-runner@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}prometheus-client>=0.7:net-mgmt/py-prometheus-client@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+OPTIONS_GROUP= DATABASE CACHE
+OPTIONS_GROUP_CACHE= MEMCACHED REDIS
+OPTIONS_GROUP_DATABASE= MYSQL PGSQL
+
+MEMCACHED_DESC= Memcached distributed memory caching support
+
+MEMCACHED_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-memcached>=0:databases/py-python-memcached@${PY_FLAVOR}
+MYSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR}
+PGSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psycopg2>=0:databases/py-psycopg2@${PY_FLAVOR}
+REDIS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj41-django-redis>=4.8:www/py-dj41-django-redis@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-prometheus/distinfo b/www/py-dj41-django-prometheus/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-prometheus/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1641495767
+SHA256 (django-prometheus-2.2.0.tar.gz) = 240378a1307c408bd5fc85614a3a57f1ce633d4a222c9e291e2bbf325173b801
+SIZE (django-prometheus-2.2.0.tar.gz) = 24995
diff --git a/www/py-dj41-django-prometheus/pkg-descr b/www/py-dj41-django-prometheus/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-prometheus/pkg-descr
@@ -0,0 +1,14 @@
+This library exports Django monitoring metrics for Prometheus.io.
+
+It provides support to monitor the following databases types:
+
+* SQLite (via Django)
+* PostgreSQL
+* MySQL
+
+In addition, caches can also be monitored:
+
+* memcached
+* Redis
+
+It's even possible to export metrics of Django models and migrations.
diff --git a/www/py-dj41-django-redis/Makefile b/www/py-dj41-django-redis/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-redis/Makefile
@@ -0,0 +1,30 @@
+PORTNAME= django-redis
+PORTVERSION= 5.2.0
+CATEGORIES= www databases python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Full featured Redis cache/session backend for Django
+WWW= https://github.com/jazzband/django-redis
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}redis>=3<4:databases/py-redis@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hiredis>=0:databases/py-hiredis@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+do-test:
+ @cd ${WRKSRC}/tests && ${PYTHON_CMD} runtests.py
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-redis/distinfo b/www/py-dj41-django-redis/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-redis/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1641046018
+SHA256 (django-redis-5.2.0.tar.gz) = 8a99e5582c79f894168f5865c52bd921213253b7fd64d16733ae4591564465de
+SIZE (django-redis-5.2.0.tar.gz) = 44132
diff --git a/www/py-dj41-django-redis/pkg-descr b/www/py-dj41-django-redis/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-redis/pkg-descr
@@ -0,0 +1,15 @@
+Django-redis is a BSD Licensed, full featured Redis cache/session
+backend for Django.
+
+Why use django-redis?
+
+ * Modular client system (pluggable clients).
+ * Master-Slave support in the default client.
+ * Used in production in several projects as cache and session storage.
+ * Supports infinite timeouts.
+ * Python 3 support in same code base.
+ * Facilities for raw access to Redis client/connection pool.
+ * Highly configurable (can emulate memcached exception behavior, for
+ example).
+ * Unix sockets supported by default.
+ * Pluggable parsers.
diff --git a/www/py-dj41-django-rich/Makefile b/www/py-dj41-django-rich/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-rich/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= django-rich
+PORTVERSION= 1.4.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Extensions for using Rich with Django
+WWW= https://github.com/adamchainz/django-rich
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}rich>=10.0.0:textproc/py-rich@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-rich/distinfo b/www/py-dj41-django-rich/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-rich/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1657859577
+SHA256 (django-rich-1.4.0.tar.gz) = 10a5d9e9b62228b683d51584e4c2a5aa9f838176364a90c8cd79688aadca9f4c
+SIZE (django-rich-1.4.0.tar.gz) = 58751
diff --git a/www/py-dj41-django-rich/pkg-descr b/www/py-dj41-django-rich/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-rich/pkg-descr
@@ -0,0 +1,11 @@
+This package provides Extensions for using Rich with the Django framework.
+
+These extensions consist of the following subclasses:
+
+* django_rich.management.RichCommand:
+ Subclass of Django’s BaseCommand class that sets its self.console to a
+ Rich Console.
+
+* django_rich.test.RichRunner:
+ Subclass of Django's DiscoverRunner with colourized outputs and nice
+ traceback rendering.
diff --git a/www/py-dj41-django-tables2/Makefile b/www/py-dj41-django-tables2/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-tables2/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= django-tables2
+DISTVERSION= 2.5.1
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Table/data-grid framework for Django
+WWW= https://github.com/jieter/django-tables2
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+OPTIONS_DEFINE= TABLIB
+
+TABLIB_DESC= Enable support for exporting table datasets
+TABLIB_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tablib>=0:textproc/py-tablib@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-tables2/distinfo b/www/py-dj41-django-tables2/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-tables2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1676209249
+SHA256 (django-tables2-2.5.1.tar.gz) = 25ed2c28d3508558a4246a255c381784b20b439ef175e3954a103ffbc3a63757
+SIZE (django-tables2-2.5.1.tar.gz) = 79066
diff --git a/www/py-dj41-django-tables2/pkg-descr b/www/py-dj41-django-tables2/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-tables2/pkg-descr
@@ -0,0 +1,3 @@
+django-tables2 simplifies the task of turning sets of data into HTML tables.
+It has native support for pagination and sorting, does for HTML tables what
+django.forms does for HTML forms.
diff --git a/www/py-dj41-django-taggit/Makefile b/www/py-dj41-django-taggit/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-taggit/Makefile
@@ -0,0 +1,27 @@
+PORTNAME= django-taggit
+PORTVERSION= 3.1.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Reusable Django application for simple tagging
+WWW= https://github.com/jazzband/django-taggit
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.2:www/py-django41@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj41-djangorestframework>0:www/py-dj41-djangorestframework@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= autoplist distutils
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+do-test:
+ @cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m django test --settings=tests.settings -v3
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-django-taggit/distinfo b/www/py-dj41-django-taggit/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-taggit/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1669844361
+SHA256 (django-taggit-3.1.0.tar.gz) = c8f2e4eae387939089b3d75d1d8649e008880970c068ce9d0e82f87fd5e29508
+SIZE (django-taggit-3.1.0.tar.gz) = 58238
diff --git a/www/py-dj41-django-taggit/pkg-descr b/www/py-dj41-django-taggit/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-taggit/pkg-descr
@@ -0,0 +1 @@
+django-taggit a simpler approach to tagging with Django.
diff --git a/www/py-dj41-django-timezone-field/Makefile b/www/py-dj41-django-timezone-field/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-timezone-field/Makefile
@@ -0,0 +1,31 @@
+PORTNAME= django-timezone-field
+DISTVERSION= 5.0
+PORTREVISION= 1
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Provides database and form fields for pytz timezone objects for Django
+WWW= https://github.com/mfogel/django-timezone-field
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+.include <bsd.port.pre.mk>
+
+.if ${PYTHON_REL} < 30900
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}backports.zoneinfo>=0.2.1<0.3.0:devel/py-backports.zoneinfo@${PY_FLAVOR}
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/www/py-dj41-django-timezone-field/distinfo b/www/py-dj41-django-timezone-field/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-timezone-field/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1645108464
+SHA256 (django-timezone-field-5.0.tar.gz) = 15746ed367a5a32eda76cfa2886eeec1de8cda79f519b7c5e12f87ed7cdbd663
+SIZE (django-timezone-field-5.0.tar.gz) = 11838
diff --git a/www/py-dj41-django-timezone-field/files/patch-timezone__field_fields.py b/www/py-dj41-django-timezone-field/files/patch-timezone__field_fields.py
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-timezone-field/files/patch-timezone__field_fields.py
@@ -0,0 +1,27 @@
+From 0257f2e9c7c488e8a859ee924c93d9f38afa4dc7 Mon Sep 17 00:00:00 2001
+From: jeremystretch <jstretch@ns1.com>
+Date: Fri, 12 Aug 2022 10:03:27 -0400
+Subject: [PATCH] Fixes #94: Catch ZoneInfoNotFoundError exception when
+ populating timezones
+
+Obtained from:
+
+https://github.com/mfogel/django-timezone-field/commit/0257f2e9c7c488e8a859ee924c93d9f38afa4dc7
+
+--- timezone_field/fields.py.orig 2022-02-09 04:42:10 UTC
++++ timezone_field/fields.py
+@@ -38,7 +38,13 @@ class TimeZoneField(models.Field):
+ # existing migration files will need to be accomodated.
+ default_max_length = 63
+ default_pytz_tzs = [pytz.timezone(tz) for tz in pytz.common_timezones]
+- default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones]
++ default_zoneinfo_tzs = []
++ for tz in pytz.common_timezones:
++ try:
++ default_zoneinfo_tzs.append(ZoneInfo(tz))
++ except ZoneInfoNotFoundError:
++ # ZoneInfo does not yet exist for this timezone
++ pass
+
+ def __init__(self, *args, **kwargs):
+ # allow some use of positional args up until the args we customize
diff --git a/www/py-dj41-django-timezone-field/pkg-descr b/www/py-dj41-django-timezone-field/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-django-timezone-field/pkg-descr
@@ -0,0 +1 @@
+Provides database and form fields for pytz timezone objects for Django.
diff --git a/www/py-dj41-djangorestframework/Makefile b/www/py-dj41-djangorestframework/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-djangorestframework/Makefile
@@ -0,0 +1,23 @@
+PORTNAME= djangorestframework
+PORTVERSION= 3.14.0
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Django REST framework
+WWW= https://www.django-rest-framework.org/
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE.md
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=3.0:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-djangorestframework/distinfo b/www/py-dj41-djangorestframework/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-djangorestframework/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1665309069
+SHA256 (djangorestframework-3.14.0.tar.gz) = 579a333e6256b09489cbe0a067e66abe55c6595d8926be6b99423786334350c8
+SIZE (djangorestframework-3.14.0.tar.gz) = 1055343
diff --git a/www/py-dj41-djangorestframework/pkg-descr b/www/py-dj41-djangorestframework/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-djangorestframework/pkg-descr
@@ -0,0 +1,2 @@
+Django REST framework is a powerful and flexible toolkit that makes
+it easy to build Web APIs.
diff --git a/www/py-dj41-drf-yasg/Makefile b/www/py-dj41-drf-yasg/Makefile
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-drf-yasg/Makefile
@@ -0,0 +1,38 @@
+PORTNAME= drf-yasg
+DISTVERSION= 1.21.4
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj41-
+
+MAINTAINER= kai@FreeBSD.org
+COMMENT= Yet Another Swagger Generator
+WWW= https://github.com/axnsan12/drf-yasg
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE.rst
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=3.0.6:devel/py-setuptools_scm@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=2.2.16:www/py-django41@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj41-djangorestframework>=3.10.3:www/py-dj41-djangorestframework@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}coreapi>=2.3.3:devel/py-coreapi@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}coreschema>=0.0.4:devel/py-coreschema@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}inflection>=0.3.1:devel/py-inflection@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml>=0.16.13:devel/py-ruamel.yaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytz>=2021.1:devel/py-pytz@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}uritemplate>=3.0.0:net/py-uritemplate@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}packaging>=21.0:devel/py-packaging@${PY_FLAVOR}
+
+USES= python:3.8+
+USE_PYTHON= distutils autoplist
+
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME}
+
+NO_ARCH= yes
+
+OPTIONS_DEFINE= VALIDATION
+OPTIONS_DEFAULT= VALIDATION
+
+VALIDATION_DESC= Enable built-in OpenAPI validation mechanisms
+VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}swagger-spec-validator>=2.1.0:devel/py-swagger-spec-validator@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/www/py-dj41-drf-yasg/distinfo b/www/py-dj41-drf-yasg/distinfo
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-drf-yasg/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1665308834
+SHA256 (drf-yasg-1.21.4.tar.gz) = 887c9f79e64f46aa48974234e61029b1bea6b12ea628a8fc8a3697589add1d3e
+SIZE (drf-yasg-1.21.4.tar.gz) = 6676926
diff --git a/www/py-dj41-drf-yasg/pkg-descr b/www/py-dj41-drf-yasg/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/py-dj41-drf-yasg/pkg-descr
@@ -0,0 +1,18 @@
+Generate real Swagger/OpenAPI 2.0 specifications from a Django Rest
+Framework API.
+
+Features:
+
+- full support for nested serializers and schemas
+- response schemas and descriptions
+- model definitions compatible with codegen tools
+- customization hooks at all points in the spec generation process
+- JSON and YAML format for spec
+- bundles latest version of swagger-ui and redoc for viewing the generated
+ documentation
+- schema view is cacheable out of the box
+- generated Swagger schema can be automatically validated by
+ swagger-spec-validator or flex
+- supports Django REST Framework API versioning with URLPathVersioning
+ and NamespaceVersioning (other DRF or custom versioning schemes are
+ not currently supported)
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Jan 22, 1:26 AM (7 m, 1 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27825895
Default Alt Text
D38649.id117485.diff (34 KB)
Attached To
Mode
D38649: net-mgmt/netbox: Create Django 4.1 consumers
Attached
Detach File
Event Timeline
Log In to Comment