The current regex in URLValidator does not allow numbers in the top-level domain
e.g. www.example.org33 raises a ValidationError
Rarely, if ever, do public top-level domains contain a number, however internal, private networks can certainly be configured with numbers present in the top-level domain. Thus it is important to handle these URIs without having to specify custom regex patterns to pass into the URLValidator.
The change can be achieved by replacing the following line in the URLValidator class:
r'(?:[a-z' + ul + '-]{2,63}'
with
r'(?:[a-z' + ul + r'0-9' + '-]{2,63}'
I am hoping this post generates some meaningful discussion around this proposed design change, thanks!