Opened 8 years ago

Closed 8 years ago

#26639 closed New feature (wontfix)

Default to ASCIIUsernameValidator (instead of UnicodeUsernameValidator) in Django 1.10

Reported by: David Owned by: nobody
Component: contrib.auth Version: 1.9
Severity: Normal Keywords: users, username, unicode, ascii
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Would Django devs please consider using ASCIIUsernameValidator as the default, and leave UnicodeUsernameValidator as an opt-in option?

I don't have the experience in this industry to provide a solid list of technical reasons or arguments for why this should be done, but perhaps I can try to provide a reason for Django usability from a user standpoint:

A Django user who is trying to save time and get a product out the door isn't going to focus on finer details such as Unicode usernames, and will be in for a shock when he finds out a bunch of his users have registered themselves with Egyptian hieroglyphics. He may be very frustrated, eventually figuring out that he must subclass the User model and set username_validator = ASCIIUsernameValidator() to get the functionality he expected. And what is he to do with the existing Unicode users, delete all their accounts?

Whereas a technologically forward user might be friendlier towards Unicode usernames, and would be well-informed on these capabilities within Django. Furthermore, the technologically forward user will be more likely to already have a custom user model, and won't find it cumbersome to explicitly enable Unicode usernames. Enabling Unicode usernames isn't destructive like disabling it would be (no need to figure out what to do with the existing users offending the validation), so users can simply start using it immediately.

Thanks!

Change History (1)

comment:1 by Tim Graham, 8 years ago

Resolution: wontfix
Status: newclosed

Please read the django-developers discussion and add your view there if you disagree with the conclusions. Thanks.

Note: See TracTickets for help on using tickets.
Back to Top