summaryrefslogtreecommitdiff
path: root/dev-python/django
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/django')
-rw-r--r--dev-python/django/Manifest9
-rw-r--r--dev-python/django/django-4.2.19.ebuild103
-rw-r--r--dev-python/django/django-5.0.12.ebuild105
-rw-r--r--dev-python/django/django-5.1.6.ebuild99
4 files changed, 316 insertions, 0 deletions
diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index c63b0e34f40e..0c4018c2c6c9 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -3,16 +3,25 @@ AUX django-5.0.6-py313.patch 2474 BLAKE2B cf47f32ec1989b50a3e2a3cdce950f33c9f1ca
AUX django-5.1-more-pypy3.patch 1975 BLAKE2B 7b3c0820ec6b27c7ddc8c95db3eaf444831bae4ec546c5600a9f79475cbdd5671b7ad119482f9d4959088f5f923d810ff79e87149af8ca5d22d0260c84088d3e SHA512 02e945420bf1a911f930099aa00816191e5cece9520eb3373f83187b5dae70986db766d806f7c2e9fe92bc65a2e24cea6a52c22ecc7eb9ff883e813ac4d17258
DIST Django-4.2.18.checksum.txt 2583 BLAKE2B 93f616de52243945fd8498c91dd27c92d10bab4d1782e2fe23f44f86fa9bfd72bc0fa088713948c9efad82bbfc84ee6bf2a981a4c8e8c3dfc7c9e59b9529e6a4 SHA512 a90bbf3e86c072d022cf462b15b69e60dbe2077982131451a105e4e1cac3222bbfba31c06839fdf5880698eef2a8d3a742def2a786a771f06c3a665d8631b2ad
DIST Django-4.2.18.tar.gz 10428204 BLAKE2B 45c2059e89ce988596120894e62c76ceb5054d2b7bbdc18befe7a0a54b4d19c3b5850b3d4dfed14950f2fb323a5b0196bee3a4d1520fcbfe9e734da6b9cdc2c4 SHA512 74469711d0238583c46cadd42737b9002417010796b713a0750c1f28ea17c9c6b2d33e0136fcc5556029a78e0c24b617ae366cb667051c09552298faee791609
+DIST Django-4.2.19.checksum.txt 2583 BLAKE2B 11d61858872f6dda4c15c3dacf9550703c7110e144f7d65e97d80e2fc98a8e0b6b607386ed46330cf302a69d96c629f887fea18a2a8cda0e5d2f492c6becbdfe SHA512 10ce3dde081db5e56b8570a1030553eaf6da7f3eeb54897713d11aebdad5e802ae40175222b5c8e322ced3bfb27cb7e0abf17d6f8363b4e62f273d6c4c962a63
+DIST Django-4.2.19.tar.gz 10426865 BLAKE2B 3bfe496d3b446f51eb99dfc62845785ff51e94c5b8b064e8a126e106fdc7589c5532b16b526bceb2377955cbcfb5b67233c76263588220d171797a9762f86333 SHA512 4bc7a12d502809f9b65f26d2b0f7f5fab76f37bf5d15f6887ee160e0cf8bb29089f478d280f31bf889e4204f103602069103ab74f058e8721bffb121a7fa27ad
DIST Django-5.0.11.checksum.txt 2583 BLAKE2B e7cc6ed8c4f3d9398eb892cfb6e4d6b983485128180099ad069e0594f8a398ce8127cf934bd738df826d61ffd66d2c0cb27f4ac27630a3f3d2f20edf30e44f00 SHA512 16bdb35fa566db8995233841e53cc793a4656604f351913ad97b470b4044d9476a9bda094493d170d63d637d4f2cc1a22b3b372005f05ed043b1d1b56c6137f2
DIST Django-5.0.11.tar.gz 10635979 BLAKE2B b55d539d541c661ebe0e4e3db21b89de3fb4a32dc1d07d6bae1be6cd22b82bf4c5692eb23ddb2d4425140ecdcab272d6fb5629c1b525b7fdad1469eb40376a8e SHA512 a43b3245a8e4f1b315ac75128f0d24cf4202471a9dce6791e1fffc88580427c7823c4abfeab6bfee821ff44407728089f563180525eb6bc172bf52858dce867e
+DIST Django-5.0.12.checksum.txt 2583 BLAKE2B ac931c1dd0c6be628a8dabb591708e48f3746016e2a77f86e069920445c2ae385c3cdd3fe143773c3d4767f857d24e8526eb29c4da0f2fcf39370067673273e0 SHA512 3faff6cf0ed08ecfe022ebc2de7ffef1dbf7bc73d97410ebba209e620cf0ecb715b1940907dd12179c048f1fee070ededc2584e6b958878bd570961277b8d582
+DIST Django-5.0.12.tar.gz 10636389 BLAKE2B d314e2f990023edc9de9f66ec970f16c0749c3a9f16450a7c4f3cf4cdea6a8e978ff62b9214c8876193a44f213d0e8084095c7218650724d9091cce91e0b5f02 SHA512 f7772660d609b8b44244719e7a4e678698d0153a65193ccfee49b323eb428c69c0f77d193b560be0df42025aa770987986a82b0f5ed9659c90e07617271c49d5
DIST Django-5.1.5.checksum.txt 2573 BLAKE2B af41ffe32d60f10c99b558d32dbcf8658fe6ccadf21168afa6812ec9f40d6a0d2024cde733a26d515d90a025e8814c10ab745679133ed1f13a0ffbed8ce59319 SHA512 70c4af1a339a0b195b3788c10425ef83480274ba3efe5344bfa43d8245d681ed2622f48d62c284ad4bbeb77fb5132308197dfe1d308d027ea650c452e6454d90
DIST Django-5.1.5.tar.gz 10700031 BLAKE2B 8de45f7574e2f74a06916018a12cf6df9c263cf754ff575d12735fb6921729c7d2937235fee57abb95e9f20e6de0282ec3e737a0a2ee9d9e38e70a1ee90fa6e9 SHA512 cc28eb7166d9babdb3f3d61cc87eb9ed038d7115bd7de7da5b9cff33da114c334fd51140d32c597229cd07e400520bc92ebf69611c6a455ac926f3e9eaa5ee88
+DIST Django-5.1.6.checksum.txt 2573 BLAKE2B b35b22fee8d313510463e77c4b3a6d9154847554f5a33c48e656f7d88e1c71067b8493817e43cc168e9df2fdcab42ce4c35a5c61ff2c45d141025e79c807ce93 SHA512 e1df89d9dc9ad131d8caf12cb84065e55e78249e292aace955e1c6195f46b4ab94ac80d0a3ec23e9f62c7568439ba062f75fb1bbdb7b3fc555238ae512de991d
+DIST Django-5.1.6.tar.gz 10700620 BLAKE2B 8d362c686c68cb34eb356b237205b8b18e5bb75ebe7080a4be2f665dcff9fcd8f25775ba16ef70cd755a5a100c16751f35374eb76c39562ea098f5424223188f SHA512 a76a8e523aa90d62ed0fa003bc9117900644d93c62e78bd879b709c107bb18d3e9a5b4fbd475a213398d99f9b9052a31a54cef9c5861a923b66d639c037cc177
DIST Django-5.2a1.checksum.txt 2410 BLAKE2B 34659b6ff74e39fd13e8b1392dcb0411ae88cb88dc0271f3e7f84ad829e2525f1db11c3951b1b1def4ea95a432135996656fd2e894f3afc3c1913913d1033cb6 SHA512 b1e70a6978707b1d90d8810dc349796e969d63299ec8496b5ec1d45d0881ddfa524e2b78fdd07d1e212d74497de011b7d5377dc31e19e74fb532f2cc26f94212
DIST Django-5.2a1.tar.gz 10814424 BLAKE2B fffa0f9f31fdd03b1dbf826ec1484d22fbfdeb13724254034726699d303a66d397e847954d15ab2b2975600bcbe4113051a6d9b7c14f2aeeca862ffd06c21d13 SHA512 5513cf718a30bd1bca5973c4fa679ec9af7b7a69cdfd554a5d5ab6706fdab18d5d9de8e1162968fc0d6c3254823577e43d1704482321178edbce434a8b4b8dd9
DIST django-4.2.17-pypy3.patch.xz 5900 BLAKE2B 2a564fc31d8e2f3def5a532d3bca1a4426a496c659192f602d659e0c1a5f5882978baedb384cc3b67fda8c836513ce43aece80db1528c8e8b6e9ca420f7572ce SHA512 9c9d935aff6db7230a26931b5e7f5f94f3b5ff4fc8f7d4201178571de9d9c7929a0e1e558cc2d9b54b8ee91f85819a5680d24fad6251620515a4a020e3b2d66d
DIST django-5.0-pypy3.patch.xz 6124 BLAKE2B 7eba7cc70b30743cf4e186a2c5b0f27c13f49114a7a80bcaa2b25fdd7a959583c115a302c9bc6da97c32f6401cf8f3616818ba759190d317c5b033a0f0088766 SHA512 c550e2b2c1243d13cd1f4908f4b6df606355d1491e3bf72042e4b4777a4474306ff0f67b1c2eb4ab4d137cc85bde52dcdbd54bec245d2ba2e092545be8a2993b
EBUILD django-4.2.18.ebuild 2939 BLAKE2B 7b91da0096c435ff9ba001dd9f8944c1f41bd3bb64e9680ff04c9bebdaf856ea11bd1c1de7af2228b45cc62225cdca034194485093adf1e6d7479f5a4de7ca90 SHA512 afb2cc88d0f5185db77fff211e74fab805918f6c468eb33f19944c1f6df769258b82d253893551707d2ee0cea9f8e49825b47e1468de10fe52f239a874eb4345
+EBUILD django-4.2.19.ebuild 2946 BLAKE2B 2e57fd5848b7b258e59b72ac7717cda100a09be4d96f15e6b179c368cb0e443cc7ab4c19aad42a7f0d1149002ef2be049169bdada5a4325054daa8b3d57f43c3 SHA512 ac112c8067a6b0f1d6b349a43f091b668a73d7e84fa989c0d4ee3c4fd1e4bd3be69b89b7fba972ae6eb63ad557c0708729755cfdae81fb750b7fbba4908d254c
EBUILD django-5.0.11.ebuild 3096 BLAKE2B 828b8cd9aac52a6819271b85b42bd26754495f34ec107b29f292f795808de3984c4aac239f1ea1befe836d7aea6770b4252513e1bc503d21a0c8b7efda43fcba SHA512 e7b7e2fe7883f38ed6a9b80839b9bcf11409836044af14eba15ec2fb76e65a853bc27cdbe90fcc2ce2e53a0d5d70fcbf8ed20dd61c81c7cfa04640e635ba002d
+EBUILD django-5.0.12.ebuild 3103 BLAKE2B 8a8247240e64e5cad1a60cff105a0a49a55eb9e8664fd60f564bb55936011390052a32c1079c0da640c075331b69d985fd73ae3bfd1f9287712ae475b0044a2c SHA512 313b7962583b8fa0ef8c1e3dd496933afadbd6fddba05786e7575a0ad5875b872c47b9721f19ec62a5f3db3580fb6e2716872d49b89f26174cb7a981e4b871cf
EBUILD django-5.1.5.ebuild 2775 BLAKE2B aa70afdaa6c727a82d74bec1579a06dafe2c3703b7ca0b27df408ee998c95d6a4b145bb409f6b37316a73381666c95399da6104b87829c77d109c3c56e945a02 SHA512 2639f663d9e295eccc0c46e907e455c478e05f423196e2cb64881edefe36c5fe5e8f6eef6bc5d285fd8c629940fb32babfd1a268458688ea90ede3a7056361b2
+EBUILD django-5.1.6.ebuild 2782 BLAKE2B baee148db4a50bd3a37f6068c509a90dc41a5a8fad41873d9eb20507da93f867b4e065a61514d987e3c885c2ce5c40f10fbb6cbaf7238e54563747750acdee38 SHA512 78f7ff9c86e392496ea8190b86211139eb895364fd56cee312ec05e9c3af88edcd3c03fa566b6aa1c153e0b30547888f1180c88b4f0c8743a9e671e97a0df6de
EBUILD django-5.2_alpha1.ebuild 2731 BLAKE2B 0e8038045ea2b9d4aaae97e53d06da124350bcca495d589e419de2bb2afd24df5676fd1f15eff3a8d6bed2017385dacda71626c9540f17de604a074bfdec857d SHA512 a00e3a879545e8f10df4b6c3f17f63568b791873e0e2ba19e868b3091c103deff4220d0bc19dc29d05b3f6cce7ab08d5bd10744547b5bfa60b700434ae5657e1
MISC metadata.xml 400 BLAKE2B 6b3414ac734f078d90c82b44edd2f9f70e494e98da8a3d874d18006ae5e0eb5f7060b98b402094d6045e800bf525586f2566e6f554a8b2999cce37bdcc5472a0 SHA512 1cf0bb6ef93da3abbd1a66878462b1b8672a9b8fccd7f968b427e429caa6ecf30cb703a6060d621ccad1ba77b927d2b0e632b04b0a47975918ccbfcc5f2b85f7
diff --git a/dev-python/django/django-4.2.19.ebuild b/dev-python/django/django-4.2.19.ebuild
new file mode 100644
index 000000000000..132ee16f15d3
--- /dev/null
+++ b/dev-python/django/django-4.2.19.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ https://dev.gentoo.org/~mgorny/dist/python/django-4.2.17-pypy3.patch.xz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.6.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/selenium[${PYTHON_USEDEP}]
+ dev-python/tblib[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+ "${WORKDIR}"/django-4.2.17-pypy3.patch
+ # https://code.djangoproject.com/ticket/35661
+ "${FILESDIR}"/django-5.1-more-pypy3.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}
diff --git a/dev-python/django/django-5.0.12.ebuild b/dev-python/django/django-5.0.12.ebuild
new file mode 100644
index 000000000000..2a1838f4d431
--- /dev/null
+++ b/dev-python/django/django-5.0.12.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ https://dev.gentoo.org/~mgorny/dist/python/django-5.0-pypy3.patch.xz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.7.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ >=dev-python/docutils-0.19[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-2.11.0[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/selenium-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/tblib-1.5.0[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+ "${WORKDIR}"/django-5.0-pypy3.patch
+ # https://github.com/django/django/commit/3426a5c33c36266af42128ee9eca4921e68ea876
+ "${FILESDIR}"/django-5.0.6-py313.patch
+ # https://code.djangoproject.com/ticket/35661
+ "${FILESDIR}"/django-5.1-more-pypy3.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}
diff --git a/dev-python/django/django-5.1.6.ebuild b/dev-python/django/django-5.1.6.ebuild
new file mode 100644
index 000000000000..9ac09beed28d
--- /dev/null
+++ b/dev-python/django/django-5.1.6.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.8.1[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ >=dev-python/docutils-0.19[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-2.11.0[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/selenium-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/tblib-1.5.0[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}