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

dev-python/django: Bump to 4.2.24

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

 dev-python/django/Manifest                         |   2 +
 dev-python/django/django-4.2.24.ebuild             | 106 +++++++++++++++++++++
 .../django/files/django-4.2.24-htmlparser.patch    |  15 +++
 3 files changed, 123 insertions(+)

diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index 383248ddcefb..f762ba465843 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -1,4 +1,5 @@
 DIST Django-4.2.23.checksum.txt 2384 BLAKE2B 
b14eedfea3253c3f3e3a96e124fe942bfdcfd5013876fd2ab7a693c5cf9190652869ef9093b1650c968bd2ecf097566cb404984645dbb3e28423a4a47f747c05
 SHA512 
8393fb7e21b5ea0db8fc909588e1ce40ce18f405f2d53470f75237889509e4606e3a1aa7168e9defe4c790446dee12084a779c275d6290dcd6f7db285ec3c045
+DIST Django-4.2.24.checksum.txt 2388 BLAKE2B 
849cba0c02d0c9ad39aa05cb075cfcb734358d183a048a2020310838dc103ee9aaef3b8186da4403d47fdf92b0d1ce3e2e0f3d4fdf537ba348283d71221f7ca9
 SHA512 
cef61a0092cb8a17cb581ebc1f9d20e898e4c65d20aa32740bbd41761d1d3004aab737337fd249f1ab21b6161a02c781682295d3f45d0102844819eda3d253b6
 DIST Django-5.1.11.checksum.txt 2384 BLAKE2B 
8a8c2528bf0453d9da92cd5c6929b59f5e942840e17fd15dac00c1979d92f46b21c318f0d5d0426dd3cf0fd2c99799eb24eb2e50c4af906ad330d8fa1acd40df
 SHA512 
748b3f4987ef0854cb3cbb501a7ee0c71acb5fbd2a3b4b07eef581db8ba31ad481aef4465a75fc42dcd4e75148568700101d169329373d3208b76aa6b90602f3
 DIST Django-5.1.12.checksum.txt 2388 BLAKE2B 
a4e676cfc68c9f1b9a3582cc1c3875aacb81171c459021874522e5d902a831372112bf730fb9ec3fc0d41645af0d7f64d50009a2a4beb2fddb43b114f83ea594
 SHA512 
87b32f9861840ea7df64cebb74d840e006b6329707c4b25957316f2840a789bff5c7a42b55484c9829d67be5cd0d5cf69dc69558637361ace7ec87850014028d
 DIST Django-5.2.4.checksum.txt 2536 BLAKE2B 
112467d2065f70700ee7f52e672f9208a4b96d8015ef8f11ec15f06fd62f8dd90e08690099a4ab859a2056ce16b033bd04162dbcbd590fa33f64af617bf225d8
 SHA512 
e8f1b971c4097996e3513d088a93b6bfc89280fc400aa908324041691f1f794d2e329d5e8ccadbbddfa7cba31823376651ea157b031efe5e2b74b38177ed7a6b
@@ -6,6 +7,7 @@ DIST Django-5.2.5.checksum.txt 2375 BLAKE2B 
f3a3efcfb301ff20c949f48d6eeae53fb509
 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-4.2.24.tar.gz 10452798 BLAKE2B 
8879aab564b89429244edd496f8bc2e93a47c7b337e3e280c386c45c9e33be5d2e129913d7684456a18b3772113f1715aea259df1cf56af28947516f49974e42
 SHA512 
b43b3c73301d60d19681d98b63f6f58a09af6bafb6166419d561f0c0236d2aa1a7c715d86e029ad942997e36868661e606a4a305bada0367383b27d660b8dc26
 DIST django-5.1.11.tar.gz 10734926 BLAKE2B 
2fd387f356e3bafd3569ae0dd24c540970f5bcd465ebbf8726950fd92f4a85563ec6f79e5bbe69ba430eceab46cca50f631c9027a0e5abb024c906d42e69354e
 SHA512 
dc9cb8e16242c6276cedccb639443d3f4b2d3805f52a74310fddb761ffc3ff9ad6be3863a4a14574ae9bf19342304afc0733497b4b584cb6cbe59e9b394d9a59
 DIST django-5.1.12.tar.gz 10737777 BLAKE2B 
8f13429abf76b748936b93e28395df694b1763527e55c3cc29b5c493c084e0213d98bc10a3cf1ee1fe42963be05191dba4d34e9503a5729ab26addcd0f68b865
 SHA512 
01f707690efbc9ae7c9c826136c6ce2dddc12e567f37a4c90c709ccab25825aeff124df23d9c75b772e20cf1c21e5ca474044096e3c54f979bd3d8c34b463a68
 DIST django-5.2.4.tar.gz 10831909 BLAKE2B 
3dac27659b23698142b4b9163fe3a916a2352ab9f079ade10cdf0304229ab1109818befdf29f42864fed2409b1af5b777836c2f63cbbf98f7af09920507fcdc6
 SHA512 
af2ec6cfa6e17c6b348c165947ac76287f51e5ab6edc90682b57f8412ec22aaa0cd326516f65b63438d2ef48a70d306a59bfb7a235adeae0e753b654a3b0059c

diff --git a/dev-python/django/django-4.2.24.ebuild 
b/dev-python/django/django-4.2.24.ebuild
new file mode 100644
index 000000000000..ff0e73e58fcd
--- /dev/null
+++ b/dev-python/django/django-4.2.24.ebuild
@@ -0,0 +1,106 @@
+# 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
+       https://dev.gentoo.org/~mgorny/dist/python/django-4.2.17-pypy3.patch.xz
+       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="~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
+       # https://code.djangoproject.com/ticket/34900
+       "${FILESDIR}"/django-4.2.21-py313.patch
+       # upstream hardcodes fixed versions, we backported the fixes
+       "${FILESDIR}"/django-4.2.24-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-4.2.24-htmlparser.patch 
b/dev-python/django/files/django-4.2.24-htmlparser.patch
new file mode 100644
index 000000000000..b439a81eb408
--- /dev/null
+++ b/dev-python/django/files/django-4.2.24-htmlparser.patch
@@ -0,0 +1,15 @@
+diff --git a/tests/utils_tests/test_html.py b/tests/utils_tests/test_html.py
+index f755b8cebc..ef5fe77951 100644
+--- a/tests/utils_tests/test_html.py
++++ b/tests/utils_tests/test_html.py
+@@ -101,9 +101,7 @@ class TestUtilsHtml(SimpleTestCase):
+             (3, 9): (3, 9, 24),
+         }
+         py_version = sys.version_info[:2]
+-        htmlparser_fixed = (
+-            py_version in min_fixed and sys.version_info >= 
min_fixed[py_version]
+-        )
++        htmlparser_fixed = True
+         items = (
+             (
+                 "<p>See: &#39;&eacute; is an apostrophe followed by e 
acute</p>",

Reply via email to