commit:     0f7155495c3df52622dc18c6ca13da176b421286
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  3 17:11:38 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Sep  3 18:15:17 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f715549

dev-python/django: Bump to 5.2.6

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

 dev-python/django/Manifest                         |   2 +
 dev-python/django/django-5.2.6.ebuild              | 100 +++++++++++++++++++++
 .../django/files/django-5.2.6-htmlparser.patch     |  13 +++
 3 files changed, 115 insertions(+)

diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index 753b477de68a..16a969eb5807 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -2,8 +2,10 @@ DIST Django-4.2.23.checksum.txt 2384 BLAKE2B 
b14eedfea3253c3f3e3a96e124fe942bfdc
 DIST Django-5.1.11.checksum.txt 2384 BLAKE2B 
8a8c2528bf0453d9da92cd5c6929b59f5e942840e17fd15dac00c1979d92f46b21c318f0d5d0426dd3cf0fd2c99799eb24eb2e50c4af906ad330d8fa1acd40df
 SHA512 
748b3f4987ef0854cb3cbb501a7ee0c71acb5fbd2a3b4b07eef581db8ba31ad481aef4465a75fc42dcd4e75148568700101d169329373d3208b76aa6b90602f3
 DIST Django-5.2.4.checksum.txt 2536 BLAKE2B 
112467d2065f70700ee7f52e672f9208a4b96d8015ef8f11ec15f06fd62f8dd90e08690099a4ab859a2056ce16b033bd04162dbcbd590fa33f64af617bf225d8
 SHA512 
e8f1b971c4097996e3513d088a93b6bfc89280fc400aa908324041691f1f794d2e329d5e8ccadbbddfa7cba31823376651ea157b031efe5e2b74b38177ed7a6b
 DIST Django-5.2.5.checksum.txt 2375 BLAKE2B 
f3a3efcfb301ff20c949f48d6eeae53fb509c4a1ed4296d9d61f087e1fc7c6584d140e25446cdf39630ef35f957493ea1acf415e69e7aecc6314a2a10811c27e
 SHA512 
7e5118e68c16bc18fed842040babea4428865fe24ae7d9571cfd195473b583be79fc0beed6b921735ccfa9711ad016df613c9882fe34305aa22070a6cc6af0cd
+DIST Django-5.2.6.checksum.txt 2378 BLAKE2B 
f8516d76dabcef3cbc9b4fa93af8c18f1e835d684319dbbfd56d4b659b642607a5f72a0386fe371daa1b4e2d64d61d3561fd9557de51ef9fdd7a6bac5bf12ddd
 SHA512 
9b499f591d05fbadcb070a8d95dd8a585d485f89f91074c77e1baf3f9909aa26d785a57de5aeb03f0b9027e6567b0852c2c98e2907ab43c650ef8cc99a3fbfa7
 DIST django-4.2.17-pypy3.patch.xz 5900 BLAKE2B 
2a564fc31d8e2f3def5a532d3bca1a4426a496c659192f602d659e0c1a5f5882978baedb384cc3b67fda8c836513ce43aece80db1528c8e8b6e9ca420f7572ce
 SHA512 
9c9d935aff6db7230a26931b5e7f5f94f3b5ff4fc8f7d4201178571de9d9c7929a0e1e558cc2d9b54b8ee91f85819a5680d24fad6251620515a4a020e3b2d66d
 DIST django-4.2.23.tar.gz 10448384 BLAKE2B 
7ac537b279c3ff3e530c8a3a8c2884e30b8771e7bc86fa9086c5149aa9c2c0bf98b90b572e607e7c38c6dbfa95a06783e93a157ee6cdcd24a5285d4e9d700901
 SHA512 
3461a83b5c6cad1db8b1a54fa44735c6ec6d1aadb476973f3a76f8c1c3ffc49549ad8aded28baf05be439bdf8f9890f79b4908f16655804eb805a74dbb0e6ab3
 DIST django-5.1.11.tar.gz 10734926 BLAKE2B 
2fd387f356e3bafd3569ae0dd24c540970f5bcd465ebbf8726950fd92f4a85563ec6f79e5bbe69ba430eceab46cca50f631c9027a0e5abb024c906d42e69354e
 SHA512 
dc9cb8e16242c6276cedccb639443d3f4b2d3805f52a74310fddb761ffc3ff9ad6be3863a4a14574ae9bf19342304afc0733497b4b584cb6cbe59e9b394d9a59
 DIST django-5.2.4.tar.gz 10831909 BLAKE2B 
3dac27659b23698142b4b9163fe3a916a2352ab9f079ade10cdf0304229ab1109818befdf29f42864fed2409b1af5b777836c2f63cbbf98f7af09920507fcdc6
 SHA512 
af2ec6cfa6e17c6b348c165947ac76287f51e5ab6edc90682b57f8412ec22aaa0cd326516f65b63438d2ef48a70d306a59bfb7a235adeae0e753b654a3b0059c
 DIST django-5.2.5.tar.gz 10859748 BLAKE2B 
a721e6199bd1c386098536a62a652bbad14268fd79f56a1235d0c0377e511a5c5ddc7646549389c72994bc1019a15ddb0b38a237a4ef4a5cc83caa8d248cec11
 SHA512 
b65e59596a2c3b4d219d0b37b54bbcead10b1f9760d499cb5cd603b0025995415f3883531f3274ca56a66f3c809933859a079d829403ca8160e6f6cadf7591a4
+DIST django-5.2.6.tar.gz 10858861 BLAKE2B 
c44949b5f27c04e4dbdbd84aa3f7865b404e122e2b427a8fb8d926de0f100b04abd44a1dfb63a74b6a6547884abfd0b8e93c166b0561784d5004b5ceff68b61f
 SHA512 
f2780e72ab6b54503a2ccee2fb2139399c175d8704a9b7fa4308f7688ad7b3a5fd744850ec6f702e0696ac190bc510e8d91584858381f7fd41eb89f1d7619e2c

diff --git a/dev-python/django/django-5.2.6.ebuild 
b/dev-python/django/django-5.2.6.ebuild
new file mode 100644
index 000000000000..7a27574e757d
--- /dev/null
+++ b/dev-python/django/django-5.2.6.ebuild
@@ -0,0 +1,100 @@
+# 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_11 python3_{11..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 )
+"
+
+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-20240807 )
+"
+
+PATCHES=(
+       "${FILESDIR}"/django-4.0-bashcomp.patch
+       # upstream hardcodes fixed versions, we backported the fixes
+       "${FILESDIR}"/django-5.2.6-htmlparser.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/files/django-5.2.6-htmlparser.patch 
b/dev-python/django/files/django-5.2.6-htmlparser.patch
new file mode 100644
index 000000000000..546dbaca7504
--- /dev/null
+++ b/dev-python/django/files/django-5.2.6-htmlparser.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/utils_tests/test_html.py b/tests/utils_tests/test_html.py
+index 681071bf03..3744f5bdfb 100644
+--- a/tests/utils_tests/test_html.py
++++ b/tests/utils_tests/test_html.py
+@@ -132,7 +132,7 @@ class TestUtilsHtml(SimpleTestCase):
+             (3, 10): (3, 10, 19),
+             (3, 9): (3, 9, 24),
+         }
+-        htmlparser_fixed = sys.version_info >= min_fixed[sys.version_info[:2]]
++        htmlparser_fixed = True
+         items = (
+             (
+                 "<p>See: &#39;&eacute; is an apostrophe followed by e 
acute</p>",

Reply via email to