summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMehraz Hossain Rumman <59512321+MehrazRumman@users.noreply.github.com>2025-11-06 04:05:54 +0600
committerJacob Walls <jacobtylerwalls@gmail.com>2025-11-05 17:06:23 -0500
commitca824284425e0a132ccec1e7f2ca9dbef8175795 (patch)
treea310c543ab41455b9f2909d3da2fcc785fcb01b0
parentcdb93b78770067b7d6a963b4268a034eaf401e72 (diff)
[6.0.x] Fixed #36710 -- Fixed a regression in urlize for multipart domain names.
Thanks Mehraz Hossain Rumman for the report and Bruno Alla for the triage. Regression in a9fe98d5bd4212d069afe8316101984aadecfbb2. Backport of 125b63ca745bace1e098ed3c7362d59136f68a8b from main.
-rw-r--r--django/utils/html.py1
-rw-r--r--tests/utils_tests/test_html.py4
2 files changed, 5 insertions, 0 deletions
diff --git a/django/utils/html.py b/django/utils/html.py
index 734d7fbfb3..b04d6bc5ee 100644
--- a/django/utils/html.py
+++ b/django/utils/html.py
@@ -297,6 +297,7 @@ class Urlizer:
simple_url_re = _lazy_re_compile(r"^https?://\[?\w", re.IGNORECASE)
simple_url_2_re = _lazy_re_compile(
rf"^www\.|^(?!http)(?:{DomainNameValidator.hostname_re})"
+ rf"(?:{DomainNameValidator.domain_re})"
r"\.(com|edu|gov|int|mil|net|org)($|/.*)$",
re.IGNORECASE,
)
diff --git a/tests/utils_tests/test_html.py b/tests/utils_tests/test_html.py
index 7167383aef..e8daf93db3 100644
--- a/tests/utils_tests/test_html.py
+++ b/tests/utils_tests/test_html.py
@@ -456,6 +456,10 @@ class TestUtilsHtml(SimpleTestCase):
'<a href="mailto:idna-2008@%DE%89%DE%A8%DE%80%DE%A7%DE%83%DE%AA.ex'
'ample.mv">idna-2008@މިހާރު.example.mv</a>',
),
+ (
+ "host.djangoproject.com",
+ '<a href="https://host.djangoproject.com">host.djangoproject.com</a>',
+ ),
)
for value, output in tests:
with self.subTest(value=value):