问题标签 [golint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sublimetext3 - GoSublime/GoLint 缓存导入包?
SublimeText 3 / GoSublime 是否有某种类型的Go
导入包缓存?如果是这样,我如何按需清除它?
我问是因为在编写受 Github 源代码控制的自定义包时,它可以工作,直到我重构一个 func 或 struct。然后,回到我的主应用程序(我导入这个包的地方),当我开始使用新方法时,它会像圣诞树一样亮起。
GoSublime(或 GoLint?)不接受重构的 func 更改,并且所有内容都显示为错误。但是,我可以进入提示符并运行go build
,go test
一切正常 - Go 工具工作正常。
我唯一能确定的是大约 24 小时后它似乎起作用了?
我是 SublimeText 新手;但是,我相信我已经将所有东西都连接起来并安装了所需的软件包。Sublime 的控制台在 Linters 中没有显示错误(说它找到了 gotype 和 golint)。
SublimeLinter: gotype activated: /Users/user1/go/bin/gotype
SublimeLinter: golint activated: /Users/user1/go/bin/golint
东西在包装本身内工作得很好。这不仅仅是我的远程应用程序。在我的包中,我有一个“/examples”测试目录,它甚至没有获取根包中的更改。但同样,实际的Go
工具使用新的重构代码执行、构建和运行所有测试。
缓存导入的架构/包详细信息的是 GoSublime/GoLint。我该如何清除?
谢谢!
go - 编译 glide vendored 包
Golang 的glide将依赖项下载到项目的源代码中。结果,go build
也编译了这些,并且 lint/vet 代码库的 go 插件也解析了依赖项。
假设这些依赖项是稳定的,我怎样才能编译依赖项从而go build
变得更快?
另外,如何vendor/
从 go 的工具中删除 lint 并检查代码库是否有错误?
go - Sublime Text 3 的 Golint 插件
我目前正在学习 Go,并且正在使用Sublime Text 3
插件SublimeLinter
(我使用除 Go 之外的其他语言)。我已经使用Homebrew
(我在 OS X 上)下载了 Go,并且我按照此处说明的程序进行了操作:https ://golang.org/doc/install以测试我的安装。我不明白为什么提供的 Go 语言的 linterSublimeLinter
不起作用。我已经将 my 插入$GOPATH
到我的PATH
,中/usr/local/bin/go
。这是打印 ST 控制台的内容:
有人有同样的问题吗?
go - Golang 包安装失败
我在安装包时遇到问题,它以前可以工作,但突然我收到了这条消息:
这是我的 GO 环境输出:
go - golang 编译时间(静态代码分析)检测格式化字符串和参数之间的不匹配
我最近发现我有很多日志消息,格式字符串和参数不完全匹配。默认情况下(我使用的是 go 1.6)编译器似乎没有报告此类问题。
我可以为 go 编译时验证或任何其他静态代码分析工具激活此类检查,以检测格式化字符串和参数之间的不匹配吗?
注意 golint 似乎也没有报告此类问题。
go - 修复“在 context.WithValue 中不应使用基本类型字符串作为键”golint
我在使用Context
and时将 uuid 传递WithValue
给处理 this 的后续函数*http.request
。此 uuid 在授权标头中传递给 REST 调用以识别人员。授权令牌经过验证,需要可访问以检查调用本身是否已获得授权。
我用了:
但是 golint 抱怨说:
可以用来检索这个不是基本类型(如简单字符串)的键的最佳选项是什么?
go - 用文件中的模式替换字符串
我使用 sed 替换 *.go 文件上的变量,sed -i 's/\<old_name\>/newName/g' *.go
我的目标是消除 golinter 错误。如何使用常见模式的字符串,例如用 2 替换 1
fmt.Printf("blah blah blah")
或者fmt.Printf("yadda yadda yadda")
fmt.Println("blah blah blah")
或者fmt.Println("yadda yadda yadda")
在这种情况下,我们不想替换: 1. fmt.Printf("print speed= %d",speed)
//所以这里的关键是结束模式应该是")
. 2. log.Printf statements //仅替换“fmt”。对此有任何指示吗?
go - 在 Go AST for Linter 中唯一标识函数声明
我正在为 Go 创建一个自定义 linter,它在下面的示例中验证 'foo' 函数的某些参数。
假设我们有一个sample.go
,它看起来像这样。
然后我们有另一个名为的文件,它为foobar.go
函数实现了一个 linter (检查它的参数的长度),如下所示:
我怎么知道调用表达式ce, ok := n.(*ast.CallExpr)
实际上是在调用foo函数bar.go
而不是其他源文件?
我能够进入调用表达式的函数声明对象 - funDec
,但它的所有属性似乎都不能帮助唯一地识别函数声明/签名。
我正在使用的代码可以在这里找到。本质上,我正在寻找的是一种类似于 Go 中函数声明的“哈希码”实现。
go - Go lint 在使用 dep 时抱怨导入
我在这里看到了类似的问题。但我无法解决我的案子。
我正在使用 dep 初始化项目并添加了第一个依赖项“Echo”。现在文件夹结构看起来像这样
server.go 有以下代码
main.go 有
现在 vscode 显示警告
不能使用 server.TestController(类型 func("github.com/sfkshan/pos/vendor/github.com/labstack/echo".Context) 错误)作为类型 "github.com/labstack/echo".HandlerFunc 在参数中。得到
我不确定为什么会这样?如果我删除供应商文件夹文件夹,错误就会消失。但是在运行之后dep ensure
(在这种情况下,会创建供应商文件夹,这是预期的),错误再次出现。
docker - 无法安装 golint 包:导入路径错误
我有一个使用 golint 并将其安装在 docker 容器中的项目。它已经工作了几个月(并且已经构建了多次),但是今天当我再次构建容器时,我收到以下错误:go get -u github.com/golang/lint/golint
我可以通过键入 go get github.com/golang/lint/golint 在我的计算机上本地复制问题。我已经删除了 go 路径(源和 bin 文件夹)中与 golint 相关的所有包,但当我再次尝试安装它时,我得到了前一个错误。我正在使用 go 1.11.0 有什么建议吗?