repo/gentoo:master commit in: dev-python/django/

Michał Górny <[email protected]> Wed, 05 Aug 2026 07:48:07 +0000 (UTC)
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1785915101.070b7f26ccb4673f140048cac6e7f5acd1205d11.mgorny@gentoo>
commit:     070b7f26ccb4673f140048cac6e7f5acd1205d11
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  5 07:23:27 2026 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Aug  5 07:31:41 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=070b7f26

dev-python/django: Bump to 5.2.17

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/django/Manifest             |   2 +
 dev-python/django/django-5.2.17.ebuild | 116 +++++++++++++++++++++++++++++++++
 2 files changed, 118 insertions(+)

diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index ad147657949e..1093b86c20c4 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -1,6 +1,8 @@
 DIST Django-5.2.16.checksum.txt 2615 BLAKE2B d40332f538f509e60fb1f781fdd5f2994e4accda853f24dd6c82c0f289596a4458e567baf278489cecc13df3d9ae05ff1f5c349851c17aee25702ff44067a92e SHA512 6137ce7318f052de4750147eeaae0ae7ba6e10bc796fa257f01059f30039f3c3a5ad9db44a330948146bf1b272a9a6cec0428afafa17d5f4686aac2791663b65
+DIST Django-5.2.17.checksum.txt 2609 BLAKE2B 02c9c13623a5dbed385b41323f8b65173933df368a05d1a1e70fcc1f58a34a983a3c4d001907e35b5b759e1493f3afa157be675077adf7dbb2fbb84a9c26a88c SHA512 b5c5d7b8645669e074ac1a76d3ad307cf1e3d66bbc08ad33abf3107bc1e7b8d43424d2a6cdd6f244994ce33554fd408a292ce6eac03d577d247f4276bdf5f415
 DIST Django-6.0.7.checksum.txt 2604 BLAKE2B 2e119945d7bc98eb7363d3996168bf3d408563694caa4102dadd6650e98a00cf40f7560b1d0b0e6ee7e8266adeb7f762631e0670bf5be305d9a3add5ed85be7b SHA512 c51adb820ba8c14787b7c6ea5ab63556f1acd78c121db91d35f73ee275ce00ec91abda68aff027685fbcef09c8713e04d8fa091a30231a621f5d009c67d9a600
 DIST Django-6.0.8.checksum.txt 2598 BLAKE2B e5f3ed079b63754f159c753dc8e74cfc539beade44ec790a318e029ff8a149b0abe90ac31a4bd4dddd7bc563c1a2460ecd51d7deb03520a2f6cc28a41663923d SHA512 f75c78d6506be1d31cf984e029d0bc4e80fa415ac5a83c0e57b5ecc873240da8af4962cb1b262efc032a274a017e265cb8806d397c1720bab247f3592a2eaf8d
 DIST django-5.2.16.tar.gz 10890894 BLAKE2B b2424a35e3d1f9fd964ded7c3e5fd8c517686c1a004b3507fb61ac9a6fd2002343975c4126068b109e78bea8a4e545dc6a2c97dd53f8b9128e04b6c0249406ea SHA512 7925e20a35f261c05db6666522420e1f0fbc34a6097ecd4b80e82a4b05e1e5cf0e595355c93a2c15e7d7dbe469fbef152518b747b9389807c99b73886dd00a5f
+DIST django-5.2.17.tar.gz 10889740 BLAKE2B 2cb1bcb7f2f872dd3c01447709a2f35c74ecd9470ce332b616bdf04e5951d38405380af19001ace033351330f7f645ed61c9b628cea21665f92c3757fcda5e0c SHA512 3f960e8227ab71d42f33700e689db6f359411d43efd3b138c59e66aac245a110f33458dcc9e7b27ddbda16b2a1c97e1e56ce00c9ace8294216eded8a4af8815f
 DIST django-6.0.7.tar.gz 10921299 BLAKE2B c37cee606d77faa96da298d4331fdd9803c56d45f18f29f271234cb7670055c1cf1abb40230837767cd120ba5c46b7dd030f50f3c1d16be7f8b252ea6b1ab143 SHA512 c9566b26b31d1f6a10de99621e8e9d8e0be1c6b33c643fad00c46f8a2049c7fa47a38b7a9fe51605ee41c0d8a14c27a3ff6bc771910190daf473fe05379690db
 DIST django-6.0.8.tar.gz 10924565 BLAKE2B 9a0e4ff8f0548874080cc59982d64881892bb8c71c4edf346dff68628e6c98366e66a7e4f6e0a39edab0fb7b513e36fd2e3dc41f94743c72dae8113e4fda1780 SHA512 ae763252794b15a0cfd47bcf2eab00cb12bceeebdf7abc7c295ed41cb0b1b60ffbe2c2abbd032de9afaa193d63aa89c5d8df9ce3f58164a2dcb8c70ba6244764

diff --git a/dev-python/django/django-5.2.17.ebuild b/dev-python/django/django-5.2.17.ebuild
new file mode 100644
index 000000000000..38f4cf96bd76
--- /dev/null
+++ b/dev-python/django/django-5.2.17.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{12..15} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit distutils-r1 multiprocessing optfeature shell-completion 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 )
+"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~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-20241002 )
+"
+
+PATCHES=(
+	"${FILESDIR}"/django-4.0-bashcomp.patch
+	# d55979334dcefdb11626220000bec97ade09df07
+	# 2026-07-10: force "fork" method in tests anyway, as we're hitting
+	# random failures anyway
+	"${FILESDIR}"/django-5.2.7-py314.patch
+	# based on upstream commits:
+	# b1a65eac7c09250d36e12464fc8fff2a401246b6
+	# ed13a58bf63df94508c8a0fe779da0b6a2bc26bb
+	# e7f539f813bd56a71ca3c1fbf379f47691002086
+	# plus my own fixes
+	"${FILESDIR}"/django-6.0.7-py315.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
+}
+
+src_prepare() {
+	distutils-r1_src_prepare
+
+	# flaky as hell
+	sed -e 's:test_crafted_xml_performance:_&:' \
+		-i tests/serializers/test_deserialization.py || die
+}
+
+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 django-admin
+	bashcomp_alias django-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
+}