2011-10-21 50 views

回答

0

您可以创建一个名为old/yourpackage的包,如果有人依赖于已弃用的功能/接口,并在没有旧东西的情况下创建更新包yourpackage,则建议使用该包。

无法插入警告或标记方法,因为它们可能以不同于文档中的方式使用。

1

在Go编译器中没有这方面的支持(在5g/6g/8g和gccgo中都没有)。

据我所知,目前还没有代码检查工具。

唯一的方法是将弃用警告置于文档中,或者直接删除代码。

+0

如何插入警告的方法呢?他们总是可以使用已弃用的方法? –

0

你也可以打印一行到stdout/stderr,说“这个方法已被弃用!”每次调用已弃用的方法时。您还可以提供关于用户如何改正这一点的提示。

+1

请不要将任何内容直接打印到库中的stderr或stdout中,以用于*任何*原因。而弃用注释只属于库中,否则可以简单地删除代码。 –

2

Go编译器不会报告警告,只会报告阻止编译 的错误。

Go FAQ

20

Godoc: documenting Go code说,这大约为废弃的标记代码:

要通知该标识符不应该使用,添加段落到开头文档注释“已过时”随后是关于弃用的一些信息。

有一个golint issue for reporting use of deprecated identifiersgodoc issue通过或隐藏不赞成使用的标识符。

staticcheck工具报告使用不推荐使用的标识符(请参阅SA1019)。

+0

这是正确的做法,应标记为答案。从Go 1.6开始,您可以使用带有jpeg/Reader的模式查看Go团队:https://golang.org/src/image/jpeg/reader.go?s = 2840:2891#L83稍后,分析工具例如'godoc'和'golint'可以被更新来检测这个,就像它处理'Bug'文档定义一样:https://godoc.org/golang.org/x/tools/cmd/godoc(参见' -notes'选项)。 BUGS和TODO通常不会出现在文档中,除非您通过该标志和选项。 – eduncan911

+0

这些天'staticcheck'存在,并将执行此检查,因为'SA1019' –

相关问题