Preparing report...

Report for github.com/viant/afsc

A+    Excellent!    Found 40 issues across 68 files

Tweet

gofmt97%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo98%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

    • afsc/s3/upload.go
    • Line 37: warning: cyclomatic complexity 20 of function (*storager).upload() is high (> 15) (gocyclo)

golint94%

Golint is a linter for Go source code.

    • afsc/gs/delete.go
    • Line 50: warning: if block ends with a return statement, so drop this else and outdent its block (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign44%

IneffAssign detects ineffectual assignments in Go code.

    • afsc/s3/list.go
    • Line 85: warning: s.ListObjectsPagesWithContext undefined (type *storager has no field or method ListObjectsPagesWithContext) (ineffassign)
    • Line 85: warning: s.ListObjectsPagesWithContext undefined (type *storager has no field or method ListObjectsPagesWithContext) (ineffassign)
    • afsc/s3/storager.go
    • Line 128: warning: result.Config undefined (type *storager has no field or method Config, but does have config) (ineffassign)
    • Line 128: warning: result.Config undefined (type *storager has no field or method Config, but does have config) (ineffassign)
    • afsc/gs/helper.go
    • Line 4: warning: cannot find package "." in: (ineffassign)
    • Line 5: warning: cannot find package "." in: (ineffassign)
    • Line 4: warning: could not import github.com/viant/afs/base (invalid package name: "") (ineffassign)
    • Line 5: warning: could not import google.golang.org/api/googleapi (invalid package name: "") (ineffassign)
    • Line 4: warning: could not import github.com/viant/afs/base (invalid package name: "") (ineffassign)
    • Line 5: warning: could not import google.golang.org/api/googleapi (invalid package name: "") (ineffassign)
    • afsc/gs/copy.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/viant/afs/file (invalid package name: "") (ineffassign)
    • Line 52: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 9: warning: "google.golang.org/api/storage/v1" imported but not used as gstorage (ineffassign)
    • Line 6: warning: could not import github.com/viant/afs/file (invalid package name: "") (ineffassign)
    • Line 52: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 9: warning: "google.golang.org/api/storage/v1" imported but not used as gstorage (ineffassign)
    • afsc/gs/option.go
    • Line 3: warning: cannot find package "." in: (ineffassign)
    • Line 3: warning: could not import google.golang.org/api/option (invalid package name: "") (ineffassign)
    • Line 3: warning: could not import google.golang.org/api/option (invalid package name: "") (ineffassign)
    • afsc/gs/create.go
    • Line 37: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • Line 37: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • afsc/s3/init.go
    • Line 3: warning: cannot find package "." in: (ineffassign)
    • Line 3: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 3: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • afsc/gs/storager.go
    • Line 32: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • Line 32: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • afsc/s3/example_test.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/aws/aws-sdk-go/aws (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/viant/afsc/gs (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/viant/afsc/s3 (invalid package name: "") (ineffassign)
    • afsc/s3/auth.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/aws/aws-sdk-go/aws (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/aws/credentials (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/viant/afs/storage (invalid package name: "") (ineffassign)
    • Line 6: warning: could not import github.com/aws/aws-sdk-go/aws (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/aws/credentials (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/viant/afs/storage (invalid package name: "") (ineffassign)
    • afsc/s3/presign.go
    • Line 17: warning: s.GetObjectRequest undefined (type *storager has no field or method GetObjectRequest) (ineffassign)
    • Line 17: warning: s.GetObjectRequest undefined (type *storager has no field or method GetObjectRequest) (ineffassign)
    • afsc/s3/copy_test.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/stretchr/testify/assert (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/asset (invalid package name: "") (ineffassign)
    • Line 55: warning: mgr.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 72: warning: mgr.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • afsc/gs/upload.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/object (invalid package name: "") (ineffassign)
    • Line 59: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/object (invalid package name: "") (ineffassign)
    • Line 59: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • afsc/gs/provider.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import google.golang.org/api/transport/http (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import google.golang.org/api/transport/http (invalid package name: "") (ineffassign)
    • afsc/gs/move.go
    • Line 52: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 9: warning: "google.golang.org/api/storage/v1" imported but not used as gstorage (ineffassign)
    • Line 52: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 9: warning: "google.golang.org/api/storage/v1" imported but not used as gstorage (ineffassign)
    • afsc/example_test.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/viant/afsc/gs (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afsc/s3 (invalid package name: "") (ineffassign)
    • afsc/gs/list.go
    • Line 39: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 39: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • afsc/gs/example_test.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/viant/afsc/gs (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import google.golang.org/api/option (invalid package name: "") (ineffassign)
    • afsc/gs/client.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs/storage (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import golang.org/x/oauth2 (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import google.golang.org/api/storage/v1 (invalid package name: "") (ineffassign)
    • Line 6: warning: could not import github.com/viant/afs/option (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs/storage (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import golang.org/x/oauth2 (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import google.golang.org/api/storage/v1 (invalid package name: "") (ineffassign)
    • afsc/s3/upload.go
    • Line 72: warning: s.PutObjectWithContext undefined (type *storager has no field or method PutObjectWithContext) (ineffassign)
    • Line 79: warning: s.PutObjectWithContext undefined (type *storager has no field or method PutObjectWithContext) (ineffassign)
    • Line 72: warning: s.PutObjectWithContext undefined (type *storager has no field or method PutObjectWithContext) (ineffassign)
    • Line 79: warning: s.PutObjectWithContext undefined (type *storager has no field or method PutObjectWithContext) (ineffassign)
    • afsc/gs/init.go
    • Line 4: warning: cannot find package "." in: (ineffassign)
    • Line 5: warning: cannot find package "." in: (ineffassign)
    • Line 4: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 5: warning: could not import github.com/viant/toolbox (invalid package name: "") (ineffassign)
    • Line 4: warning: could not import github.com/viant/afs (invalid package name: "") (ineffassign)
    • Line 5: warning: could not import github.com/viant/toolbox (invalid package name: "") (ineffassign)
    • afsc/gs/jwt.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import golang.org/x/oauth2/google (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import golang.org/x/oauth2/jwt (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import golang.org/x/oauth2/google (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import golang.org/x/oauth2/jwt (invalid package name: "") (ineffassign)
    • afsc/gs/move_test.go
    • Line 49: warning: mgr.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 58: warning: mgr.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • afsc/s3/copy.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/service/s3 (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/service/s3 (invalid package name: "") (ineffassign)
    • afsc/gs/open.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/http (invalid package name: "") (ineffassign)
    • Line 24: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/http (invalid package name: "") (ineffassign)
    • Line 24: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • afsc/gs/copy_test.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/stretchr/testify/assert (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/asset (invalid package name: "") (ineffassign)
    • Line 53: warning: mgr.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 62: warning: mgr.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • afsc/s3/list_test.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/matcher (invalid package name: "") (ineffassign)
    • afsc/s3/move_test.go
    • Line 52: warning: mgr.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 62: warning: mgr.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • afsc/gs/get.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs/option/content (invalid package name: "") (ineffassign)
    • Line 26: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 7: warning: could not import github.com/viant/afs/option/content (invalid package name: "") (ineffassign)
    • Line 26: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • afsc/gs/reader.go
    • Line 16: warning: undeclared name: storage (ineffassign)
    • Line 71: warning: undeclared name: storage (ineffassign)
    • Line 8: warning: "google.golang.org/api/storage/v1" imported but not used (ineffassign)
    • Line 16: warning: undeclared name: storage (ineffassign)
    • Line 71: warning: undeclared name: storage (ineffassign)
    • Line 8: warning: "google.golang.org/api/storage/v1" imported but not used (ineffassign)
    • afsc/s3/get.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/file (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/viant/afs/option/content (invalid package name: "") (ineffassign)
    • Line 23: warning: s.GetObject undefined (type *storager has no field or method GetObject) (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/file (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/viant/afs/option/content (invalid package name: "") (ineffassign)
    • Line 23: warning: s.GetObject undefined (type *storager has no field or method GetObject) (ineffassign)
    • afsc/s3/open.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/aws/session (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/aws/aws-sdk-go/service/s3/s3manager (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/aws/aws-sdk-go/aws/session (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/aws/aws-sdk-go/service/s3/s3manager (invalid package name: "") (ineffassign)
    • afsc/gs/manager.go
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: could not import github.com/viant/afs/url (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/viant/afsc/logger (invalid package name: "") (ineffassign)
    • Line 23: warning: m.Options undefined (type *manager has no field or method Options) (ineffassign)
    • Line 28: warning: m.List undefined (type *manager has no field or method List) (ineffassign)
    • Line 33: warning: m.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • Line 39: warning: m.Upload undefined (type *manager has no field or method Upload) (ineffassign)
    • Line 44: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 75: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 97: warning: m.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 11: warning: could not import github.com/viant/afs/url (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/viant/afsc/logger (invalid package name: "") (ineffassign)
    • Line 23: warning: m.Options undefined (type *manager has no field or method Options) (ineffassign)
    • Line 28: warning: m.List undefined (type *manager has no field or method List) (ineffassign)
    • Line 33: warning: m.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • Line 39: warning: m.Upload undefined (type *manager has no field or method Upload) (ineffassign)
    • Line 44: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 75: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 97: warning: m.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • afsc/gs/delete.go
    • Line 15: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • Line 20: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • Line 15: warning: s.Buckets undefined (type *storager has no field or method Buckets) (ineffassign)
    • Line 20: warning: s.Objects undefined (type *storager has no field or method Objects) (ineffassign)
    • afsc/s3/manager.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 13: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/aws/aws-sdk-go/aws/awserr (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/base (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/viant/afs/url (invalid package name: "") (ineffassign)
    • Line 13: warning: could not import github.com/viant/afsc/logger (invalid package name: "") (ineffassign)
    • Line 23: warning: m.Options undefined (type *manager has no field or method Options) (ineffassign)
    • Line 28: warning: m.List undefined (type *manager has no field or method List) (ineffassign)
    • Line 33: warning: m.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • Line 39: warning: m.Upload undefined (type *manager has no field or method Upload) (ineffassign)
    • Line 44: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 90: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 112: warning: m.Delete undefined (type *manager has no field or method Delete) (ineffassign)
    • Line 6: warning: could not import github.com/aws/aws-sdk-go/aws/awserr (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/viant/afs/base (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/viant/afs/url (invalid package name: "") (ineffassign)
    • Line 13: warning: could not import github.com/viant/afsc/logger (invalid package name: "") (ineffassign)
    • Line 23: warning: m.Options undefined (type *manager has no field or method Options) (ineffassign)
    • Line 28: warning: m.List undefined (type *manager has no field or method List) (ineffassign)
    • Line 33: warning: m.OpenURL undefined (type *manager has no field or method OpenURL) (ineffassign)
    • Line 39: warning: m.Upload undefined (type *manager has no field or method Upload) (ineffassign)
    • Line 44: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 90: warning: m.Storager undefined (type *manager has no field or method Storager) (ineffassign)
    • Line 112: warning: m.Delete undefined (type *manager has no field or method Delete) (ineffassign)

misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!