Отключить проверку vet для "составного литерала использует неблокированные поля"
Я запускаю vet на свой инструмент CI и начал получать ошибку:
composite literal uses unkeyed fields
Потому что я создаю
type A struct {
*B
}
вот так:
A{b} // b is of type *B
Я не забочусь об этом предупреждении и хочу отключить его на своих проверках. Как это сделать?
Ответы
Ответ 1
$ go doc cmd/vet
По умолчанию выполняются все проверки. Если флаги установлены явно к true, выполняются только те тесты. И наоборот, если какой-либо флаг явно задано значение false, только те тесты отключены. таким образом -printf = true запускает проверку печати, -printf = false выполняет все проверки, кроме проверки печати.
Unkeyed composite literals
Flag: -composites
Composite struct literals that do not use the field-keyed syntax.
Ответ 2
Вы можете отключить его или вместо этого исправить код:
a := A{B: b}
playground
Ответ 3
go tool vet -composites=false .
Ответ 4
Вы можете отключить его с помощью флага -composites=false
: например,
go vet -composites=false .
Примечание: go tool vet
устарело