cleanup: Remove expired ports:
2022-06-30 www/py-django-common-helpers: No longer maintained, doesn't work with newer versions of Django 2022-06-30 www/py-django: Was used as a metaport, no longer required 2022-06-30 www/py-django-sudo: Abandoned upstream, not compatible with newer versions of Django 2022-06-30 www/py-django-bootstrap-form: No longer maintained, not compatible with newer versions of Django 2022-06-30 www/py-django-babel: Upstream no longer maintained, please use www/py-enmerkar instead 2022-06-30 www/py-django-bulk-update: No longer maintained, not compatible with newer versions of Django 2022-06-30 www/py-django-happenings-update: Upstream no longer maintained, not compatible with newer versions of Django 2022-06-30 www/py-django-compat: No longer maintained, doesn't work with newer versions of Django 2022-06-30 www/py-django-modern-rpc: Not compatible with newer versions of Django
This commit is contained in:
9
MOVED
9
MOVED
@@ -17368,3 +17368,12 @@ audio/tuxguitar||2022-06-30|Has expired: Depends on expired devel/itext
|
||||
security/ruby-bitwarden||2022-06-30|Has expired: Broken with all supported versions of Ruby
|
||||
mail/rubygem-tmail||2022-06-30|Has expired: Broken with all supported versions of Ruby
|
||||
www/redmine4|www/redmine42|2022-06-30|Has expired: Deprecated by upstream. Please consider using www/redmine42
|
||||
www/py-django-common-helpers||2022-06-30|Has expired: No longer maintained, doesn't work with newer versions of Django
|
||||
www/py-django||2022-06-30|Has expired: Was used as a metaport, no longer required
|
||||
www/py-django-sudo||2022-06-30|Has expired: Abandoned upstream, not compatible with newer versions of Django
|
||||
www/py-django-bootstrap-form||2022-06-30|Has expired: No longer maintained, not compatible with newer versions of Django
|
||||
www/py-django-babel||2022-06-30|Has expired: Upstream no longer maintained, please use www/py-enmerkar instead
|
||||
www/py-django-bulk-update||2022-06-30|Has expired: No longer maintained, not compatible with newer versions of Django
|
||||
www/py-django-happenings-update||2022-06-30|Has expired: Upstream no longer maintained, not compatible with newer versions of Django
|
||||
www/py-django-compat||2022-06-30|Has expired: No longer maintained, doesn't work with newer versions of Django
|
||||
www/py-django-modern-rpc||2022-06-30|Has expired: Not compatible with newer versions of Django
|
||||
|
||||
@@ -1475,7 +1475,6 @@
|
||||
SUBDIR += py-dj40-django-timezone-field
|
||||
SUBDIR += py-dj40-djangorestframework
|
||||
SUBDIR += py-dj40-drf-yasg
|
||||
SUBDIR += py-django
|
||||
SUBDIR += py-django-admin-rangefilter
|
||||
SUBDIR += py-django-advanced-filters
|
||||
SUBDIR += py-django-allauth
|
||||
@@ -1484,22 +1483,17 @@
|
||||
SUBDIR += py-django-assets
|
||||
SUBDIR += py-django-auth-ldap
|
||||
SUBDIR += py-django-autocomplete-light
|
||||
SUBDIR += py-django-babel
|
||||
SUBDIR += py-django-bakery
|
||||
SUBDIR += py-django-bitfield
|
||||
SUBDIR += py-django-bleach
|
||||
SUBDIR += py-django-bootstrap-form
|
||||
SUBDIR += py-django-bootstrap-pagination
|
||||
SUBDIR += py-django-bootstrap3
|
||||
SUBDIR += py-django-bootstrap4
|
||||
SUBDIR += py-django-braces
|
||||
SUBDIR += py-django-bulk-update
|
||||
SUBDIR += py-django-cacheops
|
||||
SUBDIR += py-django-ckeditor-5
|
||||
SUBDIR += py-django-classy-tags
|
||||
SUBDIR += py-django-cms
|
||||
SUBDIR += py-django-common-helpers
|
||||
SUBDIR += py-django-compat
|
||||
SUBDIR += py-django-configurations
|
||||
SUBDIR += py-django-constance
|
||||
SUBDIR += py-django-contact-form
|
||||
@@ -1521,7 +1515,6 @@
|
||||
SUBDIR += py-django-graphiql-debug-toolbar
|
||||
SUBDIR += py-django-gravatar2
|
||||
SUBDIR += py-django-guardian
|
||||
SUBDIR += py-django-happenings-update
|
||||
SUBDIR += py-django-hashid-field
|
||||
SUBDIR += py-django-haystack
|
||||
SUBDIR += py-django-hierarkey
|
||||
@@ -1539,7 +1532,6 @@
|
||||
SUBDIR += py-django-mezzanine-grappelli
|
||||
SUBDIR += py-django-model-utils
|
||||
SUBDIR += py-django-modelcluster
|
||||
SUBDIR += py-django-modern-rpc
|
||||
SUBDIR += py-django-mptt
|
||||
SUBDIR += py-django-netfields
|
||||
SUBDIR += py-django-object-actions
|
||||
@@ -1572,7 +1564,6 @@
|
||||
SUBDIR += py-django-statici18n
|
||||
SUBDIR += py-django-staticinline
|
||||
SUBDIR += py-django-storages
|
||||
SUBDIR += py-django-sudo
|
||||
SUBDIR += py-django-tables2
|
||||
SUBDIR += py-django-tagging
|
||||
SUBDIR += py-django-taggit
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
# Created by: Alexander Nusov <alexander.nusov@nfvexpress.com>
|
||||
|
||||
PORTNAME= django-babel
|
||||
PORTVERSION= 0.6.2
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= ports@FreeBSD.org
|
||||
COMMENT= Utilities for using Babel in django
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
DEPRECATED= Upstream no longer maintained, please use www/py-enmerkar instead
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.8:www/py-django22@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}Babel>=1.3:devel/py-babel@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= autoplist distutils
|
||||
|
||||
NO_ARCH= yes
|
||||
PORTDOCS= *
|
||||
|
||||
OPTIONS_DEFINE= DOCS
|
||||
DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR}
|
||||
DOCS_VARS= PYDISTUTILS_BUILD_TARGET+="build_sphinx -a -E"
|
||||
|
||||
post-install-DOCS-on:
|
||||
${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
(cd ${WRKSRC}/build/sphinx/html && \
|
||||
${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} \
|
||||
"! -name .buildinfo -and ! -name objects.inv")
|
||||
|
||||
do-test:
|
||||
@cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1527449167
|
||||
SHA256 (django-babel-0.6.2.tar.gz) = 1e621b198e1f98ae4f93e43463cf78cbedbace475eb6e0853ba1e2567f3b8119
|
||||
SIZE (django-babel-0.6.2.tar.gz) = 24334
|
||||
@@ -1,3 +0,0 @@
|
||||
Utilities for using Babel in Django
|
||||
|
||||
WWW: https://pypi.org/project/django-babel/
|
||||
@@ -1,23 +0,0 @@
|
||||
# Created by: Alfred Perlstein <alfred@freebsd.org>
|
||||
|
||||
PORTNAME= django-bootstrap-form
|
||||
PORTVERSION= 3.4
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= alfred@FreeBSD.org
|
||||
COMMENT= Bootstrap forms for django
|
||||
|
||||
LICENSE= MIT
|
||||
|
||||
DEPRECATED= No longer maintained, not compatible with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= distutils autoplist
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.5:www/py-django22@${PY_FLAVOR}
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1526739985
|
||||
SHA256 (django-bootstrap-form-3.4.tar.gz) = de3f7893e515352834d446c441c0cb861637f92cebbe59d8229469c6cd3dc640
|
||||
SIZE (django-bootstrap-form-3.4.tar.gz) = 4422
|
||||
@@ -1,6 +0,0 @@
|
||||
Generate twitter-bootstrap form output for django form
|
||||
|
||||
A simple Django template tag to work with twitter bootstrap (
|
||||
http://twitter.github.com/bootstrap/ )
|
||||
|
||||
WWW: https://pypi.org/project/django-bootstrap-form/
|
||||
@@ -1,26 +0,0 @@
|
||||
PORTNAME= django-bulk-update
|
||||
PORTVERSION= 2.2.0
|
||||
PORTREVISION= 6
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= sunpoet@FreeBSD.org
|
||||
COMMENT= Bulk update using a single query over Django ORM
|
||||
|
||||
LICENSE= MIT
|
||||
|
||||
DEPRECATED= No longer maintained, not compatible with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.8:www/py-django22@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= autoplist concurrent distutils
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
post-extract:
|
||||
${RM} ${WRKSRC}/tests/__init__.py # prevent conflict with devel/py-phply in textproc/pootle
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1503148483
|
||||
SHA256 (django-bulk-update-2.2.0.tar.gz) = 5ab7ce8a65eac26d19143cc189c0f041d5c03b9d1b290ca240dc4f3d6aaeb337
|
||||
SIZE (django-bulk-update-2.2.0.tar.gz) = 12699
|
||||
@@ -1,6 +0,0 @@
|
||||
Simple bulk update over Django ORM or with helper function.
|
||||
|
||||
This project aims to bulk update the given objects using a single query
|
||||
over Django ORM.
|
||||
|
||||
WWW: https://github.com/aykut/django-bulk-update
|
||||
@@ -1,24 +0,0 @@
|
||||
PORTNAME= django-common-helpers
|
||||
PORTVERSION= 0.9.2
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= kai@FreeBSD.org
|
||||
COMMENT= Common things every Django app needs
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
DEPRECATED= No longer maintained, doesn't work with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.8:www/py-django22@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= autoplist distutils
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1549629858
|
||||
SHA256 (django-common-helpers-0.9.2.tar.gz) = 2d56be6fa261d829a6a224f189bf276267b9082a17d613fe5f015dd4d65c17b4
|
||||
SIZE (django-common-helpers-0.9.2.tar.gz) = 37792
|
||||
@@ -1,23 +0,0 @@
|
||||
py-django-common-helpers consists of the following things:
|
||||
|
||||
- Middleware that makes sure a web-app runs either on or without "www" in the
|
||||
domain.
|
||||
|
||||
- "SessionManagerBase" base class, that helps in keeping session related code
|
||||
object-oriented and clean.
|
||||
|
||||
- "EmailBackend" for authenticating users based on their email, apart from
|
||||
username.
|
||||
|
||||
- Custom db fields that can be used in models including a "UniqueHashField"
|
||||
and "RandomHashField".
|
||||
|
||||
- Bunch of helpful functions in helper.py
|
||||
|
||||
- "render_form_field" template tag that makes rendering form fields easy
|
||||
and DRY.
|
||||
|
||||
- Couple of dry response classes: "JsonResponse" and "XMLResponse" in the
|
||||
django_common.http that can be used in views that give json/xml responses.
|
||||
|
||||
WWW: https://github.com/tivix/django-common/
|
||||
@@ -1,24 +0,0 @@
|
||||
PORTNAME= django-compat
|
||||
PORTVERSION= 1.0.15
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= ports@caomhin.org
|
||||
COMMENT= For- and backwards compatibility layer for different Django versions
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
DEPRECATED= No longer maintained, doesn't work with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.4:www/py-django22@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= distutils autoplist
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1590387237
|
||||
SHA256 (django-compat-1.0.15.tar.gz) = 3ac9a3bedc56b9365d9eb241bc5157d0c193769bf995f9a78dc1bc24e7c2331b
|
||||
SIZE (django-compat-1.0.15.tar.gz) = 21980
|
||||
@@ -1,9 +0,0 @@
|
||||
Forward and backwards compatibility layer for different Django versions.
|
||||
|
||||
Reasons to use django-compat:
|
||||
|
||||
* Be able to use LTS versions of Django and support newer versions in an app
|
||||
* Use features from newer Django versions in an old one
|
||||
* Manage and master the gap between different framework versions
|
||||
|
||||
WWW: https://github.com/arteria/django-compat
|
||||
@@ -1,27 +0,0 @@
|
||||
# Created by: Kevin Golding <ports@caomhin.org>
|
||||
|
||||
PORTNAME= django-happenings-update
|
||||
PORTVERSION= 0.4.4
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= ports@caomhin.org
|
||||
COMMENT= Event calendar app for Django
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
DEPRECATED= Upstream no longer maintained, not compatible with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.11:www/py-django22@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}six>=1.9<2.0:devel/py-six@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= distutils autoplist
|
||||
|
||||
CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}django-happenings
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1586950326
|
||||
SHA256 (django-happenings-update-0.4.4.tar.gz) = e5716cf0fb1736b63389faf430a0b0fdc3665be230f399ecbbccf7cd81e4bbfe
|
||||
SIZE (django-happenings-update-0.4.4.tar.gz) = 43402
|
||||
@@ -1,15 +0,0 @@
|
||||
A Django application for managing and displaying a calendar and its events.
|
||||
|
||||
This is a forked version from the original repository which supports newer
|
||||
Django versions.
|
||||
|
||||
Features:
|
||||
|
||||
* Repeating and non-repeating events
|
||||
* Events that start and end on different days
|
||||
* Support for cancelled events
|
||||
* Upcoming events and current happenings lists
|
||||
* AJAX support
|
||||
* Default CSS & Javascript to help you get started
|
||||
|
||||
WWW: https://github.com/imposeren/django-happenings
|
||||
@@ -1,24 +0,0 @@
|
||||
# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
|
||||
|
||||
PORTNAME= django-modern-rpc
|
||||
PORTVERSION= 0.12.1
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= sunpoet@FreeBSD.org
|
||||
COMMENT= Simple and modern JSON-RPC/XML-RPC server implementation for Django
|
||||
|
||||
LICENSE= MIT
|
||||
|
||||
DEPRECATED= Not compatible with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=1.8.0:www/py-django22@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= autoplist concurrent distutils
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1592145159
|
||||
SHA256 (django-modern-rpc-0.12.1.tar.gz) = 17a0c0f7c1a4cb74fc78018fdb60f40fdf1e0e383a1a101a84af1b9115a522f5
|
||||
SIZE (django-modern-rpc-0.12.1.tar.gz) = 27314
|
||||
@@ -1,5 +0,0 @@
|
||||
Django-modern-rpc provides a simple solution to implement a remote procedure
|
||||
call (RPC) server as part of your Django project. It supports all major Django
|
||||
and Python versions.
|
||||
|
||||
WWW: https://github.com/alorence/django-modern-rpc
|
||||
@@ -1,25 +0,0 @@
|
||||
# Created by: Tom Judge <tj@FreeBSD.org>
|
||||
|
||||
PORTNAME= django-sudo
|
||||
PORTVERSION= 3.1.0
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= python@FreeBSD.org
|
||||
COMMENT= Sudo mode is an extra layer of security for Django
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
|
||||
DEPRECATED= Abandoned upstream, not compatible with newer versions of Django
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=0:www/py-django22@${PY_FLAVOR}
|
||||
|
||||
USES= python:3.5+
|
||||
USE_PYTHON= distutils autoplist
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,3 +0,0 @@
|
||||
TIMESTAMP = 1580125369
|
||||
SHA256 (django-sudo-3.1.0.tar.gz) = 671c9b819580d35688f2084e3f2cf60ebc1bfee7cbcf07882160ccf3fbb85a67
|
||||
SIZE (django-sudo-3.1.0.tar.gz) = 6876
|
||||
@@ -1,8 +0,0 @@
|
||||
django-sudo provides an extra layer of security for after a user is already
|
||||
logged in. Views can be decorated with @sudo_required, and then a user must
|
||||
re-enter their password to view that page. After verifying their password, that
|
||||
user has elevated permissions for the duration of SUDO_COOKIE_AGE. This
|
||||
duration is independent of the normal session duration allowing short elevated
|
||||
permission durations, but retain long user sessions.
|
||||
|
||||
WWW: https://github.com/mattrobenolt/django-sudo
|
||||
@@ -1,30 +0,0 @@
|
||||
# Created by: Jose Alonso Cardenas Marquez <acardenas@bsd.org.pe>
|
||||
|
||||
PORTNAME= django
|
||||
PORTVERSION= 2.2.13
|
||||
CATEGORIES= www python
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= python@FreeBSD.org
|
||||
COMMENT= High-level Python Web Framework (meta port)
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
|
||||
DEPRECATED= Was used as a metaport, no longer required
|
||||
EXPIRATION_DATE= 2022-06-30
|
||||
|
||||
USES= metaport
|
||||
USE_PYTHON= flavors
|
||||
|
||||
PORTSCOUT= ignore:1
|
||||
|
||||
OPTIONS_DEFAULT= DJANGO22
|
||||
OPTIONS_SINGLE= DJANGO
|
||||
OPTIONS_SINGLE_DJANGO= DJANGO22
|
||||
|
||||
DJANGO22_DESC= Use Django 2.2.x
|
||||
|
||||
DJANGO22_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django22>=0:www/py-django22@${PY_FLAVOR}
|
||||
DJANGO22_USES= python:3.5+,run
|
||||
|
||||
.include <bsd.port.mk>
|
||||
@@ -1,12 +0,0 @@
|
||||
This is a metaport for Django. Do not depend on this port.
|
||||
|
||||
Django is a high-level Python Web framework that encourages rapid development
|
||||
and clean, pragmatic design.
|
||||
|
||||
Developed and used over the past two years by a fast-moving online-news
|
||||
operation, Django was designed from scratch to handle two challenges: the
|
||||
intensive deadlines of a newsroom and the stringent requirements of experienced
|
||||
Web developers. It has convenient niceties for developing content-management
|
||||
systems, but it's an excellent tool for building any Web site.
|
||||
|
||||
WWW: https://www.djangoproject.com/
|
||||
Reference in New Issue
Block a user