Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update golangci-lint for go 1.20 #241

Closed
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Update golangci-lint for go 1.20
Fixes #240

Note that "allow-leading-space" is no longer supported as mentioned in
golangci/golangci-lint#3063 (comment)

Fix new warnings that are now reported.

Signed-off-by: Marc Khouzam <kmarc@vmware.com>
  • Loading branch information
marckhouzam committed May 1, 2023
commit a28c67f0bdd5f7a1b30c9a3d63e7deec4e690f3f
11 changes: 4 additions & 7 deletions .golangci.yaml
Original file line number Diff line number Diff line change
@@ -36,14 +36,16 @@ linters-settings:
local-prefixes: github.com/vmware-tanzu
govet:
check-shadowing: true

misspell:
locale: US
nolintlint:
allow-leading-space: true # don't require machine-readable nolint directives (i.e. with no leading space)
allow-unused: false # report any unused nolint directives
require-explanation: false # don't require an explanation for nolint directives
require-specific: false # don't require nolint directives to be specific about which linter is being skipped
revive:
rules:
- name: unused-parameter
disabled: true
whitespace:
multi-func: true

@@ -144,8 +146,3 @@ run:
skip-dirs:
- fakes/
timeout: 15m

# golangci.com configuration
# https://github.com/golangci/golangci/wiki/Configuration
service:
golangci-lint-version: 1.46.0 # use the fixed version to not introduce new linters unexpectedly
2 changes: 1 addition & 1 deletion cmd/plugin/builder/command/cli_compile.go
Original file line number Diff line number Diff line change
@@ -160,7 +160,7 @@ func Compile(compileArgs *PluginCompileArgs) error {
guard := make(chan struct{}, maxConcurrent)

// Mix up IDs so we don't always get the same set.
randSkew := rand.Intn(len(identifiers)) // nolint:gosec
randSkew := rand.Intn(len(identifiers)) //nolint:gosec
var wg sync.WaitGroup
plugins := make(chan cli.Plugin, len(files))
fatalErrors := make(chan errInfo, len(files))
1 change: 1 addition & 0 deletions cmd/plugin/builder/command/publish/helper_test.go
Original file line number Diff line number Diff line change
@@ -66,6 +66,7 @@ func convertVersionToStringArray(arrOsArchInfo []osArch) []string {
return oa
}

//nolint:unparam
func createDummyArtifactDir(directoryBasePath, pluginName, recommendedVersion, description string, versions []string) {
var err error

Original file line number Diff line number Diff line change
@@ -26,7 +26,7 @@ var _ = Describe("Unit tests for inventory plugin-group add", func() {
fakeImgpkgWrapper := &fakes.ImgpkgWrapper{}

// pullDBImageStub create new empty database with the table schemas created
pullDBImageStub := func(image, path string) error {
pullDBImageStub := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteDBFileName)
db := plugininventory.NewSQLiteInventory(dbFile, "")
err := db.CreateSchema()
4 changes: 2 additions & 2 deletions cmd/plugin/builder/inventory/inventory_plugin_test.go
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ var _ = Describe("Unit tests for inventory plugin add", func() {
}

// pullDBImageStub create new empty database with the table schemas created
pullDBImageStub := func(image, path string) error {
pullDBImageStub := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteDBFileName)
db := plugininventory.NewSQLiteInventory(dbFile, "")
err := db.CreateSchema()
@@ -46,7 +46,7 @@ var _ = Describe("Unit tests for inventory plugin add", func() {
}

// pullDBImageStubWithPlugins create new database with the table schemas and foo plugin
pullDBImageStubWithPlugins := func(image, path string) error {
pullDBImageStubWithPlugins := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteDBFileName)
db := plugininventory.NewSQLiteInventory(dbFile, "")
err := db.CreateSchema()
6 changes: 3 additions & 3 deletions cmd/plugin/builder/inventory_plugin.go
Original file line number Diff line number Diff line change
@@ -88,7 +88,7 @@ type inventoryPluginActivateDeactivateFlags struct {

func newInventoryPluginActivateCmd() *cobra.Command {
pluginActivateCmd, flags := getActivateDeactivateBaseCmd()
pluginActivateCmd.Use = "activate" // nolint:goconst
pluginActivateCmd.Use = "activate" //nolint:goconst
pluginActivateCmd.Short = "Activate the existing plugin in the inventory database available on the remote repository"
pluginActivateCmd.Example = ""
pluginActivateCmd.RunE = func(cmd *cobra.Command, args []string) error {
@@ -108,7 +108,7 @@ func newInventoryPluginActivateCmd() *cobra.Command {

func newInventoryPluginDeactivateCmd() *cobra.Command {
pluginDeactivateCmd, flags := getActivateDeactivateBaseCmd()
pluginDeactivateCmd.Use = "deactivate" // nolint:goconst
pluginDeactivateCmd.Use = "deactivate" //nolint:goconst
pluginDeactivateCmd.Short = "Deactivate the existing plugin in the inventory database available on the remote repository"
pluginDeactivateCmd.Example = ""
pluginDeactivateCmd.RunE = func(cmd *cobra.Command, args []string) error {
@@ -126,7 +126,7 @@ func newInventoryPluginDeactivateCmd() *cobra.Command {
return pluginDeactivateCmd
}

func getActivateDeactivateBaseCmd() (*cobra.Command, *inventoryPluginActivateDeactivateFlags) { // nolint:dupl
func getActivateDeactivateBaseCmd() (*cobra.Command, *inventoryPluginActivateDeactivateFlags) { //nolint:dupl
var flags = &inventoryPluginActivateDeactivateFlags{}

var activateDeactivateCmd = &cobra.Command{}
2 changes: 1 addition & 1 deletion cmd/plugin/builder/inventory_plugin_group.go
Original file line number Diff line number Diff line change
@@ -131,7 +131,7 @@ func newInventoryPluginGroupDeactivateCmd() *cobra.Command {
return pluginGroupDeactivateCmd
}

func getPluginGroupActivateDeactivateBaseCmd() (*cobra.Command, *inventoryPluginGroupActivateDeactivateFlags) { // nolint:dupl
func getPluginGroupActivateDeactivateBaseCmd() (*cobra.Command, *inventoryPluginGroupActivateDeactivateFlags) { //nolint:dupl
var flags = &inventoryPluginGroupActivateDeactivateFlags{}

var activateDeactivateCmd = &cobra.Command{}
2 changes: 1 addition & 1 deletion hack/tools/Makefile
Original file line number Diff line number Diff line change
@@ -21,7 +21,7 @@ BIN_DIR := bin

GOIMPORTS_VERSION=0.1.12
VALE_VERSION=2.20.1
GOLANGCI_LINT_VERSION=1.46.0
GOLANGCI_LINT_VERSION=1.52.2
MISSPELL_VERSION=0.3.4
CONTROLLER_TOOLS_VERSION=0.9.2
IMGPKG_VERSION=v0.35.0
8 changes: 4 additions & 4 deletions pkg/airgapped/plugin_bundle_test.go
Original file line number Diff line number Diff line change
@@ -155,7 +155,7 @@ imagesToCopy:

// downloadInventoryImageAndSaveFilesToDirStub fakes the image downloads and puts a database
// with the table schemas created to provided path
downloadInventoryImageAndSaveFilesToDirStub := func(image, path string) error {
downloadInventoryImageAndSaveFilesToDirStub := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteDBFileName)
err := utils.SaveFile(dbFile, []byte{})
Expect(err).ToNot(HaveOccurred())
@@ -175,7 +175,7 @@ imagesToCopy:

// downloadInventoryMetadataImageWithNoExistingPlugins fakes the image downloads and puts a database
// with the table schemas created to provided path
downloadInventoryMetadataImageWithNoExistingPlugins := func(image, path string) error {
downloadInventoryMetadataImageWithNoExistingPlugins := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteInventoryMetadataDBFileName)
err := utils.SaveFile(dbFile, []byte{})
Expect(err).ToNot(HaveOccurred())
@@ -189,7 +189,7 @@ imagesToCopy:

// downloadInventoryMetadataImageWithExistingPlugins fakes the image downloads and puts a database
// with the table schemas created to provided path
downloadInventoryMetadataImageWithExistingPlugins := func(image, path string) error {
downloadInventoryMetadataImageWithExistingPlugins := func(image, path string) error { //nolint:unparam
dbFile := filepath.Join(path, plugininventory.SQliteInventoryMetadataDBFileName)
err := utils.SaveFile(dbFile, []byte{})
Expect(err).ToNot(HaveOccurred())
@@ -208,7 +208,7 @@ imagesToCopy:
}

// copyImageToTarStub fakes the image downloads and creates a fake tar.gz file for images
copyImageToTarStub := func(image, tarfile string) error {
copyImageToTarStub := func(image, tarfile string) error { //nolint:unparam
_, err := os.Create(tarfile)
Expect(err).ToNot(HaveOccurred())
return nil
4 changes: 2 additions & 2 deletions pkg/auth/csp/grpc.go
Original file line number Diff line number Diff line change
@@ -62,11 +62,11 @@ type configSource struct {

// Token fetches the token.
func (c *configSource) Token() (*oauth2.Token, error) {
g, err := c.GetCurrentServer() // nolint:staticcheck // Deprecated
g, err := c.GetCurrentServer() //nolint:staticcheck // Deprecated
if err != nil {
return nil, err
}
if !g.IsGlobal() { // nolint:staticcheck // Deprecated
if !g.IsGlobal() { //nolint:staticcheck // Deprecated
return nil, fmt.Errorf("trying to fetch token for non global server")
}
if !IsExpired(g.GlobalOpts.Auth.Expiration) {
1 change: 1 addition & 0 deletions pkg/auth/csp/selfmanaged.go
Original file line number Diff line number Diff line change
@@ -95,6 +95,7 @@ func runLocalListener() error {
mux := http.NewServeMux()
mux.HandleFunc("/callback", callbackHandler)
tokenExchange, tokenExchangeComplete = context.WithCancel(context.TODO())
//nolint:gosec
l := http.Server{
Addr: "",
Handler: mux,
5 changes: 3 additions & 2 deletions pkg/auth/tkg/cluster_pinniped_info.go
Original file line number Diff line number Diff line change
@@ -4,6 +4,7 @@
package tkgauth

import (
"context"
"crypto/tls"
"crypto/x509"
"encoding/json"
@@ -59,7 +60,7 @@ func GetClusterInfoFromCluster(clusterAPIServerURL, configmapName string) (*clie

clusterAPIServerURL = strings.TrimRight(clusterAPIServerURL, " /")
clusterInfoURL := clusterAPIServerURL + fmt.Sprintf("/api/v1/namespaces/%s/configmaps/%s", KubePublicNamespace, configmapName)
req, _ := http.NewRequest("GET", clusterInfoURL, http.NoBody)
req, _ := http.NewRequestWithContext(context.Background(), "GET", clusterInfoURL, http.NoBody)
// To get the cluster ca certificate first time, we need to use skip verify the server certificate,
// all the later communications to cluster would be using CA after this call
clusterClient := &http.Client{
@@ -124,7 +125,7 @@ func GetPinnipedInfoFromCluster(clusterInfo *clientcmdapi.Cluster, discoveryPort
}
}
pinnipedInfoURL := endpoint + fmt.Sprintf("/api/v1/namespaces/%s/configmaps/pinniped-info", KubePublicNamespace)
req, _ := http.NewRequest("GET", pinnipedInfoURL, http.NoBody)
req, _ := http.NewRequestWithContext(context.Background(), "GET", pinnipedInfoURL, http.NoBody)
pool := x509.NewCertPool()
pool.AppendCertsFromPEM(clusterInfo.CertificateAuthorityData)
clusterClient := &http.Client{
1 change: 0 additions & 1 deletion pkg/auth/tkg/kube_config.go
Original file line number Diff line number Diff line change
@@ -91,7 +91,6 @@ func KubeconfigWithPinnipedAuthLoginPlugin(endpoint string, options *KubeConfigO
return
}

mergeFilePath = ""
if options != nil && options.MergeFilePath != "" {
mergeFilePath = options.MergeFilePath
} else {
3 changes: 2 additions & 1 deletion pkg/auth/wcp/discovery.go
Original file line number Diff line number Diff line change
@@ -5,6 +5,7 @@
package wcp

import (
"context"
"fmt"
"net/http"

@@ -22,7 +23,7 @@ const (
func IsVSphereSupervisor(endpoint string, httpClient *http.Client) (bool, error) {
loginBannerURL := fmt.Sprintf("%s/wcp/loginbanner", endpoint)

req, _ := http.NewRequest("GET", loginBannerURL, http.NoBody)
req, _ := http.NewRequestWithContext(context.Background(), "GET", loginBannerURL, http.NoBody)

resp, err := httpClient.Do(req)
if err != nil {
12 changes: 6 additions & 6 deletions pkg/command/config.go
Original file line number Diff line number Diff line change
@@ -182,7 +182,7 @@ func setUnstableVersions(cfg *configtypes.ClientConfig, value string) error {
configtypes.AlphaUnstableVersions,
configtypes.ExperimentalUnstableVersions,
configtypes.NoUnstableVersions:
cfg.SetUnstableVersionSelector(optionKey) // nolint:staticcheck // Deprecated
cfg.SetUnstableVersionSelector(optionKey) //nolint:staticcheck // Deprecated
default:
return fmt.Errorf("unknown unstable-versions setting: %s; should be one of [all, none, alpha, experimental]", optionKey)
}
@@ -194,7 +194,7 @@ func setEdition(cfg *configtypes.ClientConfig, edition string) error {

switch editionOption {
case configtypes.EditionCommunity, configtypes.EditionStandard:
cfg.SetEditionSelector(editionOption) // nolint:staticcheck // Deprecated
cfg.SetEditionSelector(editionOption) //nolint:staticcheck // Deprecated
default:
return fmt.Errorf("unknown edition: %s; should be one of [%s, %s]", editionOption, configtypes.EditionStandard, configtypes.EditionCommunity)
}
@@ -260,9 +260,9 @@ var listServersCmd = &cobra.Command{
}

output := component.NewOutputWriter(cmd.OutOrStdout(), outputFormat, "Name", "Type", "Endpoint", "Path", "Context")
for _, server := range cfg.KnownServers { // nolint:staticcheck // Deprecated
for _, server := range cfg.KnownServers { //nolint:staticcheck // Deprecated
var endpoint, path, context string
if server.IsGlobal() { // nolint:staticcheck // Deprecated
if server.IsGlobal() { //nolint:staticcheck // Deprecated
endpoint = server.GlobalOpts.Endpoint
} else {
endpoint = server.ManagementClusterOpts.Endpoint
@@ -294,13 +294,13 @@ var deleteServersCmd = &cobra.Command{

if isAborted == nil {
log.Infof("Deleting entry for cluster %s", args[0])
serverExists, err := configlib.ServerExists(args[0]) // nolint:staticcheck // Deprecated
serverExists, err := configlib.ServerExists(args[0]) //nolint:staticcheck // Deprecated
if err != nil {
return err
}

if serverExists {
err := configlib.RemoveServer(args[0]) // nolint:staticcheck // Deprecated
err := configlib.RemoveServer(args[0]) //nolint:staticcheck // Deprecated
if err != nil {
return err
}
6 changes: 3 additions & 3 deletions pkg/command/discovery_source.go
Original file line number Diff line number Diff line change
@@ -108,7 +108,7 @@ func newListDiscoverySourceCmd() *cobra.Command {
}
}
} else {
server, err := configlib.GetCurrentServer() // nolint:staticcheck // Deprecated
server, err := configlib.GetCurrentServer() //nolint:staticcheck // Deprecated
if err == nil && server != nil {
outputFromDiscoverySources(server.DiscoverySources, common.PluginScopeContext, output)
}
@@ -300,8 +300,8 @@ func createRESTDiscoverySource(discoveryName, uri string) *configtypes.GenericRE

func discoverySourceNameAndType(ds configtypes.PluginDiscovery) (string, string) {
switch {
case ds.GCP != nil: // nolint:staticcheck // Deprecated
return ds.GCP.Name, common.DiscoveryTypeGCP // nolint:staticcheck // Deprecated
case ds.GCP != nil: //nolint:staticcheck // Deprecated
return ds.GCP.Name, common.DiscoveryTypeGCP //nolint:staticcheck // Deprecated
case ds.Kubernetes != nil:
return ds.Kubernetes.Name, common.DiscoveryTypeKubernetes
case ds.Local != nil:
Loading