Preparing report...

Report for github.com/cuelang/cue

A+    Excellent!    Found 139 issues across 404 files

Tweet

gofmt99%

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!


gocyclo81%

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.

    • cue/internal/core/compile/compile.go
    • Line 804: warning: cyclomatic complexity 42 of function (*compiler).expr() is high (> 15) (gocyclo)
    • Line 313: warning: cyclomatic complexity 29 of function (*compiler).resolve() is high (> 15) (gocyclo)
    • Line 532: warning: cyclomatic complexity 28 of function (*compiler).decl() is high (> 15) (gocyclo)
    • cue/cmd/cue/cmd/common.go
    • Line 530: warning: cyclomatic complexity 39 of function parseArgs() is high (> 15) (gocyclo)
    • Line 446: warning: cyclomatic complexity 18 of function (*buildPlan).getDecoders() is high (> 15) (gocyclo)
    • cue/cue/scanner/scanner.go
    • Line 752: warning: cyclomatic complexity 75 of function (*Scanner).Scan() is high (> 15) (gocyclo)
    • Line 353: warning: cyclomatic complexity 25 of function (*Scanner).scanNumber() is high (> 15) (gocyclo)
    • cue/pkg/gen/gen.go
    • Line 343: warning: cyclomatic complexity 17 of function (*generator).goKind() is high (> 15) (gocyclo)
    • Line 267: warning: cyclomatic complexity 17 of function (*generator).genFun() is high (> 15) (gocyclo)
    • cue/cmd/cue/cmd/get_go.go
    • Line 1139: warning: cyclomatic complexity 37 of function (*extractor).addFields() is high (> 15) (gocyclo)
    • Line 667: warning: cyclomatic complexity 33 of function (*extractor).reportDecl() is high (> 15) (gocyclo)
    • Line 451: warning: cyclomatic complexity 27 of function (*extractor).extractPkg() is high (> 15) (gocyclo)
    • Line 1005: warning: cyclomatic complexity 26 of function (*extractor).makeType() is high (> 15) (gocyclo)
    • Line 913: warning: cyclomatic complexity 23 of function supportedType() is high (> 15) (gocyclo)
    • Line 851: warning: cyclomatic complexity 18 of function makeDoc() is high (> 15) (gocyclo)
    • Line 290: warning: cyclomatic complexity 17 of function initInterfaces() is high (> 15) (gocyclo)
    • cue/cmd/cue/cmd/orphans.go
    • Line 158: warning: cyclomatic complexity 32 of function placeOrphans() is high (> 15) (gocyclo)
    • Line 78: warning: cyclomatic complexity 27 of function (*buildPlan).placeOrphans() is high (> 15) (gocyclo)
    • cue/cmd/cue/cmd/import.go
    • Line 328: warning: cyclomatic complexity 19 of function protoMode() is high (> 15) (gocyclo)
    • Line 268: warning: cyclomatic complexity 16 of function runImport() is high (> 15) (gocyclo)
    • cue/internal/core/adt/expr.go
    • Line 460: warning: cyclomatic complexity 40 of function (*BoundExpr).evaluate() is high (> 15) (gocyclo)
    • Line 952: warning: cyclomatic complexity 16 of function (*SliceExpr).evaluate() is high (> 15) (gocyclo)
    • Line 91: warning: cyclomatic complexity 16 of function (*StructLit).Init() is high (> 15) (gocyclo)
    • cue/pkg/path/path.go
    • Line 100: warning: cyclomatic complexity 27 of function clean() is high (> 15) (gocyclo)
    • Line 271: warning: cyclomatic complexity 20 of function Rel() is high (> 15) (gocyclo)
    • cue/encoding/protobuf/parse.go
    • Line 39: warning: cyclomatic complexity 25 of function (*Extractor).parse() is high (> 15) (gocyclo)
    • Line 578: warning: cyclomatic complexity 18 of function (*protoConverter).enum() is high (> 15) (gocyclo)
    • cue/cue/parser/parser.go
    • Line 827: warning: cyclomatic complexity 31 of function (*parser).parseField() is high (> 15) (gocyclo)
    • Line 973: warning: cyclomatic complexity 16 of function (*parser).parseLabel() is high (> 15) (gocyclo)
    • Line 1292: warning: cyclomatic complexity 16 of function (*parser).checkExpr() is high (> 15) (gocyclo)
    • cue/internal/core/adt/context.go
    • Line 705: warning: cyclomatic complexity 38 of function (*OpContext).lookup() is high (> 15) (gocyclo)
    • Line 633: warning: cyclomatic complexity 20 of function (*OpContext).unifyNode() is high (> 15) (gocyclo)
    • Line 560: warning: cyclomatic complexity 19 of function (*OpContext).evalState() is high (> 15) (gocyclo)
    • Line 870: warning: cyclomatic complexity 17 of function (*OpContext).node() is high (> 15) (gocyclo)
    • cue/cue/format/node.go
    • Line 528: warning: cyclomatic complexity 41 of function (*formatter).exprRaw() is high (> 15) (gocyclo)
    • Line 268: warning: cyclomatic complexity 34 of function (*formatter).decl() is high (> 15) (gocyclo)
    • Line 105: warning: cyclomatic complexity 22 of function (*formatter).walkDeclList() is high (> 15) (gocyclo)
    • Line 714: warning: cyclomatic complexity 20 of function walkBinary() is high (> 15) (gocyclo)
    • cue/internal/core/adt/eval.go
    • Line 1462: warning: cyclomatic complexity 49 of function (*nodeContext).addValueConjunct() is high (> 15) (gocyclo)
    • Line 1984: warning: cyclomatic complexity 40 of function (*nodeContext).addLists() is high (> 15) (gocyclo)
    • Line 167: warning: cyclomatic complexity 38 of function (*OpContext).Unify() is high (> 15) (gocyclo)
    • Line 425: warning: cyclomatic complexity 34 of function (*nodeContext).postDisjunct() is high (> 15) (gocyclo)
    • Line 1204: warning: cyclomatic complexity 18 of function (*nodeContext).evalExpr() is high (> 15) (gocyclo)
    • Line 113: warning: cyclomatic complexity 17 of function (*OpContext).evaluate() is high (> 15) (gocyclo)
    • Line 1680: warning: cyclomatic complexity 17 of function (*nodeContext).addStruct() is high (> 15) (gocyclo)
    • Line 1281: warning: cyclomatic complexity 16 of function (*nodeContext).addVertexConjuncts() is high (> 15) (gocyclo)

