-
- Downloads
Unique email addresses
Enforces uniqueness of (verified) email addresses across all users. Email addresses are compared case-insensitivly and Unicode-normalized. The new unique constraints are disabled by default and can be enabled with a CLI command. They are planned to become mandatory in uffd v3. A lot of software does not allow multiple users to share the same email address. This change prevents problems with such software. To enable this feature run the command: uffd-admin unique-email-addresses enable The commands reports any issues (e.g. existing duplicate addresses) that prevent enabling the feature. This change also introduces a generic mechanism to store feature flags in the database and improves error handling for login name constraint violations.
Showing
- tests/commands/test_unique_email_addresses.py 51 additions, 0 deletionstests/commands/test_unique_email_addresses.py
- tests/commands/test_user.py 21 additions, 1 deletiontests/commands/test_user.py
- tests/models/test_misc.py 55 additions, 0 deletionstests/models/test_misc.py
- tests/models/test_signup.py 24 additions, 18 deletionstests/models/test_signup.py
- tests/models/test_user.py 136 additions, 1 deletiontests/models/test_user.py
- tests/views/test_selfservice.py 16 additions, 2 deletionstests/views/test_selfservice.py
- tests/views/test_signup.py 35 additions, 20 deletionstests/views/test_signup.py
- tests/views/test_user.py 103 additions, 9 deletionstests/views/test_user.py
- uffd/commands/__init__.py 2 additions, 0 deletionsuffd/commands/__init__.py
- uffd/commands/group.py 3 additions, 2 deletionsuffd/commands/group.py
- uffd/commands/role.py 3 additions, 2 deletionsuffd/commands/role.py
- uffd/commands/unique_email_addresses.py 67 additions, 0 deletionsuffd/commands/unique_email_addresses.py
- uffd/commands/user.py 9 additions, 5 deletionsuffd/commands/user.py
- uffd/migrations/versions/468995a9c9ee_unique_email_addresses.py 102 additions, 0 deletions...igrations/versions/468995a9c9ee_unique_email_addresses.py
- uffd/models/__init__.py 2 additions, 0 deletionsuffd/models/__init__.py
- uffd/models/misc.py 41 additions, 0 deletionsuffd/models/misc.py
- uffd/models/signup.py 7 additions, 0 deletionsuffd/models/signup.py
- uffd/models/user.py 54 additions, 6 deletionsuffd/models/user.py
- uffd/templates/user/show.html 4 additions, 0 deletionsuffd/templates/user/show.html
- uffd/translations/de/LC_MESSAGES/messages.mo 0 additions, 0 deletionsuffd/translations/de/LC_MESSAGES/messages.mo
Loading
Please register or sign in to comment