code.gitea.io/gitea@v1.21.7/models/migrations/v1_12/v127.go (about) 1 // Copyright 2020 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package v1_12 //nolint 5 6 import ( 7 "fmt" 8 9 "code.gitea.io/gitea/modules/timeutil" 10 11 "xorm.io/xorm" 12 ) 13 14 func AddLanguageStats(x *xorm.Engine) error { 15 // LanguageStat see models/repo_language_stats.go 16 type LanguageStat struct { 17 ID int64 `xorm:"pk autoincr"` 18 RepoID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` 19 CommitID string 20 IsPrimary bool 21 Language string `xorm:"VARCHAR(30) UNIQUE(s) INDEX NOT NULL"` 22 Percentage float32 `xorm:"NUMERIC(5,2) NOT NULL DEFAULT 0"` 23 Color string `xorm:"-"` 24 CreatedUnix timeutil.TimeStamp `xorm:"INDEX CREATED"` 25 } 26 27 type RepoIndexerType int 28 29 // RepoIndexerStatus see models/repo_stats_indexer.go 30 type RepoIndexerStatus struct { 31 ID int64 `xorm:"pk autoincr"` 32 RepoID int64 `xorm:"INDEX(s)"` 33 CommitSha string `xorm:"VARCHAR(40)"` 34 IndexerType RepoIndexerType `xorm:"INDEX(s) NOT NULL DEFAULT 0"` 35 } 36 37 if err := x.Sync(new(LanguageStat)); err != nil { 38 return fmt.Errorf("Sync: %w", err) 39 } 40 if err := x.Sync(new(RepoIndexerStatus)); err != nil { 41 return fmt.Errorf("Sync: %w", err) 42 } 43 return nil 44 }