mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 00:20:25 +08:00 
			
		
		
		
	Update gitea-vet to v0.2.1 (#12282)
* change to new code location * vendor * tagged version v0.2.0 * gitea-vet v0.2.1 Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
		
							
								
								
									
										46
									
								
								vendor/code.gitea.io/gitea-vet/checks/imports.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								vendor/code.gitea.io/gitea-vet/checks/imports.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,46 @@
 | 
			
		||||
// 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 checks
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/tools/go/analysis"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var Imports = &analysis.Analyzer{
 | 
			
		||||
	Name: "imports",
 | 
			
		||||
	Doc:  "check for import order",
 | 
			
		||||
	Run:  runImports,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func runImports(pass *analysis.Pass) (interface{}, error) {
 | 
			
		||||
	for _, file := range pass.Files {
 | 
			
		||||
		level := 0
 | 
			
		||||
		for _, im := range file.Imports {
 | 
			
		||||
			var lvl int
 | 
			
		||||
			val := im.Path.Value
 | 
			
		||||
			switch {
 | 
			
		||||
			case importHasPrefix(val, "code.gitea.io"):
 | 
			
		||||
				lvl = 2
 | 
			
		||||
			case strings.Contains(val, "."):
 | 
			
		||||
				lvl = 3
 | 
			
		||||
			default:
 | 
			
		||||
				lvl = 1
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if lvl < level {
 | 
			
		||||
				pass.Reportf(file.Pos(), "Imports are sorted wrong")
 | 
			
		||||
				break
 | 
			
		||||
			}
 | 
			
		||||
			level = lvl
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return nil, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func importHasPrefix(s, p string) bool {
 | 
			
		||||
	return strings.HasPrefix(s, "\""+p)
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user