De acuerdo con las preguntas frecuentes :
Algunos han pedido una opción de compilación para desactivar esas comprobaciones o al menos reducirlas a advertencias. Sin embargo, dicha opción no se ha agregado porque las opciones del compilador no deberían afectar la semántica del lenguaje y porque el compilador Go no informa advertencias, solo errores que impiden la compilación.
Hay dos razones para no tener advertencias. Primero, si vale la pena quejarse, vale la pena arreglarlo en el código. (Y si no vale la pena arreglarlo, no vale la pena mencionarlo). En segundo lugar, hacer que el compilador genere advertencias alienta la implementación para advertir sobre casos débiles que pueden hacer que la compilación sea ruidosa, enmascarando errores reales que deberían corregirse.
No estoy necesariamente de acuerdo con esto por varias razones por las que no vale la pena entrar. Es lo que es, y no es probable que cambie en el futuro cercano.
Para los paquetes, existe la goimports
herramienta que agrega automáticamente los paquetes que faltan y elimina los que no se utilizan. Por ejemplo:
# Install it
$ go get golang.org/x/tools/cmd/goimports
# -w to write the source file instead of stdout
$ goimports -w my_file.go
Debería poder ejecutar esto desde cualquier editor decente a mitad de camino, por ejemplo, para Vim:
:!goimports -w %
La goimports
página enumera algunos comandos para otros editores, y normalmente lo configura para que se ejecute automáticamente cuando guarda el búfer en el disco.
Tenga en cuenta que goimports
también se ejecutará gofmt
.
Como ya se mencionó, para las variables la forma más fácil es asignarlas (temporalmente) a _
:
// No errors
tasty := "ice cream"
horrible := "marmite"
// Commented out for debugging
//eat(tasty, horrible)
_, _ = tasty, horrible