Always store primary email address into email_address table and also the state #15956
Labels
No Label
backport/done
backport/v1.0
backport/v1.1
backport/v1.10
backport/v1.11
backport/v1.12
backport/v1.13
backport/v1.14
backport/v1.15
backport/v1.2
backport/v1.3
backport/v1.4
backport/v1.5
backport/v1.6
backport/v1.7
backport/v1.8
backport/v1.9
bounty
changelog
dependencies
frontport/done
frontport/main
good first issue
Hacktoberfest
hacktoberfest-accepted
in progress
kind/api
kind/breaking
kind/bug
kind/build
kind/deployment
kind/deprecated
kind/docs
kind/enhancement
kind/feature
kind/lint
kind/misc
kind/moderation
kind/package
kind/proposal
kind/question
kind/refactor
kind/regression
kind/security
kind/summary
kind/testing
kind/translation
kind/ui
kind/upstream-related
kind/usability
kind/ux
lgtm/done
lgtm/need 1
lgtm/need 2
performance/bigrepo
performance/cpu
performance/memory
performance/speed
priority/critical
priority/low
priority/maybe
priority/medium
proposal/rejected
reviewed/confirmed
reviewed/duplicate
reviewed/fixed
reviewed/invalid
reviewed/not-a-bug
reviewed/wontfix
skip-changelog
stale
status/blocked
status/needs-feedback
status/wip
theme/2fa
theme/authentication
theme/avatar
theme/backup-restore
theme/docker
theme/federation
theme/issues
theme/kanban
theme/markdown
theme/migration
theme/mobile
theme/pr
theme/signing
theme/sqlite
theme/timetracker
theme/webhook
theme/wiki
No Milestone
No project
No Assignees
2 Participants
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: lunny/gitea#15956
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "lunny/email_address"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR will always store primary email address into email_address table and also add
is_primary
column on that table.Replace #13296 and fix #11251 and #10279
TODO: (next PRs)
email
fromuser
tablewouldn't before update/insert hook be better?
@ -0,0 +46,4 @@
// change lower_email as unique
if err = x.Sync2(new(EmailAddress)); err != nil {
return
}
I'm not sure that the unique constraint will definitely get set here on every db.
@ -0,0 +9,4 @@
"xorm.io/xorm"
)
func addPrimaryEmail2EmailAddress(x *xorm.Engine) (err error) {
We need a testcase for this.
u.Email = strings.ToLower(u.Email) at line 878
It does appear that EmailAddress isn't doing this lowercasing so perhaps we need to do something about not lowercasing before we stick things into EmailAddress even if we have to lowercase in User.
@ -0,0 +46,4 @@
// change lower_email as unique
if err = x.Sync2(new(EmailAddress)); err != nil {
return
}
It's a work of
xorm
to translate it to database's syntax.Done. Since user's email will be removed in next PRs, I think we can keep it there in this PR.
@ -0,0 +9,4 @@
"xorm.io/xorm"
)
func addPrimaryEmail2EmailAddress(x *xorm.Engine) (err error) {
Added
@ -0,0 +46,4 @@
// change lower_email as unique
if err = x.Sync2(new(EmailAddress)); err != nil {
return
}
cool. Just checked!
should these be lower too?
Should this be lower too?
Done.
Done.