﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
36452	DomainNameValidator forbids digits in TLDs	Shai Berger		"I think there's a small bug in the domain validator, that has been lurking quietly for years, and is now biting me a little. The issue is digits in top-level-domains -- e.g. `email.com1`. As far as I can read the definition in [https://www.rfc-editor.org/rfc/rfc1035 RFC 1035 (page 8)], this is a perfectly valid domain name, but [https://github.com/django/django/blob/2714bc3f2c8675d32caae764c874ac381c836c7f/django/core/validators.py#L82 our regex, as I write this,] allows only letters. This is the regex for i18n-supporting domains; there's an ""ascii_only_tld"" regex right next to it, which does allow digits -- this makes me quite certain that it's a bug.

Of note: The class `DomainNameValidator` is relatively new - only added about a year ago -- but it inherits the regex from older `URLValidator`, which, it seems, has forbidden digits in TLDs at least since Django 2.x. Since `EmailValidator` now also uses the regexes from `DomainNameValidator`, it is also affected."	Bug	closed	Core (Other)	dev	Normal	invalid	validation domain	Shai Berger Claude Paroz Mike Edmunds	Unreviewed	0	0	0	0	1	0
