Showing 207 of 546 total issues
Method DynamicWriter.writeRedundantFooter
has 5 return statements (exceeds 4 allowed). Open
Open
func (w *DynamicWriter) writeRedundantFooter() error {
conectix := uint64(0x636F6E6563746978)
timestamp := time.Now().Unix() - 946684800 // 2000 offset
// CHS crap
Method Writer.writeHeader
has 5 return statements (exceeds 4 allowed). Open
Open
func (w *Writer) writeHeader() error {
header := new(gcpTarPosixHeader)
copy(header.Name[:], []byte("disk.raw")) // gcp requires the file is called disk.raw
octal := strconv.FormatUint(uint64(w.length), 8)
Function build
has 5 return statements (exceeds 4 allowed). Open
Open
func build(ctx context.Context, w io.WriteSeeker, cfg *vcfg.VCFG, args *BuildArgs) error {
log := args.Logger
fsCompiler, err := NewFilesystemCompiler(string(cfg.System.Filesystem), log, args.PackageReader.FS(), nil)
Method Virtualizer.Start
has 5 return statements (exceeds 4 allowed). Open
Open
func (v *Virtualizer) Start() error {
v.logger.Debugf("Starting VM")
switch v.State() {
case "ready":
v.state = virtualizers.Changing
Method StreamOptimizedWriter.Write
has 5 return statements (exceeds 4 allowed). Open
Open
func (w *StreamOptimizedWriter) Write(p []byte) (int, error) {
if w.cursor >= w.h.Size() {
return 0, io.EOF
}
Method precompiler.Precompile
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *precompiler) Precompile(ctx context.Context, fsSize int64) (*compiler, error) {
var err error
c := &compiler{
Method MonitoringOptions.preprocess
has 5 return statements (exceeds 4 allowed). Open
Open
func (opts *MonitoringOptions) preprocess(b Builder) error {
if opts.PreProcessCompleteCallback == nil {
return nil
}
Function treeImageFileRecurse
has a Cognitive Complexity of 22 (exceeds 20 allowed). Consider refactoring. Open
Open
func treeImageFileRecurse(vorteilImage *vdecompiler.IO, ino int, name string) (TreeReport, error) {
var treeOut TreeReport = TreeReport{
Name: name,
Children: make([]TreeReport, 0),
}
- Read upRead up
Cognitive Complexity
Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.
A method's cognitive complexity is based on a few simple rules:
- Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
- Code is considered more complex for each "break in the linear flow of the code"
- Code is considered more complex when "flow breaking structures are nested"
Further reading
Method Provisioner.createImage
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) createImage(length int64, args *provisioners.ProvisionArgs, blob *storage.Blob) error {
imagesClient, err := p.getImagesClient()
if err != nil {
return err
Function pushPackage
has 5 return statements (exceeds 4 allowed). Open
Open
func pushPackage(builder vpkg.Builder, url string, repo []string) error {
// check authentication before doing things
token, err := checkAuthentication()
if err != nil {
Method CLIRemoteManager.updateList
has 5 return statements (exceeds 4 allowed). Open
Open
func (mgr *CLIRemoteManager) updateList(ctx context.Context) (List, error) {
var list List
list = mgr.cache
// request remote manifest
Method CLIRemoteManager.forceUpdate
has 5 return statements (exceeds 4 allowed). Open
Open
func (mgr *CLIRemoteManager) forceUpdate(ctx context.Context) error {
err := ctx.Err()
if err != nil {
return err
Method Provisioner.Provision
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) Provision(args *provisioners.ProvisionArgs) error {
var (
length int64
f *os.File
Method Provisioner.Provision
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) Provision(args *provisioners.ProvisionArgs) error {
projectID := p.keyMap["project_id"].(string)
img, err := p.computeClient.Images.Get(projectID, args.Name).Do()
if err == nil && !args.Force {
Method Provisioner.Validate
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) Validate() error {
if p.cfg.Username == "" || p.cfg.Password == "" || p.cfg.Host == "" {
return fmt.Errorf("username,password and host fields should not be empty")
}
Method Provisioner.uploadBlob
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) uploadBlob(f *os.File, args *provisioners.ProvisionArgs, blob *storage.Blob) error {
var ps int64
if args.Force {
Method CalVers.BestMatch
has 5 return statements (exceeds 4 allowed). Open
Open
func (a CalVers) BestMatch(v CalVer) (CalVer, error) {
idx := sort.Search(a.Len(), func(arg1 int) bool {
return v.LessEq(a[arg1])
})
Function NewCLIRemoteManager
has 5 return statements (exceeds 4 allowed). Open
Open
func NewCLIRemoteManager(url, dir string, logger elog.View) (*CLIRemoteManager, error) {
mgr := new(CLIRemoteManager)
mgr.log = logger
mgr.url = url
mgr.dir = dir
Method Provisioner.Provision
has 5 return statements (exceeds 4 allowed). Open
Open
func (p *Provisioner) Provision(args *provisioners.ProvisionArgs) error {
var err error
var imageID *string
p.args = *args
Method IO.readSuperblock
has 5 return statements (exceeds 4 allowed). Open
Open
func (iio *IO) readSuperblock(index int) (*ext.Superblock, error) {
entry, err := iio.GPTEntry(UTF16toString(vimg.RootPartitionName))
if err != nil {
return nil, err