From 07251a0543600765e16e9f767d52e28a11768600 Mon Sep 17 00:00:00 2001 From: Jeffery To Date: Wed, 5 Feb 2020 19:13:45 +0800 Subject: [PATCH] django1: Add python3-django1 package This adds a Python 3 version of the django1 package. This also adds a python-django1-common package that contains a django-admin script based on the one in Debian[1]. This allows python-django1 and python3-django1 to be installed at the same time. python3-django conflicts with python-django1 (via python-django1-common) and python3-django1. This also updates older Python 3 Django plugin packages to depend on python3-django1, and newer plugin packages to depend on "django", which both python3-django and python3-django1 provide. Because of this dependency on either version of Django, the MDEPENDS for Python 3 Django plugin packages no longer functions correctly and has been removed. [1]: https://salsa.debian.org/python-team/modules/python-django/blob/debian/buster/debian/django-admin Signed-off-by: Jeffery To --- lang/python/django-appconf/Makefile | 5 +- lang/python/django-compressor/Makefile | 5 +- lang/python/django-constance/Makefile | 5 +- lang/python/django-formtools/Makefile | 5 +- lang/python/django-jsonfield/Makefile | 5 +- lang/python/django-picklefield/Makefile | 5 +- lang/python/django-postoffice/Makefile | 5 +- lang/python/django-ranged-response/Makefile | 5 +- lang/python/django-restframework/Makefile | 5 +- lang/python/django-restframework39/Makefile | 3 +- lang/python/django-simple-captcha/Makefile | 5 +- lang/python/django-statici18n/Makefile | 5 +- lang/python/django-webpack-loader/Makefile | 5 +- lang/python/django/Makefile | 11 ++-- lang/python/django1/Makefile | 54 +++++++++++++++---- lang/python/django1/files/django-admin | 23 ++++++++ .../python3-django-cors-headers/Makefile | 5 +- .../python3-django-etesync-journal/Makefile | 5 +- .../python3-drf-nested-routers/Makefile | 4 +- 19 files changed, 103 insertions(+), 62 deletions(-) create mode 100644 lang/python/django1/files/django-admin diff --git a/lang/python/django-appconf/Makefile b/lang/python/django-appconf/Makefile index 78863cc81..1a86fa63d 100644 --- a/lang/python/django-appconf/Makefile +++ b/lang/python/django-appconf/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-appconf PKG_VERSION:=1.0.2 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=6a4d9aea683b4c224d97ab8ee11ad2d29a37072c0c6c509896dd9857466fb261 @@ -48,9 +48,8 @@ define Package/python3-django-appconf $(call Package/django-appconf/Default) DEPENDS:= \ +PACKAGE_python3-django-appconf:python3 \ - python3-django + +PACKAGE_python3-django-appconf:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-appconf/description diff --git a/lang/python/django-compressor/Makefile b/lang/python/django-compressor/Makefile index fa7dd215b..0c277d362 100644 --- a/lang/python/django-compressor/Makefile +++ b/lang/python/django-compressor/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-compressor PKG_VERSION:=2.2 -PKG_RELEASE:=6 +PKG_RELEASE:=7 PYPI_NAME:=$(PKG_NAME) PYPI_SOURCE_NAME:=django_compressor @@ -54,11 +54,10 @@ define Package/python3-django-compressor $(call Package/django-compressor/Default) DEPENDS:= \ +PACKAGE_python3-django-compressor:python3 \ - python3-django \ + +PACKAGE_python3-django-compressor:python3-django1 \ +PACKAGE_python3-django-compressor:python3-django-appconf \ +PACKAGE_python3-django-compressor:python3-rcssmin VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-compressor/description diff --git a/lang/python/django-constance/Makefile b/lang/python/django-constance/Makefile index f0c3fcdfe..1332c44dc 100644 --- a/lang/python/django-constance/Makefile +++ b/lang/python/django-constance/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-constance PKG_VERSION:=2.3.1 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=a49735063b2c30015d2e52a90609ea9798da722ed070f091de51714758a5d018 @@ -47,9 +47,8 @@ define Package/python3-django-constance $(call Package/python-django-constance/Default) DEPENDS:= \ +PACKAGE_python3-django-constance:python3 \ - python3-django + +PACKAGE_python3-django-constance:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-constance/description diff --git a/lang/python/django-formtools/Makefile b/lang/python/django-formtools/Makefile index cf15742c4..c391da958 100644 --- a/lang/python/django-formtools/Makefile +++ b/lang/python/django-formtools/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-formtools PKG_VERSION:=2.1 -PKG_RELEASE:=6 +PKG_RELEASE:=7 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=7703793f1675aa6e871f9fed147e8563816d7a5b9affdc5e3459899596217f7c @@ -47,9 +47,8 @@ define Package/python3-django-formtools $(call Package/django-formtools/Default) DEPENDS:= \ +PACKAGE_python3-django-formtools:python3 \ - python3-django + +PACKAGE_python3-django-formtools:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-formtools/description diff --git a/lang/python/django-jsonfield/Makefile b/lang/python/django-jsonfield/Makefile index c10eae0e2..305ab6f68 100644 --- a/lang/python/django-jsonfield/Makefile +++ b/lang/python/django-jsonfield/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-jsonfield PKG_VERSION:=1.0.1 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=6c0afd5554739365b55d86e285cf966cc3a45682fff963463364ea1f6511ca3e @@ -48,9 +48,8 @@ define Package/python3-django-jsonfield $(call Package/django-jsonfield/Default) DEPENDS:= \ +PACKAGE_python3-django-jsonfield:python3 \ - python3-django + +PACKAGE_python3-django-jsonfield:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-jsonfield/description diff --git a/lang/python/django-picklefield/Makefile b/lang/python/django-picklefield/Makefile index 5e707c67d..6e4d6805f 100644 --- a/lang/python/django-picklefield/Makefile +++ b/lang/python/django-picklefield/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-picklefield PKG_VERSION:=1.1.0 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=ce7fee5c6558fe5dc8924993d994ccde75bb75b91cd82787cbd4c92b95a69f9c @@ -48,9 +48,8 @@ define Package/python3-django-picklefield $(call Package/django-picklefield/Default) DEPENDS:= \ +PACKAGE_python3-django-picklefield:python3 \ - python3-django + +PACKAGE_python3-django-picklefield:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-picklefield/description diff --git a/lang/python/django-postoffice/Makefile b/lang/python/django-postoffice/Makefile index 6e86e2f3b..7cfa82ce4 100644 --- a/lang/python/django-postoffice/Makefile +++ b/lang/python/django-postoffice/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-postoffice PKG_VERSION:=3.1.0 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PYPI_NAME:=django-post-office PYPI_SOURCE_NAME:=django-post_office @@ -51,10 +51,9 @@ define Package/python3-django-postoffice $(call Package/django-postoffice/Default) DEPENDS:= \ +PACKAGE_python3-django-postoffice:python3 \ - python3-django \ + +PACKAGE_python3-django-postoffice:python3-django1 \ +PACKAGE_python3-django-postoffice:python3-django-jsonfield VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-postoffice/description diff --git a/lang/python/django-ranged-response/Makefile b/lang/python/django-ranged-response/Makefile index 6c9bb9abc..62f91a317 100644 --- a/lang/python/django-ranged-response/Makefile +++ b/lang/python/django-ranged-response/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-ranged-response PKG_VERSION:=0.2.0 -PKG_RELEASE:=6 +PKG_RELEASE:=7 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=f71fff352a37316b9bead717fc76e4ddd6c9b99c4680cdf4783b9755af1cf985 @@ -46,9 +46,8 @@ define Package/python3-django-ranged-response $(call Package/django-ranged-response/Default) DEPENDS:= \ +PACKAGE_python3-django-ranged-response:python3 \ - python3-django + +PACKAGE_python3-django-ranged-response:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-ranged-response/description diff --git a/lang/python/django-restframework/Makefile b/lang/python/django-restframework/Makefile index f9fdbd331..f18b8811b 100644 --- a/lang/python/django-restframework/Makefile +++ b/lang/python/django-restframework/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-restframework PKG_VERSION:=3.11.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=djangorestframework PKG_HASH:=e782087823c47a26826ee5b6fa0c542968219263fb3976ec3c31edab23a4001f @@ -28,9 +28,8 @@ define Package/python3-django-restframework CATEGORY:=Languages TITLE:=Web APIs for Django, made easy. URL:=https://www.django-rest-framework.org - DEPENDS:=+python3 python3-django + DEPENDS:=+python3 +django VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-restframework/description diff --git a/lang/python/django-restframework39/Makefile b/lang/python/django-restframework39/Makefile index 079c42e19..5cdb76bfc 100644 --- a/lang/python/django-restframework39/Makefile +++ b/lang/python/django-restframework39/Makefile @@ -48,10 +48,9 @@ define Package/python3-django-restframework39 $(call Package/django-restframework39/Default) DEPENDS:= \ +PACKAGE_python3-django-restframework39:python3 \ - python3-django + +PACKAGE_python3-django-restframework39:python3-django1 CONFLICTS:=python3-django-restframework VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-restframework39/description diff --git a/lang/python/django-simple-captcha/Makefile b/lang/python/django-simple-captcha/Makefile index fd493147c..a4431aa5f 100644 --- a/lang/python/django-simple-captcha/Makefile +++ b/lang/python/django-simple-captcha/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-simple-captcha PKG_VERSION:=0.5.12 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/mbi/django-simple-captcha/tar.gz/v$(PKG_VERSION)? @@ -57,11 +57,10 @@ $(call Package/django-simple-captcha/Default) DEPENDS:= \ +PACKAGE_python3-django-simple-captcha:python3 \ +PACKAGE_python3-django-simple-captcha:python3-six \ - python3-django \ + +PACKAGE_python3-django-simple-captcha:python3-django1 \ +PACKAGE_python3-django-simple-captcha:python3-pillow \ +PACKAGE_python3-django-simple-captcha:python3-django-ranged-response VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-simple-captcha/description diff --git a/lang/python/django-statici18n/Makefile b/lang/python/django-statici18n/Makefile index 9c1f2ebbe..ea58e6f84 100644 --- a/lang/python/django-statici18n/Makefile +++ b/lang/python/django-statici18n/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-statici18n PKG_VERSION:=1.8.2 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=ba9eeb3c4517027922645999359f8335fbb9fea04c457123cfbd6b4a36cbeda4 @@ -48,9 +48,8 @@ define Package/python3-django-statici18n $(call Package/django-statici18n/Default) DEPENDS:= \ +PACKAGE_python3-django-statici18n:python3 \ - python3-django + +PACKAGE_python3-django-statici18n:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-statici18n/description diff --git a/lang/python/django-webpack-loader/Makefile b/lang/python/django-webpack-loader/Makefile index 1ff80d64c..90c65d2ac 100644 --- a/lang/python/django-webpack-loader/Makefile +++ b/lang/python/django-webpack-loader/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-webpack-loader PKG_VERSION:=0.6.0 -PKG_RELEASE:=6 +PKG_RELEASE:=7 PYPI_NAME:=$(PKG_NAME) PKG_HASH:=60bab6b9a037a5346fad12d2a70a6bc046afb33154cf75ed640b93d3ebd5f520 @@ -46,9 +46,8 @@ define Package/python3-django-webpack-loader $(call Package/django-webpack-loader/Default) DEPENDS:= \ +PACKAGE_python3-django-webpack-loader:python3 \ - python3-django + +PACKAGE_python3-django-webpack-loader:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-webpack-loader/description diff --git a/lang/python/django/Makefile b/lang/python/django/Makefile index 4924a5586..0ae57b44b 100644 --- a/lang/python/django/Makefile +++ b/lang/python/django/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django PKG_VERSION:=3.0.3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=Django PKG_HASH:=2f1ba1db8648484dd5c238fb62504777b7ad090c81c5f1fd8d5eb5ec21b5f283 @@ -23,18 +23,15 @@ include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk -define Package/django/Default +define Package/python3-django SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=The web framework for perfectionists with deadlines. URL:=https://www.djangoproject.com/ - MENU:=1 -endef - -define Package/python3-django -$(call Package/django/Default) DEPENDS:= +python3 +python3-pytz +python3-sqlparse +python3-asgiref + CONFLICTS:=python3-django1 python-django1-common + PROVIDES:=django VARIANT:=python3 endef diff --git a/lang/python/django1/Makefile b/lang/python/django1/Makefile index 4c115c7c4..e4c25e0dc 100644 --- a/lang/python/django1/Makefile +++ b/lang/python/django1/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django1 PKG_VERSION:=1.11.28 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=Django PKG_HASH:=b33ce35f47f745fea6b5aa3cf3f4241069803a3712d423ac748bd673a39741eb @@ -22,6 +22,7 @@ PKG_CPE_ID:=cpe:/a:djangoproject:django include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk +include ../python3-package.mk define Package/django1/Default SUBMENU:=Python @@ -29,27 +30,62 @@ define Package/django1/Default CATEGORY:=Languages TITLE:=The web framework for perfectionists with deadlines. URL:=https://www.djangoproject.com/ - MENU:=1 endef define Package/python-django1 $(call Package/django1/Default) DEPENDS:= \ +PACKAGE_python-django1:python \ - +PACKAGE_python-django1:python-pytz + +PACKAGE_python-django1:python-pytz \ + +PACKAGE_python-django1:python-django1-common VARIANT:=python - CONFLICTS:=python3-django + MENU:=1 endef define Package/python-django1/description - The web framework for perfectionists with deadlines (LTS 1.11 series). - Python2 only. + The web framework for perfectionists with deadlines (LTS 1.11 series). endef -$(eval $(call PyPackage,python-django1)) -define Package/python-django1-src += +define Package/python3-django1 +$(call Package/django1/Default) + DEPENDS:= \ + +PACKAGE_python3-django1:python3 \ + +PACKAGE_python3-django1:python3-pytz \ + +PACKAGE_python3-django1:python-django1-common + VARIANT:=python3 + PROVIDES:=django +endef + +define Package/python3-django1/description +$(call Package/python-django1/description) +. +(Variant for Python3) +endef + +define Package/python-django1-common +$(call Package/django1/Default) +endef + +define Package/python-django1-common/description +$(call Package/python-django1/description) +. +This package contains files common to both Python 2.7 and Python 3. +endef + +PyPackage/python-django1/install:=: +Py3Package/python3-django1/install:=: - MDEPENDS:=python-django1 +define Package/python-django1-common/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) ./files/django-admin $(1)/usr/bin endef + +$(eval $(call PyPackage,python-django1)) $(eval $(call BuildPackage,python-django1)) $(eval $(call BuildPackage,python-django1-src)) + +$(eval $(call Py3Package,python3-django1)) +$(eval $(call BuildPackage,python3-django1)) +$(eval $(call BuildPackage,python3-django1-src)) + +$(eval $(call BuildPackage,python-django1-common)) diff --git a/lang/python/django1/files/django-admin b/lang/python/django1/files/django-admin new file mode 100644 index 000000000..acf99b945 --- /dev/null +++ b/lang/python/django1/files/django-admin @@ -0,0 +1,23 @@ +#!/bin/sh +shell_code=''' ' +# shell code +if command -v python3.8 > /dev/null && test -e /usr/lib/python3.8/site-packages/django/bin/django-admin.pyc +then + exec python3.8 "$0" "$@" +elif command -v python2.7 > /dev/null && test -e /usr/lib/python2.7/site-packages/django/bin/django-admin.pyc +then + exec python2.7 "$0" "$@" +else + echo "Cannot find installed version of python-django1 or python3-django1." >&2 + exit 1 +fi + +python_code=''' +# python code +# ONLY use DOUBLE quotes <"> after this line +from django.core import management + +if __name__ == "__main__": + management.execute_from_command_line() + +# End of Python code. Do not modify this line. #' diff --git a/lang/python/python3-django-cors-headers/Makefile b/lang/python/python3-django-cors-headers/Makefile index 6878cfe7a..b7d877823 100644 --- a/lang/python/python3-django-cors-headers/Makefile +++ b/lang/python/python3-django-cors-headers/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-cors-headers PKG_VERSION:=3.2.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=django-cors-headers PKG_HASH:=a5960addecc04527ab26617e51b8ed42f0adab4594b24bb0f3c33e2bd3857c3f @@ -21,9 +21,8 @@ define Package/python3-django-cors-headers CATEGORY:=Languages TITLE:=Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS). URL:=https://github.com/ottoyiu/django-cors-headers - DEPENDS:=python3-django +python3-urllib +python3-light + DEPENDS:=+django +python3-urllib +python3-light VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-cors-headers/description diff --git a/lang/python/python3-django-etesync-journal/Makefile b/lang/python/python3-django-etesync-journal/Makefile index e9863a50e..9c9787ba5 100644 --- a/lang/python/python3-django-etesync-journal/Makefile +++ b/lang/python/python3-django-etesync-journal/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-etesync-journal PKG_VERSION:=1.2.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=django-etesync-journal PKG_HASH:=1b481f592217186482be9faee686f0c132790db4177deb1f5152b73e99ac6338 @@ -21,9 +21,8 @@ define Package/python3-django-etesync-journal CATEGORY:=Languages TITLE:=The server side implementation of the EteSync protocol. URL:=https://www.etesync.com/ - DEPENDS:=python3-django +python3-django-restframework +python3-light + DEPENDS:=+django +python3-django-restframework +python3-light VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-etesync-journal/description diff --git a/lang/python/python3-drf-nested-routers/Makefile b/lang/python/python3-drf-nested-routers/Makefile index 9b7d02ce5..3a42067dd 100644 --- a/lang/python/python3-drf-nested-routers/Makefile +++ b/lang/python/python3-drf-nested-routers/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=drf-nested-routers PKG_VERSION:=0.91 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PYPI_NAME:=drf-nested-routers PKG_HASH:=46e5c3abc15c782cafafd7d75028e8f9121bbc6228e3599bbb48a3daa4585034 @@ -21,7 +21,7 @@ define Package/python3-drf-nested-routers CATEGORY:=Languages TITLE:=Nested resources for the Django Rest Framework URL:=https://github.com/alanjds/drf-nested-routers - DEPENDS:=+python3-django-restframework +python3-django +python3-light + DEPENDS:=+python3-django-restframework +django +python3-light VARIANT:=python3 endef