golint77%

Golint is a linter for Go source code.

    • cue/internal/core/runtime/imports.go
    • Line 26: warning: exported type PackageFunc should have comment or be unexported (golint)
    • Line 28: warning: exported function RegisterBuiltin should have comment or be unexported (golint)
    • Line 45: warning: exported var SharedRuntime should have comment or be unexported (golint)
    • Line 88: warning: exported method Runtime.AddInst should have comment or be unexported (golint)
    • Line 88: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • Line 100: warning: exported method Runtime.GetInstanceFromNode should have comment or be unexported (golint)
    • Line 100: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • Line 104: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • Line 108: warning: exported method Runtime.LoadImport should have comment or be unexported (golint)
    • Line 108: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • cue/internal/core/adt/adt.go
    • Line 22: warning: exported function Resolve should have comment or be unexported (golint)
    • Line 121: warning: exported type YieldFunc should have comment or be unexported (golint)
    • Line 146: warning: exported method Vertex.Concreteness should have comment or be unexported (golint)
    • Line 160: warning: exported method NodeLink.Concreteness should have comment or be unexported (golint)
    • Line 162: warning: exported method Conjunction.Concreteness should have comment or be unexported (golint)
    • Line 163: warning: exported method Disjunction.Concreteness should have comment or be unexported (golint)
    • Line 164: warning: exported method BoundValue.Concreteness should have comment or be unexported (golint)
    • Line 166: warning: exported method Builtin.Concreteness should have comment or be unexported (golint)
    • Line 167: warning: exported method BuiltinValidator.Concreteness should have comment or be unexported (golint)
    • Line 171: warning: exported method Bottom.Concreteness should have comment or be unexported (golint)
    • Line 172: warning: exported method Null.Concreteness should have comment or be unexported (golint)
    • Line 173: warning: exported method Bool.Concreteness should have comment or be unexported (golint)
    • Line 174: warning: exported method Num.Concreteness should have comment or be unexported (golint)
    • Line 175: warning: exported method String.Concreteness should have comment or be unexported (golint)
    • Line 176: warning: exported method Bytes.Concreteness should have comment or be unexported (golint)
    • Line 177: warning: exported method Top.Concreteness should have comment or be unexported (golint)
    • Line 178: warning: exported method BasicType.Concreteness should have comment or be unexported (golint)
    • cue/internal/core/adt/errors.go
    • Line 46: warning: comment on exported const EvalError should be of the form "EvalError ..." (golint)
    • Line 49: warning: comment on exported const UserError should be of the form "UserError ..." (golint)
    • Line 66: warning: comment on exported const CycleError should be of the form "CycleError ..." (golint)
    • Line 103: warning: exported method Bottom.Source should have comment or be unexported (golint)
    • Line 104: warning: exported method Bottom.Kind should have comment or be unexported (golint)
    • Line 105: warning: exported method Bottom.Specialize should have comment or be unexported (golint)
    • Line 107: warning: exported method Bottom.IsIncomplete should have comment or be unexported (golint)
    • Line 107: warning: receiver name b should be consistent with previous receiver name x for Bottom (golint)
    • Line 217: warning: exported method ValueError.AddPosition should have comment or be unexported (golint)
    • Line 231: warning: exported method ValueError.AddClosedPositions should have comment or be unexported (golint)
    • Line 253: warning: exported method OpContext.AddPosition should have comment or be unexported (golint)
    • Line 259: warning: exported method OpContext.Newf should have comment or be unexported (golint)
    • Line 274: warning: exported method OpContext.NewPosf should have comment or be unexported (golint)
    • Line 306: warning: receiver name e should be consistent with previous receiver name v for ValueError (golint)
    • Line 310: warning: exported method ValueError.Position should have comment or be unexported (golint)
    • Line 310: warning: receiver name e should be consistent with previous receiver name v for ValueError (golint)
    • Line 314: warning: exported method ValueError.InputPositions should have comment or be unexported (golint)
    • Line 314: warning: receiver name e should be consistent with previous receiver name v for ValueError (golint)
    • Line 318: warning: exported method ValueError.Path should have comment or be unexported (golint)
    • Line 318: warning: receiver name e should be consistent with previous receiver name v for ValueError (golint)
    • cue/cue/token/position.go
    • Line 80: warning: exported method Pos.Line should have comment or be unexported (golint)
    • Line 87: warning: exported method Pos.Column should have comment or be unexported (golint)
    • Line 94: warning: exported method Pos.Filename should have comment or be unexported (golint)
    • Line 101: warning: exported method Pos.Position should have comment or be unexported (golint)
    • Line 151: warning: exported method RelPos.Pos should have comment or be unexported (golint)
    • Line 161: warning: exported method Pos.Before should have comment or be unexported (golint)
    • Line 186: warning: exported method Pos.WithRel should have comment or be unexported (golint)
    • Line 190: warning: exported method Pos.RelPos should have comment or be unexported (golint)
    • cue/internal/core/runtime/runtime.go
    • Line 28: warning: exported method Runtime.SetBuildData should have comment or be unexported (golint)
    • Line 32: warning: exported method Runtime.BuildData should have comment or be unexported (golint)
    • Line 45: warning: exported method Runtime.Init should have comment or be unexported (golint)
    • cue/pkg/crypto/md5/md5.go
    • Line 23: warning: comment on exported const Size should be of the form "Size ..." (golint)
    • Line 26: warning: comment on exported const BlockSize should be of the form "BlockSize ..." (golint)
    • cue/pkg/internal/context.go
    • Line 38: warning: exported method CallCtxt.Pos should have comment or be unexported (golint)
    • Line 42: warning: exported method CallCtxt.Name should have comment or be unexported (golint)
    • Line 51: warning: exported method CallCtxt.Value should have comment or be unexported (golint)
    • Line 61: warning: exported method CallCtxt.Struct should have comment or be unexported (golint)
    • Line 71: warning: exported method CallCtxt.Int should have comment or be unexported (golint)
    • Line 72: warning: exported method CallCtxt.Int8 should have comment or be unexported (golint)
    • Line 73: warning: exported method CallCtxt.Int16 should have comment or be unexported (golint)
    • Line 74: warning: exported method CallCtxt.Int32 should have comment or be unexported (golint)
    • Line 75: warning: exported method CallCtxt.Rune should have comment or be unexported (golint)
    • Line 76: warning: exported method CallCtxt.Int64 should have comment or be unexported (golint)
    • Line 94: warning: exported method CallCtxt.Uint should have comment or be unexported (golint)
    • Line 95: warning: exported method CallCtxt.Uint8 should have comment or be unexported (golint)
    • Line 96: warning: exported method CallCtxt.Byte should have comment or be unexported (golint)
    • Line 97: warning: exported method CallCtxt.Uint16 should have comment or be unexported (golint)
    • Line 98: warning: exported method CallCtxt.Uint32 should have comment or be unexported (golint)
    • Line 99: warning: exported method CallCtxt.Uint64 should have comment or be unexported (golint)
    • Line 116: warning: exported method CallCtxt.Decimal should have comment or be unexported (golint)
    • Line 125: warning: exported method CallCtxt.Float64 should have comment or be unexported (golint)
    • Line 135: warning: exported method CallCtxt.BigInt should have comment or be unexported (golint)
    • Line 147: warning: exported method CallCtxt.BigFloat should have comment or be unexported (golint)
    • Line 176: warning: exported method CallCtxt.Bytes should have comment or be unexported (golint)
    • Line 186: warning: exported method CallCtxt.Reader should have comment or be unexported (golint)
    • Line 197: warning: exported method CallCtxt.Bool should have comment or be unexported (golint)
    • Line 207: warning: exported method CallCtxt.List should have comment or be unexported (golint)
    • Line 221: warning: exported method CallCtxt.Iter should have comment or be unexported (golint)
    • Line 255: warning: exported method CallCtxt.DecimalList should have comment or be unexported (golint)
    • Line 293: warning: exported method CallCtxt.StringList should have comment or be unexported (golint)
    • cue/internal/core/runtime/build.go
    • Line 30: warning: exported type Config should have comment or be unexported (golint)
    • Line 92: warning: exported method Runtime.Compile should have comment or be unexported (golint)
    • Line 92: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • Line 106: warning: exported method Runtime.CompileFile should have comment or be unexported (golint)
    • Line 106: warning: receiver name r should be consistent with previous receiver name x for Runtime (golint)
    • cue/encoding/protobuf/pbinternal/attribute.go
    • Line 25: warning: exported type CompositeType should have comment or be unexported (golint)
    • Line 28: warning: exported const Normal should have comment (or a comment on this block) or be unexported (golint)
    • Line 33: warning: exported type ValueType should have comment or be unexported (golint)
    • Line 36: warning: exported const Unknown should have comment (or a comment on this block) or be unexported (golint)
    • Line 45: warning: exported type Info should have comment or be unexported (golint)
    • Line 62: warning: exported function FromIter should have comment or be unexported (golint)
    • Line 66: warning: exported function FromValue should have comment or be unexported (golint)
    • cue/internal/attrs.go
    • Line 63: warning: exported type KeyValue should have comment or be unexported (golint)
    • Line 68: warning: exported method KeyValue.Text should have comment or be unexported (golint)
    • Line 69: warning: exported method KeyValue.Key should have comment or be unexported (golint)
    • Line 77: warning: exported method KeyValue.Value should have comment or be unexported (golint)
    • Line 145: warning: exported function ParseAttrBody should have comment or be unexported (golint)
    • cue/internal/core/adt/decimal.go
    • Line 30: warning: exported method Num.Impl should have comment or be unexported (golint)
    • Line 34: warning: exported method Num.Negative should have comment or be unexported (golint)
    • Line 38: warning: exported method Num.Cmp should have comment or be unexported (golint)
    • Line 38: warning: receiver name a should be consistent with previous receiver name n for Num (golint)
    • Line 42: warning: exported method OpContext.Add should have comment or be unexported (golint)
    • Line 46: warning: exported method OpContext.Sub should have comment or be unexported (golint)
    • Line 50: warning: exported method OpContext.Mul should have comment or be unexported (golint)
    • Line 54: warning: exported method OpContext.Quo should have comment or be unexported (golint)
    • Line 62: warning: exported method OpContext.Pow should have comment or be unexported (golint)
    • Line 88: warning: exported method OpContext.IntDiv should have comment or be unexported (golint)
    • Line 92: warning: exported method OpContext.IntMod should have comment or be unexported (golint)
    • Line 96: warning: exported method OpContext.IntQuo should have comment or be unexported (golint)
    • Line 100: warning: exported method OpContext.IntRem should have comment or be unexported (golint)
    • cue/internal/internal.go
    • Line 67: warning: exported type PkgInfo should have comment or be unexported (golint)
    • Line 78: warning: exported function GetPackageInfo should have comment or be unexported (golint)
    • Line 93: warning: comment on exported function PackageInfo should be of the form "PackageInfo ..." (golint)
    • Line 102: warning: exported function SetPackage should have comment or be unexported (golint)
    • Line 169: warning: exported function FileComment should have comment or be unexported (golint)
    • Line 200: warning: exported function NewAttr should have comment or be unexported (golint)
    • Line 284: warning: exported function IsBulkField should have comment or be unexported (golint)
    • Line 293: warning: exported function IsDef should have comment or be unexported (golint)
    • Line 297: warning: exported function IsHidden should have comment or be unexported (golint)
    • Line 301: warning: exported function IsDefOrHidden should have comment or be unexported (golint)
    • Line 305: warning: exported function IsDefinition should have comment or be unexported (golint)
    • Line 317: warning: exported function IsRegularField should have comment or be unexported (golint)
    • Line 337: warning: exported function EmbedStruct should have comment or be unexported (golint)
    • Line 397: warning: exported var ErrInexact should have comment or be unexported (golint)
    • Line 399: warning: exported function DecorateError should have comment or be unexported (golint)
    • cue/internal/core/runtime/errors.go
    • Line 44: warning: receiver name e should be consistent with previous receiver name n for nodeError (golint)
    • Line 48: warning: receiver name e should be consistent with previous receiver name n for nodeError (golint)
    • Line 50: warning: receiver name e should be consistent with previous receiver name n for nodeError (golint)
    • cue/internal/core/export/expr.go
    • Line 85: warning: receiver name x should be consistent with previous receiver name e for exporter (golint)
    • Line 310: warning: receiver name e should be consistent with previous receiver name c for conjuncts (golint)
    • cue/internal/core/adt/expr.go
    • Line 59: warning: exported method StructLit.IsFile should have comment or be unexported (golint)
    • Line 64: warning: exported type FieldInfo should have comment or be unexported (golint)
    • Line 69: warning: exported method StructLit.HasOptional should have comment or be unexported (golint)
    • Line 69: warning: receiver name x should be consistent with previous receiver name o for StructLit (golint)
    • Line 73: warning: exported method StructLit.Source should have comment or be unexported (golint)
    • Line 73: warning: receiver name x should be consistent with previous receiver name o for StructLit (golint)
    • Line 75: warning: receiver name x should be consistent with previous receiver name o for StructLit (golint)
    • Line 86: warning: comment on exported method StructLit.MarkField should be of the form "MarkField ..." (golint)
    • Line 91: warning: exported method StructLit.Init should have comment or be unexported (golint)
    • Line 158: warning: exported method StructLit.OptionalTypes should have comment or be unexported (golint)
    • Line 162: warning: exported method StructLit.IsOptional should have comment or be unexported (golint)
    • Line 194: warning: exported method Field.Source should have comment or be unexported (golint)
    • Line 211: warning: exported method OptionalField.Source should have comment or be unexported (golint)
    • Line 229: warning: exported method BulkOptionalField.Source should have comment or be unexported (golint)
    • Line 245: warning: exported method Ellipsis.Source should have comment or be unexported (golint)
    • Line 263: warning: exported method DynamicField.IsOptional should have comment or be unexported (golint)
    • Line 267: warning: exported method DynamicField.Source should have comment or be unexported (golint)
    • Line 285: warning: exported method ListLit.Source should have comment or be unexported (golint)
    • Line 305: warning: exported method Null.Source should have comment or be unexported (golint)
    • Line 306: warning: exported method Null.Kind should have comment or be unexported (golint)
    • Line 314: warning: exported method Bool.Source should have comment or be unexported (golint)
    • Line 315: warning: exported method Bool.Kind should have comment or be unexported (golint)
    • Line 341: warning: exported method Num.Source should have comment or be unexported (golint)
    • Line 342: warning: exported method Num.Kind should have comment or be unexported (golint)
    • Line 362: warning: exported method String.Source should have comment or be unexported (golint)
    • Line 363: warning: exported method String.Kind should have comment or be unexported (golint)
    • Line 372: warning: exported method Bytes.Source should have comment or be unexported (golint)
    • Line 373: warning: exported method Bytes.Kind should have comment or be unexported (golint)
    • Line 378: warning: exported type ListMarker should have comment or be unexported (golint)
    • Line 383: warning: exported method ListMarker.Source should have comment or be unexported (golint)
    • Line 384: warning: exported method ListMarker.Kind should have comment or be unexported (golint)
    • Line 387: warning: exported type StructMarker should have comment or be unexported (golint)
    • Line 393: warning: exported method StructMarker.Source should have comment or be unexported (golint)
    • Line 394: warning: exported method StructMarker.Kind should have comment or be unexported (golint)
    • Line 400: warning: exported method Top.Source should have comment or be unexported (golint)
    • Line 406: warning: exported method Top.Kind should have comment or be unexported (golint)
    • Line 421: warning: exported method BasicType.Source should have comment or be unexported (golint)
    • Line 427: warning: exported method BasicType.Kind should have comment or be unexported (golint)
    • Line 453: warning: exported method BoundExpr.Source should have comment or be unexported (golint)
    • Line 586: warning: exported method BoundValue.Source should have comment or be unexported (golint)
    • Line 587: warning: exported method BoundValue.Kind should have comment or be unexported (golint)
    • Line 685: warning: exported method NodeLink.Kind should have comment or be unexported (golint)
    • Line 688: warning: exported method NodeLink.Source should have comment or be unexported (golint)
    • Line 704: warning: exported method FieldReference.Source should have comment or be unexported (golint)
    • Line 727: warning: exported method ValueReference.Source should have comment or be unexported (golint)
    • Line 753: warning: exported method LabelReference.Source should have comment or be unexported (golint)
    • Line 792: warning: exported method DynamicReference.Source should have comment or be unexported (golint)
    • Line 820: warning: exported method ImportReference.Source should have comment or be unexported (golint)
    • Line 844: warning: exported method LetReference.Source should have comment or be unexported (golint)
    • Line 878: warning: exported method SelectorExpr.Source should have comment or be unexported (golint)
    • Line 909: warning: exported method IndexExpr.Source should have comment or be unexported (golint)
    • Line 945: warning: exported method SliceExpr.Source should have comment or be unexported (golint)
    • Line 1035: warning: exported method Interpolation.Source should have comment or be unexported (golint)
    • Line 1078: warning: exported method UnaryExpr.Source should have comment or be unexported (golint)
    • Line 1140: warning: exported method BinaryExpr.Source should have comment or be unexported (golint)
    • Line 1250: warning: exported method CallExpr.Source should have comment or be unexported (golint)
    • Line 1328: warning: exported type Param should have comment or be unexported (golint)
    • Line 1347: warning: exported method Builtin.WriteName should have comment or be unexported (golint)
    • Line 1356: warning: exported method Builtin.BareValidator should have comment or be unexported (golint)
    • Line 1366: warning: receiver name b should be consistent with previous receiver name x for Builtin (golint)
    • Line 1434: warning: exported method Builtin.Source should have comment or be unexported (golint)
    • Line 1447: warning: exported method BuiltinValidator.Source should have comment or be unexported (golint)
    • Line 1454: warning: exported method BuiltinValidator.Pos should have comment or be unexported (golint)
    • Line 1461: warning: exported method BuiltinValidator.Kind should have comment or be unexported (golint)
    • Line 1521: warning: comment on exported type DisjunctionExpr should be of the form "DisjunctionExpr ..." (with optional leading article) (golint)
    • Line 1536: warning: exported method DisjunctionExpr.Source should have comment or be unexported (golint)
    • Line 1559: warning: exported method Conjunction.Source should have comment or be unexported (golint)
    • Line 1560: warning: exported method Conjunction.Kind should have comment or be unexported (golint)
    • Line 1568: warning: comment on exported type Disjunction should be of the form "Disjunction ..." (with optional leading article) (golint)
    • Line 1584: warning: exported method Disjunction.Source should have comment or be unexported (golint)
    • Line 1585: warning: exported method Disjunction.Kind should have comment or be unexported (golint)
    • Line 1606: warning: exported method ForClause.Source should have comment or be unexported (golint)
    • Line 1664: warning: exported method IfClause.Source should have comment or be unexported (golint)
    • Line 1688: warning: exported method LetClause.Source should have comment or be unexported (golint)
    • Line 1713: warning: exported method ValueClause.Source should have comment or be unexported (golint)
    • cue/internal/core/adt/kind.go
    • Line 28: warning: exported const BottomLevel should have comment (or a comment on this block) or be unexported (golint)
    • Line 37: warning: comment on exported const Type should be of the form "Type ..." (golint)
    • Line 60: warning: exported const NullKind should have comment (or a comment on this block) or be unexported (golint)
    • cue/cue/build/file.go
    • Line 36: warning: exported const CUE should have comment (or a comment on this block) or be unexported (golint)
    • Line 70: warning: exported const JSONSchema should have comment (or a comment on this block) or be unexported (golint)
    • Line 79: warning: exported const Full should have comment (or a comment on this block) or be unexported (golint)
    • cue/cue/types.go
    • Line 47: warning: exported const BottomKind should have comment or be unexported (golint)
    • Line 82: warning: exported const TopKind should have comment (or a comment on this block) or be unexported (golint)
    • Line 559: warning: don't use underscores in Go names; struct field parent_ should be parent (golint)
    • cue/internal/core/adt/eval.go
    • Line 15: warning: package comment should be of the form "Package adt ..." (golint)
    • Line 46: warning: exported type Stats should have comment or be unexported (golint)
    • Line 82: warning: exported method OpContext.Stats should have comment or be unexported (golint)
    • cue/cue/ast/ast.go
    • Line 189: warning: exported method Comment.Comments should have comment or be unexported (golint)
    • Line 190: warning: exported method Comment.AddComment should have comment or be unexported (golint)
    • Line 193: warning: exported method Comment.Pos should have comment or be unexported (golint)
    • Line 195: warning: exported method Comment.End should have comment or be unexported (golint)
    • Line 214: warning: exported method CommentGroup.Pos should have comment or be unexported (golint)
    • Line 216: warning: exported method CommentGroup.End should have comment or be unexported (golint)
    • Line 218: warning: exported method CommentGroup.Comments should have comment or be unexported (golint)
    • Line 219: warning: exported method CommentGroup.AddComment should have comment or be unexported (golint)
    • Line 300: warning: exported method Attribute.Pos should have comment or be unexported (golint)
    • Line 302: warning: exported method Attribute.End should have comment or be unexported (golint)
    • Line 304: warning: exported method Attribute.Split should have comment or be unexported (golint)
    • Line 330: warning: exported method Field.Pos should have comment or be unexported (golint)
    • Line 332: warning: exported method Field.End should have comment or be unexported (golint)
    • Line 354: warning: exported method Alias.Pos should have comment or be unexported (golint)
    • Line 354: warning: receiver name a should be consistent with previous receiver name x for Alias (golint)
    • Line 355: warning: receiver name a should be consistent with previous receiver name x for Alias (golint)
    • Line 356: warning: exported method Alias.End should have comment or be unexported (golint)
    • Line 356: warning: receiver name a should be consistent with previous receiver name x for Alias (golint)
    • Line 368: warning: exported method Comprehension.Pos should have comment or be unexported (golint)
    • Line 370: warning: exported method Comprehension.End should have comment or be unexported (golint)
    • Line 594: warning: exported type Ellipsis should have comment or be unexported (golint)
    • Line 745: warning: exported method BadExpr.Pos should have comment or be unexported (golint)
    • Line 747: warning: exported method Ident.Pos should have comment or be unexported (golint)
    • Line 749: warning: exported method BasicLit.Pos should have comment or be unexported (golint)
    • Line 751: warning: exported method Interpolation.Pos should have comment or be unexported (golint)
    • Line 753: warning: exported method StructLit.Pos should have comment or be unexported (golint)
    • Line 761: warning: exported method ListLit.Pos should have comment or be unexported (golint)
    • Line 763: warning: exported method Ellipsis.Pos should have comment or be unexported (golint)
    • Line 765: warning: exported method LetClause.Pos should have comment or be unexported (golint)
    • Line 767: warning: exported method ForClause.Pos should have comment or be unexported (golint)
    • Line 769: warning: exported method IfClause.Pos should have comment or be unexported (golint)
    • Line 771: warning: exported method ParenExpr.Pos should have comment or be unexported (golint)
    • Line 773: warning: exported method SelectorExpr.Pos should have comment or be unexported (golint)
    • Line 775: warning: exported method IndexExpr.Pos should have comment or be unexported (golint)
    • Line 777: warning: exported method SliceExpr.Pos should have comment or be unexported (golint)
    • Line 779: warning: exported method CallExpr.Pos should have comment or be unexported (golint)
    • Line 781: warning: exported method UnaryExpr.Pos should have comment or be unexported (golint)
    • Line 783: warning: exported method BinaryExpr.Pos should have comment or be unexported (golint)
    • Line 785: warning: exported method BottomLit.Pos should have comment or be unexported (golint)
    • Line 788: warning: exported method BadExpr.End should have comment or be unexported (golint)
    • Line 789: warning: exported method Ident.End should have comment or be unexported (golint)
    • Line 792: warning: exported method BasicLit.End should have comment or be unexported (golint)
    • Line 794: warning: exported method Interpolation.End should have comment or be unexported (golint)
    • Line 795: warning: exported method StructLit.End should have comment or be unexported (golint)
    • Line 801: warning: exported method ListLit.End should have comment or be unexported (golint)
    • Line 802: warning: exported method Ellipsis.End should have comment or be unexported (golint)
    • Line 808: warning: exported method LetClause.End should have comment or be unexported (golint)
    • Line 809: warning: exported method ForClause.End should have comment or be unexported (golint)
    • Line 810: warning: exported method IfClause.End should have comment or be unexported (golint)
    • Line 811: warning: exported method ParenExpr.End should have comment or be unexported (golint)
    • Line 812: warning: exported method SelectorExpr.End should have comment or be unexported (golint)
    • Line 813: warning: exported method IndexExpr.End should have comment or be unexported (golint)
    • Line 814: warning: exported method SliceExpr.End should have comment or be unexported (golint)
    • Line 815: warning: exported method CallExpr.End should have comment or be unexported (golint)
    • Line 816: warning: exported method UnaryExpr.End should have comment or be unexported (golint)
    • Line 817: warning: exported method BinaryExpr.End should have comment or be unexported (golint)
    • Line 818: warning: exported method BottomLit.End should have comment or be unexported (golint)
    • Line 829: warning: receiver name id should be consistent with previous receiver name x for Ident (golint)
    • Line 850: warning: exported function NewImport should have comment or be unexported (golint)
    • Line 858: warning: exported method ImportSpec.Pos should have comment or be unexported (golint)
    • Line 870: warning: exported method ImportSpec.End should have comment or be unexported (golint)
    • Line 899: warning: exported type Spec should have comment or be unexported (golint)
    • Line 918: warning: exported method BadDecl.Pos should have comment or be unexported (golint)
    • Line 920: warning: exported method ImportDecl.Pos should have comment or be unexported (golint)
    • Line 922: warning: exported method EmbedDecl.Pos should have comment or be unexported (golint)
    • Line 925: warning: exported method BadDecl.End should have comment or be unexported (golint)
    • Line 926: warning: exported method ImportDecl.End should have comment or be unexported (golint)
    • Line 935: warning: exported method EmbedDecl.End should have comment or be unexported (golint)
    • Line 975: warning: exported method File.VisitImports should have comment or be unexported (golint)
    • Line 1004: warning: exported method File.Pos should have comment or be unexported (golint)
    • Line 1025: warning: exported method File.End should have comment or be unexported (golint)
    • Line 1041: warning: exported method Package.Pos should have comment or be unexported (golint)
    • Line 1052: warning: exported method Package.End should have comment or be unexported (golint)
    • cue/internal/value/value.go
    • Line 31: warning: exported function ConvertToRuntime should have comment or be unexported (golint)
    • Line 35: warning: exported function ConvertToContext should have comment or be unexported (golint)
    • Line 40: warning: exported function ToInternal should have comment or be unexported (golint)
    • Line 51: warning: exported function MakeError should have comment or be unexported (golint)
    • Line 77: warning: exported function FromGoValue should have comment or be unexported (golint)
    • Line 86: warning: exported function FromGoType should have comment or be unexported (golint)
    • cue/pkg/net/ip.go
    • Line 131: warning: comment on exported function LinkLocalMulticastIP should be of the form "LinkLocalMulticastIP ..." (golint)
    • cue/internal/core/eval/eval.go
    • Line 22: warning: exported function Evaluate should have comment or be unexported (golint)
    • Line 33: warning: exported function New should have comment or be unexported (golint)
    • Line 37: warning: exported type Unifier should have comment or be unexported (golint)
    • Line 42: warning: exported method Unifier.Unify should have comment or be unexported (golint)
    • Line 46: warning: exported method Unifier.Stats should have comment or be unexported (golint)
    • Line 50: warning: comment on exported function NewContext should be of the form "NewContext ..." (golint)
    • Line 62: warning: exported method Unifier.NewContext should have comment or be unexported (golint)
    • cue/internal/core/walk/walk.go
    • Line 15: warning: package comment should be of the form "Package walk ..." (golint)
    • Line 33: warning: exported type Visitor should have comment or be unexported (golint)
    • Line 47: warning: exported method Visitor.Expr should have comment or be unexported (golint)
    • cue/internal/encoding/encoder.go
    • Line 62: warning: exported method Encoder.Close should have comment or be unexported (golint)
    • Line 240: warning: exported method Encoder.EncodeFile should have comment or be unexported (golint)
    • Line 254: warning: exported method Encoder.Encode should have comment or be unexported (golint)
    • cue/internal/core/export/export.go
    • Line 32: warning: exported type Profile should have comment or be unexported (golint)
    • Line 61: warning: exported var Simplified should have comment or be unexported (golint)
    • Line 66: warning: exported var Final should have comment or be unexported (golint)
    • Line 72: warning: exported var Raw should have comment or be unexported (golint)
    • Line 79: warning: exported var All should have comment or be unexported (golint)
    • Line 119: warning: exported function Expr should have comment or be unexported (golint)
    • Line 123: warning: exported method Profile.Expr should have comment or be unexported (golint)
    • Line 177: warning: exported function Vertex should have comment or be unexported (golint)
    • Line 181: warning: exported method Profile.Vertex should have comment or be unexported (golint)
    • Line 194: warning: exported function Value should have comment or be unexported (golint)
    • Line 198: warning: comment on exported method Profile.Value should be of the form "Value ..." (golint)
    • cue/internal/core/adt/composite.go
    • Line 128: warning: exported type ID should have comment or be unexported (golint)
    • Line 218: warning: exported type StructInfo should have comment or be unexported (golint)
    • Line 295: warning: exported method Vertex.Status should have comment or be unexported (golint)
    • Line 302: warning: exported method Vertex.UpdateStatus should have comment or be unexported (golint)
    • Line 335: warning: exported method Vertex.IsConcrete should have comment or be unexported (golint)
    • Line 335: warning: receiver name x should be consistent with previous receiver name v for Vertex (golint)
    • Line 421: warning: exported method Vertex.IsErr should have comment or be unexported (golint)
    • Line 430: warning: exported method Vertex.Err should have comment or be unexported (golint)
    • Line 440: warning: exported method Vertex.Finalize should have comment or be unexported (golint)
    • Line 449: warning: exported method Vertex.AddErr should have comment or be unexported (golint)
    • Line 454: warning: exported method Vertex.SetValue should have comment or be unexported (golint)
    • Line 499: warning: exported const HasField should have comment (or a comment on this block) or be unexported (golint)
    • Line 507: warning: exported method Vertex.Kind should have comment or be unexported (golint)
    • Line 520: warning: exported method Vertex.OptionalTypes should have comment or be unexported (golint)
    • Line 543: warning: exported method Vertex.IsClosedStruct should have comment or be unexported (golint)
    • Line 558: warning: exported method Vertex.IsClosedList should have comment or be unexported (golint)
    • Line 565: warning: comment on exported method Vertex.Accept should be of the form "Accept ..." (golint)
    • Line 625: warning: exported method Vertex.IsList should have comment or be unexported (golint)
    • Line 683: warning: exported method Vertex.Source should have comment or be unexported (golint)
    • Line 714: warning: exported method Vertex.AddStruct should have comment or be unexported (golint)
    • Line 769: warning: exported function MakeConjunct should have comment or be unexported (golint)
    • Line 782: warning: exported method Conjunct.Source should have comment or be unexported (golint)
    • Line 786: warning: exported method Conjunct.Field should have comment or be unexported (golint)
    • Line 790: warning: exported method Conjunct.Expr should have comment or be unexported (golint)
    • cue/internal/core/debug/debug.go
    • Line 40: warning: exported type Config should have comment or be unexported (golint)
    • Line 46: warning: exported function WriteNode should have comment or be unexported (golint)
    • Line 59: warning: exported function NodeString should have comment or be unexported (golint)
    • cue/pkg/register.go
    • Line 18: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 30: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • cue/pkg/time/time.go
    • Line 100: warning: exported const January should have comment (or a comment on this block) or be unexported (golint)
    • Line 115: warning: exported const Sunday should have comment (or a comment on this block) or be unexported (golint)
    • cue/pkg/internal/builtin.go
    • Line 56: warning: exported type Param should have comment or be unexported (golint)
    • Line 61: warning: exported type Package should have comment or be unexported (golint)
    • Line 66: warning: exported method Package.MustCompile should have comment or be unexported (golint)
    • cue/pkg/path/os.go
    • Line 21: warning: exported const Unix should have comment (or a comment on this block) or be unexported (golint)
    • cue/internal/core/adt/context.go
    • Line 42: warning: comment on exported function Assertf should be of the form "Assertf ..." (golint)
    • Line 71: warning: exported function Logf should have comment or be unexported (golint)
    • Line 81: warning: exported method OpContext.Logf should have comment or be unexported (golint)
    • Line 126: warning: exported type Config should have comment or be unexported (golint)
    • Line 212: warning: exported method OpContext.Pos should have comment or be unexported (golint)
    • Line 219: warning: exported method OpContext.Source should have comment or be unexported (golint)
    • Line 248: warning: exported method OpContext.Env should have comment or be unexported (golint)
    • Line 284: warning: comment on exported function AssertConcreteIsPossible should be of the form "AssertConcreteIsPossible ..." (golint)
    • Line 302: warning: exported method OpContext.Err should have comment or be unexported (golint)
    • Line 350: warning: exported method OpContext.PushState should have comment or be unexported (golint)
    • Line 364: warning: exported method OpContext.PopState should have comment or be unexported (golint)
    • Line 830: warning: exported method OpContext.Label should have comment or be unexported (golint)
    • Line 971: warning: exported method OpContext.Num should have comment or be unexported (golint)
    • Line 984: warning: exported method OpContext.Int64 should have comment or be unexported (golint)
    • Line 1025: warning: exported method OpContext.BoolValue should have comment or be unexported (golint)
    • Line 1042: warning: exported method OpContext.StringValue should have comment or be unexported (golint)
    • Line 1170: warning: exported method OpContext.NewInt64 should have comment or be unexported (golint)
    • Line 1178: warning: exported method OpContext.NewString should have comment or be unexported (golint)
    • cue/internal/core/convert/go.go
    • Line 46: warning: exported function GoValueToValue should have comment or be unexported (golint)
    • Line 52: warning: exported function GoTypeToExpr should have comment or be unexported (golint)
    • Line 209: warning: exported function GoValueToExpr should have comment or be unexported (golint)
    • cue/pkg/crypto/sha256/sha256.go
    • Line 23: warning: comment on exported const Size should be of the form "Size ..." (golint)
    • Line 26: warning: comment on exported const Size224 should be of the form "Size224 ..." (golint)
    • Line 29: warning: comment on exported const BlockSize should be of the form "BlockSize ..." (golint)
    • cue/pkg/path/path_win.go
    • Line 171: warning: receiver name o should be consistent with previous receiver name os for windowsInfo (golint)
    • Line 210: warning: receiver name o should be consistent with previous receiver name os for windowsInfo (golint)
    • cue/cmd/cue/cmd/common.go
    • Line 411: warning: receiver name p should be consistent with previous receiver name b for buildPlan (golint)
    • Line 446: warning: receiver name p should be consistent with previous receiver name b for buildPlan (golint)
    • Line 517: warning: receiver name p should be consistent with previous receiver name b for buildPlan (golint)
    • cue/internal/diff/diff.go
    • Line 80: warning: comment on exported method EditScript.LabelX should be of the form "LabelX ..." (golint)
    • Line 91: warning: exported method EditScript.LabelY should have comment or be unexported (golint)
    • Line 151: warning: exported method Edit.Kind should have comment or be unexported (golint)
    • Line 152: warning: exported method Edit.XPos should have comment or be unexported (golint)
    • Line 153: warning: exported method Edit.YPos should have comment or be unexported (golint)
    • cue/cue/context.go
    • Line 223: warning: comment on exported method Context.CompileBytes should be of the form "CompileBytes ..." (golint)
    • Line 371: warning: comment on exported method Context.EncodeType should be of the form "EncodeType ..." (golint)
    • cue/internal/core/adt/feature.go
    • Line 263: warning: exported const StringLabel should have comment (or a comment on this block) or be unexported (golint)
    • Line 276: warning: exported method FeatureType.IsDef should have comment or be unexported (golint)
    • Line 280: warning: exported method FeatureType.IsHidden should have comment or be unexported (golint)
    • cue/cue/literal/quote.go
    • Line 65: warning: comment on exported method Form.WithOptionalTabIndent should be of the form "WithOptionalTabIndent ..." (golint)
    • cue/pkg/crypto/sha1/sha1.go
    • Line 23: warning: comment on exported const Size should be of the form "Size ..." (golint)
    • Line 26: warning: comment on exported const BlockSize should be of the form "BlockSize ..." (golint)
    • cue/internal/task/task.go
    • Line 39: warning: exported method Context.Lookup should have comment or be unexported (golint)
    • Line 51: warning: exported method Context.Int64 should have comment or be unexported (golint)
    • Line 75: warning: exported method Context.Bytes should have comment or be unexported (golint)
    • cue/internal/encoding/encoding.go
    • Line 50: warning: exported type Decoder should have comment or be unexported (golint)
    • Line 73: warning: exported method Decoder.Filename should have comment or be unexported (golint)
    • Line 79: warning: exported method Decoder.Index should have comment or be unexported (golint)
    • Line 80: warning: exported method Decoder.Done should have comment or be unexported (golint)
    • Line 82: warning: exported method Decoder.Next should have comment or be unexported (golint)
    • Line 126: warning: exported method Decoder.File should have comment or be unexported (golint)
    • Line 133: warning: exported method Decoder.Err should have comment or be unexported (golint)
    • Line 140: warning: exported method Decoder.Close should have comment or be unexported (golint)
    • Line 144: warning: exported type Config should have comment or be unexported (golint)
    • Line 372: warning: receiver name d should be consistent with previous receiver name i for Decoder (golint)
    • cue/cmd/cue/cmd/root.go
    • Line 148: warning: exported type Command should have comment or be unexported (golint)
    • Line 187: warning: exported method Command.SetOutput should have comment or be unexported (golint)
    • Line 191: warning: exported method Command.SetInput should have comment or be unexported (golint)
    • Line 198: warning: exported method Command.Run should have comment or be unexported (golint)
    • Line 226: warning: exported function New should have comment or be unexported (golint)
    • cue/internal/core/runtime/index.go
    • Line 24: warning: exported method Runtime.IndexToString should have comment or be unexported (golint)
    • Line 28: warning: exported method Runtime.StringToIndex should have comment or be unexported (golint)
    • Line 32: warning: exported method Runtime.LabelStr should have comment or be unexported (golint)
    • Line 36: warning: exported method Runtime.StrLabel should have comment or be unexported (golint)
    • Line 40: warning: exported method Runtime.Label should have comment or be unexported (golint)
    • cue/internal/core/adt/closed.go
    • Line 73: warning: exported method Vertex.IsInOneOf should have comment or be unexported (golint)
    • Line 107: warning: comment on exported type CloseInfo should be of the form "CloseInfo ..." (with optional leading article) (golint)
    • Line 115: warning: exported method CloseInfo.Location should have comment or be unexported (golint)
    • Line 122: warning: exported method CloseInfo.SpanMask should have comment or be unexported (golint)
    • Line 129: warning: exported method CloseInfo.RootSpanType should have comment or be unexported (golint)
    • Line 136: warning: exported method CloseInfo.IsInOneOf should have comment or be unexported (golint)
    • Line 143: warning: comment on exported method CloseInfo.AddPositions should be of the form "AddPositions ..." (golint)
    • Line 153: warning: comment on exported method CloseInfo.SpawnEmbed should be of the form "SpawnEmbed ..." (golint)
    • Line 206: warning: exported method CloseInfo.SpawnRef should have comment or be unexported (golint)
    • Line 224: warning: comment on exported function IsDef should be of the form "IsDef ..." (golint)
    • Line 254: warning: exported const ConstraintSpan should have comment (or a comment on this block) or be unexported (golint)
    • cue/internal/core/runtime/go.go
    • Line 24: warning: exported method Runtime.StoreType should have comment or be unexported (golint)
    • Line 32: warning: exported method Runtime.LoadType should have comment or be unexported (golint)
    • cue/cue/load/errors.go
    • Line 52: warning: exported method PackageError.Position should have comment or be unexported (golint)
    • Line 53: warning: exported method PackageError.InputPositions should have comment or be unexported (golint)
    • Line 54: warning: exported method PackageError.Path should have comment or be unexported (golint)
    • Line 97: warning: exported method NoFilesError.Position should have comment or be unexported (golint)
    • Line 98: warning: exported method NoFilesError.InputPositions should have comment or be unexported (golint)
    • Line 99: warning: exported method NoFilesError.Path should have comment or be unexported (golint)
    • Line 101: warning: comment on exported method NoFilesError.Msg should be of the form "Msg ..." (golint)
    • Line 150: warning: exported method MultiplePackageError.Position should have comment or be unexported (golint)
    • Line 151: warning: exported method MultiplePackageError.InputPositions should have comment or be unexported (golint)
    • Line 152: warning: exported method MultiplePackageError.Path should have comment or be unexported (golint)
    • Line 154: warning: exported method MultiplePackageError.Msg should have comment or be unexported (golint)
    • cue/internal/types/value.go
    • Line 22: warning: exported type Value should have comment or be unexported (golint)
    • Line 27: warning: exported type Interface should have comment or be unexported (golint)
    • Line 31: warning: exported function CastValue should have comment or be unexported (golint)
    • cue/internal/cuetxtar/txtar.go
    • Line 100: warning: exported method Test.HasTag should have comment or be unexported (golint)
    • Line 112: warning: exported method Test.Value should have comment or be unexported (golint)
    • Line 151: warning: comment on exported method Test.WriteFile should be of the form "WriteFile ..." (golint)
    • cue/pkg/list/sort.go
    • Line 74: warning: comment on exported function SortStable should be of the form "SortStable ..." (golint)
    • Line 81: warning: comment on exported function SortStrings should be of the form "SortStrings ..." (golint)
    • cue/cue/path.go
    • Line 354: warning: comment on exported function Def should be of the form "Def ..." (golint)
    • Line 384: warning: comment on exported function Str should be of the form "Str ..." (golint)
    • Line 406: warning: comment on exported function Index should be of the form "Index ..." (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign99%

IneffAssign detects ineffectual assignments in Go code.


misspell99%

Misspell Finds commonly misspelled English words