mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-26 17:08:25 +00:00 
			
		
		
		
	Fix #5997. If a push causes the patch/diff of a PR towards target branch to change, all existing reviews for the PR will be set and shown as stale. New branch protection option to dismiss stale approvals are added. To show that a review is not based on the latest PR changes, an hourglass is shown
		
			
				
	
	
		
			27 lines
		
	
	
		
			637 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			637 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2019 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 addReviewCommitAndStale(x *xorm.Engine) error {
 | |
| 	type Review struct {
 | |
| 		CommitID string `xorm:"VARCHAR(40)"`
 | |
| 		Stale    bool   `xorm:"NOT NULL DEFAULT false"`
 | |
| 	}
 | |
| 
 | |
| 	type ProtectedBranch struct {
 | |
| 		DismissStaleApprovals bool `xorm:"NOT NULL DEFAULT false"`
 | |
| 	}
 | |
| 
 | |
| 	// Old reviews will have commit ID set to "" and not stale
 | |
| 	if err := x.Sync2(new(Review)); err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	return x.Sync2(new(ProtectedBranch))
 | |
| }
 |