internal/event/export/ocagent/ocagent.go (10 lines): - line 47: // TODO: Actually implement a discovery protocol rather than a hard coded address - line 140: //TODO: Resource? - line 147: //TODO: Resource? - line 222: //TODO: StackTrace? - line 223: //TODO: Links? - line 224: //TODO: Status? - line 225: //TODO: Resource? - line 238: // TODO: handle Histogram metrics - line 242: // TODO: attach Resource? - line 316: //TODO: MessageEvents? internal/apidiff/apidiff.go (7 lines): - line 5: // TODO: test swap corresponding types (e.g. u1 <-> u2 and u2 <-> u1) - line 6: // TODO: test exported alias refers to something in another package -- does correspondence work then? - line 7: // TODO: CODE COVERAGE - line 8: // TODO: note that we may miss correspondences because we bail early when we compare a signature (e.g. when lengths differ; we could do up to the shorter) - line 9: // TODO: if you add an unexported method to an exposed interface, you have to check that - line 12: // TODO: check constant values: large values aren't representable by some types. - line 13: // TODO: Document all the incompatibilities we don't check for. internal/lsp/cmd/cmd.go (5 lines): - line 48: // TODO: Remove this when we stop allowing the serve verb by default. - line 94: OCAgent: "off", //TODO: Remove this line to default the exporter to on - line 303: ctx := xcontext.Detach(ctx) //TODO:a way of shutting down the internal server - line 620: //TODO: do we need to handle errors on these calls? - line 622: //TODO: right now calling exit terminates the process, we should rethink that internal/lsp/fake/editor.go (4 lines): - line 299: // TODO: set client capabilities - line 323: // TODO: support workspace folders. - line 337: // TODO: await initial configuration here, or expect gopls to manage that? - line 1176: // TODO: it's unclear if this is correct. Here we create the buffer (with cmd/cover/cover.go (3 lines): - line 461: // TODO: Nested simple blocks get unnecessary (but correct) counters - line 504: // TODO: what if there's more than one? Probably doesn't matter much. - line 576: // TODO: what if there's more than one? Probably doesn't matter much. internal/event/export/ocagent/metrics.go (3 lines): - line 23: // TODO: Unit? - line 110: // TODO: labels? - line 190: // TODO: SumOfSquaredDeviation? internal/jsonrpc2_v2/conn.go (3 lines): - line 371: //TODO: this causes a lot of shuffling, should we use a growing ring buffer? compaction? - line 376: // TODO: should we allow to limit the queue size? - line 429: //TODO: should we do more than just log it? internal/lsp/source/highlight.go (3 lines): - line 102: // other loop/switch/select if they have a label. TODO: add support for - line 248: // TODO: add highlight when breaking a select. - line 478: // TODO: maybe check if ident is a reserved word, if true then don't continue and return results. internal/event/export/metric/data.go (3 lines): - line 23: //TODO: rethink the concept of metric handles - line 114: //TODO: make this more efficient - line 119: //TODO: make this more efficient internal/lsp/source/extract.go (3 lines): - line 33: // TODO: stricter rules for selectorExpr. - line 843: // TODO: Include identifiers that are assigned prior to being - line 961: // TODO: Support function extraction for an expression. godoc/versions.go (3 lines): - line 69: kind string // "type", "func", "method", "field" TODO: "const", "var" - line 212: return // TODO: handle more cases - line 221: // TODO: consider making this fatal, after the Go 1.11 cycle. go/analysis/passes/printf/printf.go (2 lines): - line 232: // TODO: Relax these checks; issue 26555. - line 864: // TODO: Disable complaint about '0' for Go 1.10. To be fixed properly in 1.11. internal/apidiff/compatibility.go (2 lines): - line 112: // TODO: must also check that if any methods were added or removed, every exposed - line 286: // TODO: find a way to use checkCompatibleObjectSets for this. internal/lsp/source/workspace_symbol.go (2 lines): - line 343: // TODO: should use the bug reporting API - line 583: // TODO: work out how to handle tags if/when they are needed. internal/lsp/debug/serve.go (2 lines): - line 412: //TODO: we should not need to adjust the discovered configuration - line 425: // TODO: probably a better solution for deferring closure to the caller would internal/lsp/regtest/wrappers.go (2 lines): - line 429: // TODO: extend this to "ChangeConfiguration", once we refactor the way editor - line 433: // TODO: to be correct, this should probably be synchronized, but right now internal/lsp/analysis/fillstruct/fillstruct.go (2 lines): - line 71: // TODO: support type params. - line 108: // TODO: support type params. internal/apidiff/messageset.go (2 lines): - line 5: // TODO: show that two-non-empty dotjoin can happen, by using an anon struct as a field type - line 6: // TODO: don't report removed/changed methods for both value and pointer method sets? internal/lsp/command.go (2 lines): - line 360: // TODO: fix the error reporting when this runs async. - line 644: // TODO: go back to using URI internal/stack/process.go (2 lines): - line 80: // TODO: do we want to allow contraction of stacks before comparison? - line 99: //TODO: do we want other grouping strategies? godoc/godoc.go (2 lines): - line 225: // TODO: Reportedly gri does. Fix this to handle that too. - line 313: // TODO: do this better, so it works for all go/internal/gcimporter/iimport.go (2 lines): - line 480: // TODO: add support for using the kind. - line 783: // TODO provide a non-nil *Environment cmd/getgo/steps.go (2 lines): - line 36: // TODO: if go is currently installed install new version over that - line 67: // TODO: handle passing a version go/analysis/passes/framepointer/framepointer.go (2 lines): - line 28: asmWriteBP = re(`,\s*BP$`) // TODO: can have false positive, e.g. for TESTQ BP,BP. Seems unlikely. - line 34: if build.Default.GOARCH != "amd64" { // TODO: arm64 also? go/analysis/passes/fieldalignment/fieldalignment.go (2 lines): - line 93: // TODO: Preserve multi-named fields instead of flattening. - line 96: // TODO: Preserve comment, for now get rid of them. internal/lsp/command/interface.go (2 lines): - line 44: // TODO: deprecate Test in favor of RunTests below. - line 106: // TODO: deprecate GCDetails in favor of ToggleGCDetails below. godoc/snippet.go (1 line): - line 25: // TODO instead of pretty-printing the node, should use the original source instead cmd/stringer/stringer.go (1 line): - line 219: // TODO: Need to think about constants in test files. Maybe write type_string_test.go internal/lsp/fuzzy/symbol.go (1 line): - line 122: // TODO: we should prefer the right-most input if it overflows, rather go/analysis/passes/unusedresult/unusedresult.go (1 line): - line 130: continue // TODO: report error? proceed? go/packages/packagestest/expect.go (1 line): - line 118: //TODO: catch the error returned from the method internal/lsp/protocol/protocol.go (1 line): - line 158: //TODO: This code is wrong, it ignores handler and assumes non standard internal/lsp/code_action.go (1 line): - line 45: // TODO: Add other CodeLenses such as GoGenerate, RegenerateCgo, etc.. internal/stack/parse.go (1 line): - line 152: //TODO: push back the fun raw internal/span/span.go (1 line): - line 174: //TODO: make sure the end of the uri is unambiguous internal/lsp/symbols.go (1 line): - line 37: // TODO: Remove this once the lsp deprecates SymbolInformation. godoc/static/playground.js (1 line): - line 168: // TODO: remove this when it falls out of use. go/callgraph/vta/graph.go (1 line): - line 599: // TODO: investigate other cases of missing body and parameters go/ssa/lift.go (1 line): - line 39: // Also see many other "TODO: opt" suggestions in the code. internal/analysisinternal/analysis.go (1 line): - line 407: // TODO: Improve scoring algorithm. internal/lsp/diagnostics.go (1 line): - line 158: // TODO (findleyr): we should probably do something with the error here, cmd/go-contrib-init/contrib.go (1 line): - line 240: // TODO: if not in dryRun mode, just fix it? cmd/splitdwarf/internal/macho/macho.go (1 line): - line 295: // TODO Commands below not fully supported yet. go/ast/astutil/enclosing.go (1 line): - line 303: // TODO test: Doc godoc/dirtrees.go (1 line): - line 106: // TODO: propagate more. See golang.org/issue/14252. cmd/compilebench/main.go (1 line): - line 183: if linker == "" && !is6g { // TODO: Support 6l cover/profile.go (1 line): - line 233: line, col := 1, 2 // TODO: Why is this 2? internal/lsp/regtest/env.go (1 line): - line 42: // State encapsulates the server state TODO: explain more refactor/rename/rename.go (1 line): - line 112: // ---- TODO ---- internal/lsp/general.go (1 line): - line 504: // TODO: We should be able to do better than this. go/analysis/passes/shift/dead.go (1 line): - line 72: // TODO: This handles integer comparisons only. go/analysis/internal/checker/checker.go (1 line): - line 740: // TODO: filter out facts that belong to godoc/static/godocs.js (1 line): - line 38: // TODO: Ideally, this should always be precomputed for all pages, but then internal/lsp/protocol/codeactionkind.go (1 line): - line 10: // TODO: Add GoGenerate, RegenerateCgo etc. go/expect/extract.go (1 line): - line 41: // TODO: We should write this in terms of the scanner.