diff options
author | zeripath <art27@cantab.net> | 2020-03-27 12:34:39 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-27 14:34:39 +0200 |
commit | e6baa656f757fd1f2f6ba20c677e0c83422a8739 (patch) | |
tree | b2a396f41e1b8a08b796084d169f202d593f7357 /models/migrations | |
parent | a3f90948d8fa4dd5c92e15cc10e86d2fec37f6e7 (diff) | |
download | gitea-e6baa656f757fd1f2f6ba20c677e0c83422a8739.tar.gz gitea-e6baa656f757fd1f2f6ba20c677e0c83422a8739.zip |
make avatar lookup occur at image request (#10540)
speed up page generation by making avatar lookup occur at the browser
not at page generation
* Protect against evil email address ".."
* hash the complete email address
Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-Authored-By: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'models/migrations')
-rw-r--r-- | models/migrations/migrations.go | 2 | ||||
-rw-r--r-- | models/migrations/v133.go | 16 |
2 files changed, 18 insertions, 0 deletions
diff --git a/models/migrations/migrations.go b/models/migrations/migrations.go index c554121e85..3f18a18c6d 100644 --- a/models/migrations/migrations.go +++ b/models/migrations/migrations.go @@ -198,6 +198,8 @@ var migrations = []Migration{ NewMigration("Add IsSystemWebhook column to webhooks table", addSystemWebhookColumn), // v132 -> v133 NewMigration("Add Branch Protection Protected Files Column", addBranchProtectionProtectedFilesColumn), + // v133 -> v134 + NewMigration("Add EmailHash Table", addEmailHashTable), } // Migrate database to current version diff --git a/models/migrations/v133.go b/models/migrations/v133.go new file mode 100644 index 0000000000..ea0411d470 --- /dev/null +++ b/models/migrations/v133.go @@ -0,0 +1,16 @@ +// Copyright 2020 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package migrations + +import "xorm.io/xorm" + +func addEmailHashTable(x *xorm.Engine) error { + // EmailHash represents a pre-generated hash map + type EmailHash struct { + Hash string `xorm:"pk varchar(32)"` + Email string `xorm:"UNIQUE NOT NULL"` + } + return x.Sync2(new(EmailHash)) +} |