Repository: kubernetes/dashboard
Pull request #5652 (2020-10-21 06:19:33)

Bump go-restful from v2 to v3
To make go-restful as go module compatible, bump it from v2 to v3.

But v3.3.0 or later have issue that breaks http response body,
if the response has boolean value.
So use v3.2.0 for now.
See emicklei/go-restful#449

k8s-ci-robot: [APPROVALNOTIFIER] This PR is **APPROVED**

This pull-request has been approved by: *<a href="https://github.com/kubernetes/dashboard/pull/5652#" title="Author self-approved">shu-mutou</a>*

The full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands?repo=kubernetes%2Fdashboard).

The pull request process is described [here](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process)

<details >
Needs approval from an approver in each of these files:

- ~~[OWNERS](https://github.com/kubernetes/dashboard/blob/master/OWNERS)~~ [shu-mutou]

Approvers can indicate their approval by writing `/approve` in a comment
Approvers can cancel approval by writing `/approve cancel` in a comment
</details>
<!-- META={"approvers":[]} -->
codecov[bot]: # [Codecov](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=h1) Report
> Merging [#5652](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=desc) into [master](https://codecov.io/gh/kubernetes/dashboard/commit/4ca49553cc824aa992aedb5fea7ac75537dacbcc?el=desc) will **increase** coverage by `0.02%`.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/kubernetes/dashboard/pull/5652/graphs/tree.svg?width=650&height=150&src=pr&token=Wj7jysJ9A5)](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master    #5652      +/-   ##
==========================================
+ Coverage   44.62%   44.64%   +0.02%     
==========================================
  Files         214      214              
  Lines        9067     9067              
  Branches      113      113              
==========================================
+ Hits         4046     4048       +2     
+ Misses       4754     4753       -1     
+ Partials      267      266       -1     
```


| [Impacted Files](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [src/app/backend/auth/handler.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2F1dGgvaGFuZGxlci5nbw==) | `45.09% <ø> (ø)` | |
| [src/app/backend/client/manager.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2NsaWVudC9tYW5hZ2VyLmdv) | `52.17% <ø> (ø)` | |
| [src/app/backend/errors/handler.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2Vycm9ycy9oYW5kbGVyLmdv) | `10.86% <ø> (ø)` | |
| [src/app/backend/handler/apihandler.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2hhbmRsZXIvYXBpaGFuZGxlci5nbw==) | `29.36% <ø> (ø)` | |
| [src/app/backend/handler/download.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2hhbmRsZXIvZG93bmxvYWQuZ28=) | `0.00% <ø> (ø)` | |
| [src/app/backend/handler/filter.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2hhbmRsZXIvZmlsdGVyLmdv) | `42.10% <ø> (ø)` | |
| [src/app/backend/handler/terminal.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2hhbmRsZXIvdGVybWluYWwuZ28=) | `0.00% <ø> (ø)` | |
| [src/app/backend/integration/handler.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2ludGVncmF0aW9uL2hhbmRsZXIuZ28=) | `41.66% <ø> (ø)` | |
| [...pp/backend/integration/metric/heapster/selector.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2ludGVncmF0aW9uL21ldHJpYy9oZWFwc3Rlci9zZWxlY3Rvci5nbw==) | `69.23% <ø> (ø)` | |
| [...app/backend/integration/metric/sidecar/selector.go](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree#diff-c3JjL2FwcC9iYWNrZW5kL2ludGVncmF0aW9uL21ldHJpYy9zaWRlY2FyL3NlbGVjdG9yLmdv) | `69.23% <ø> (ø)` | |
| ... and [6 more](https://codecov.io/gh/kubernetes/dashboard/pull/5652/diff?src=pr&el=tree-more) | |

------

[Continue to review full report at Codecov](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=footer). Last update [4ca4955...c046559](https://codecov.io/gh/kubernetes/dashboard/pull/5652?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

maciaszczykm: /lgtm
k8s-ci-robot: [APPROVALNOTIFIER] This PR is **APPROVED**

This pull-request has been approved by: *<a href="https://github.com/kubernetes/dashboard/pull/5652#issuecomment-713352346" title="LGTM">maciaszczykm</a>*, *<a href="https://github.com/kubernetes/dashboard/pull/5652#" title="Author self-approved">shu-mutou</a>*

The full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands?repo=kubernetes%2Fdashboard).

The pull request process is described [here](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process)

<details >
Needs approval from an approver in each of these files:

- ~~[OWNERS](https://github.com/kubernetes/dashboard/blob/master/OWNERS)~~ [maciaszczykm,shu-mutou]

Approvers can indicate their approval by writing `/approve` in a comment
Approvers can cancel approval by writing `/approve cancel` in a comment
</details>
<!-- META={"approvers":[]} -->

Patch:
diff --git a/go.mod b/go.mod
index a3a379151..de636baea 100644
--- a/go.mod
+++ b/go.mod
@@ -4,9 +4,9 @@ go 1.15
 
 require (
 	github.com/docker/distribution v2.7.1+incompatible
-	// emicklei/go-restful v2.14.0 or later breaks http response body if it has boolean value.
+	// emicklei/go-restful v3.3.0 or later breaks http response body if it has boolean value.
 	// See emicklei/go-restful#449
-	github.com/emicklei/go-restful v2.13.0+incompatible
+	github.com/emicklei/go-restful/v3 v3.2.0
 	github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
 	github.com/opencontainers/go-digest v1.0.0 // indirect
 	github.com/prometheus/client_golang v1.7.1
diff --git a/go.sum b/go.sum
index e3e2b8349..1207a3229 100644
--- a/go.sum
+++ b/go.sum
@@ -94,9 +94,10 @@ github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25Kn
 github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153 h1:yUdfgN0XgIJw7foRItutHYUIhlcKzcSf5vDpdhQAKTc=
 github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc=
 github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
+github.com/emicklei/go-restful v2.9.5+incompatible h1:spTtZBk5DYEvbxMVutUuTyh1Ao2r4iyvLdACqsl/Ljk=
 github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
-github.com/emicklei/go-restful v2.13.0+incompatible h1:XwckZriGdbXs1EoZ7Y1MdH6hWqZ4XnkFSiEibNi5BXg=
-github.com/emicklei/go-restful v2.13.0+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
+github.com/emicklei/go-restful/v3 v3.2.0 h1:bYqC4/ykCzQbUVO2c9h1J4XYTD1ApVxsZ1HWEFZY87s=
+github.com/emicklei/go-restful/v3 v3.2.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
 github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
 github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
 github.com/evanphx/json-patch v4.9.0+incompatible h1:kLcOMZeuLAJvL2BPWLMIj5oaZQobrkAqrL+WFZwQses=
diff --git a/src/app/backend/auth/handler.go b/src/app/backend/auth/handler.go
index ebc3cc0f6..45a7a0758 100644
--- a/src/app/backend/auth/handler.go
+++ b/src/app/backend/auth/handler.go
@@ -17,7 +17,7 @@ package auth
 import (
 	"net/http"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 
 	authApi "github.com/kubernetes/dashboard/src/app/backend/auth/api"
 	"github.com/kubernetes/dashboard/src/app/backend/errors"
diff --git a/src/app/backend/client/api/types.go b/src/app/backend/client/api/types.go
index 862709aa7..ba432ac52 100644
--- a/src/app/backend/client/api/types.go
+++ b/src/app/backend/client/api/types.go
@@ -15,7 +15,7 @@
 package api
 
 import (
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	v1 "k8s.io/api/authorization/v1"
 	apiextensionsclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
 	"k8s.io/apimachinery/pkg/runtime"
diff --git a/src/app/backend/client/manager.go b/src/app/backend/client/manager.go
index 848f6bd7d..00be644bd 100644
--- a/src/app/backend/client/manager.go
+++ b/src/app/backend/client/manager.go
@@ -19,7 +19,7 @@ import (
 	"log"
 	"strings"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	v1 "k8s.io/api/authorization/v1"
 	apiextensionsclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
 	metaV1 "k8s.io/apimachinery/pkg/apis/meta/v1"
diff --git a/src/app/backend/errors/handler.go b/src/app/backend/errors/handler.go
index 2d4b28ff2..f35f69468 100644
--- a/src/app/backend/errors/handler.go
+++ b/src/app/backend/errors/handler.go
@@ -18,7 +18,7 @@ import (
 	"log"
 	"net/http"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"k8s.io/apimachinery/pkg/api/errors"
 )
 
diff --git a/src/app/backend/handler/apihandler.go b/src/app/backend/handler/apihandler.go
index 1935723b3..510c8bb9f 100644
--- a/src/app/backend/handler/apihandler.go
+++ b/src/app/backend/handler/apihandler.go
@@ -27,7 +27,7 @@ import (
 
 	"github.com/kubernetes/dashboard/src/app/backend/plugin"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	"golang.org/x/net/xsrftoken"
 	"k8s.io/apimachinery/pkg/runtime"
 	"k8s.io/client-go/tools/remotecommand"
diff --git a/src/app/backend/handler/download.go b/src/app/backend/handler/download.go
index 7fe853d94..d3a759c48 100644
--- a/src/app/backend/handler/download.go
+++ b/src/app/backend/handler/download.go
@@ -17,7 +17,7 @@ package handler
 import (
 	"io"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 
 	"github.com/kubernetes/dashboard/src/app/backend/errors"
 )
diff --git a/src/app/backend/handler/filter.go b/src/app/backend/handler/filter.go
index ed0d8dcd2..4bb8cc844 100644
--- a/src/app/backend/handler/filter.go
+++ b/src/app/backend/handler/filter.go
@@ -23,7 +23,7 @@ import (
 	"strings"
 	"time"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	"golang.org/x/net/xsrftoken"
 	utilnet "k8s.io/apimachinery/pkg/util/net"
 
diff --git a/src/app/backend/handler/parser/parser.go b/src/app/backend/handler/parser/parser.go
index 3c0eb37b1..2dd05e10c 100644
--- a/src/app/backend/handler/parser/parser.go
+++ b/src/app/backend/handler/parser/parser.go
@@ -18,7 +18,7 @@ import (
 	"strconv"
 	"strings"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	metricapi "github.com/kubernetes/dashboard/src/app/backend/integration/metric/api"
 	"github.com/kubernetes/dashboard/src/app/backend/resource/dataselect"
 )
diff --git a/src/app/backend/handler/terminal.go b/src/app/backend/handler/terminal.go
index 05fe6da18..a3e18981b 100755
--- a/src/app/backend/handler/terminal.go
+++ b/src/app/backend/handler/terminal.go
@@ -24,7 +24,7 @@ import (
 	"net/http"
 	"sync"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"gopkg.in/igm/sockjs-go.v2/sockjs"
 	v1 "k8s.io/api/core/v1"
 	"k8s.io/client-go/kubernetes"
diff --git a/src/app/backend/integration/handler.go b/src/app/backend/integration/handler.go
index deb94e81a..62c439eaa 100644
--- a/src/app/backend/integration/handler.go
+++ b/src/app/backend/integration/handler.go
@@ -17,7 +17,7 @@ package integration
 import (
 	"net/http"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/integration/api"
 )
 
diff --git a/src/app/backend/integration/metric/heapster/selector.go b/src/app/backend/integration/metric/heapster/selector.go
index 942c2098d..74648e4a2 100644
--- a/src/app/backend/integration/metric/heapster/selector.go
+++ b/src/app/backend/integration/metric/heapster/selector.go
@@ -17,7 +17,7 @@ package heapster
 import (
 	"fmt"
 
-	"github.com/emicklei/go-restful/log"
+	"github.com/emicklei/go-restful/v3/log"
 	"github.com/kubernetes/dashboard/src/app/backend/api"
 	metricapi "github.com/kubernetes/dashboard/src/app/backend/integration/metric/api"
 	v1 "k8s.io/api/core/v1"
diff --git a/src/app/backend/integration/metric/sidecar/selector.go b/src/app/backend/integration/metric/sidecar/selector.go
index 69951c3ff..9efabe2cb 100644
--- a/src/app/backend/integration/metric/sidecar/selector.go
+++ b/src/app/backend/integration/metric/sidecar/selector.go
@@ -17,7 +17,7 @@ package sidecar
 import (
 	"fmt"
 
-	"github.com/emicklei/go-restful/log"
+	"github.com/emicklei/go-restful/v3/log"
 	"github.com/kubernetes/dashboard/src/app/backend/api"
 	metricapi "github.com/kubernetes/dashboard/src/app/backend/integration/metric/api"
 	v1 "k8s.io/api/core/v1"
diff --git a/src/app/backend/plugin/config.go b/src/app/backend/plugin/config.go
index 87477560e..8559f8770 100644
--- a/src/app/backend/plugin/config.go
+++ b/src/app/backend/plugin/config.go
@@ -17,7 +17,7 @@ package plugin
 import (
 	"net/http"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/handler/parser"
 	apiErrors "k8s.io/apimachinery/pkg/api/errors"
 )
diff --git a/src/app/backend/plugin/handler.go b/src/app/backend/plugin/handler.go
index 356f1db4e..86cf8d0d5 100644
--- a/src/app/backend/plugin/handler.go
+++ b/src/app/backend/plugin/handler.go
@@ -21,7 +21,7 @@ import (
 
 	"github.com/kubernetes/dashboard/src/app/backend/handler/parser"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	clientapi "github.com/kubernetes/dashboard/src/app/backend/client/api"
 	"github.com/kubernetes/dashboard/src/app/backend/errors"
 )
diff --git a/src/app/backend/settings/handler.go b/src/app/backend/settings/handler.go
index c9a961245..2cde8e876 100644
--- a/src/app/backend/settings/handler.go
+++ b/src/app/backend/settings/handler.go
@@ -17,7 +17,7 @@ package settings
 import (
 	"net/http"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 
 	"github.com/kubernetes/dashboard/src/app/backend/args"
 	clientapi "github.com/kubernetes/dashboard/src/app/backend/client/api"
diff --git a/src/app/backend/systembanner/handler.go b/src/app/backend/systembanner/handler.go
index 4ac03f9cc..68ded88fe 100644
--- a/src/app/backend/systembanner/handler.go
+++ b/src/app/backend/systembanner/handler.go
@@ -17,7 +17,7 @@ package systembanner
 import (
 	"net/http"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/systembanner/api"
 )
 
diff --git a/src/app/backend/validation/validateloginstatus.go b/src/app/backend/validation/validateloginstatus.go
index 2aecded19..9233a3109 100644
--- a/src/app/backend/validation/validateloginstatus.go
+++ b/src/app/backend/validation/validateloginstatus.go
@@ -15,7 +15,7 @@
 package validation
 
 import (
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/args"
 	"github.com/kubernetes/dashboard/src/app/backend/client"
 )


Test patch:
diff --git a/src/app/backend/auth/handler_test.go b/src/app/backend/auth/handler_test.go
index 75ebd4d38..23119f454 100644
--- a/src/app/backend/auth/handler_test.go
+++ b/src/app/backend/auth/handler_test.go
@@ -17,7 +17,7 @@ package auth
 import (
 	"testing"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 )
 
 func TestIntegrationHandler_Install(t *testing.T) {
diff --git a/src/app/backend/auth/manager_test.go b/src/app/backend/auth/manager_test.go
index f6b15e27c..0c84f278e 100644
--- a/src/app/backend/auth/manager_test.go
+++ b/src/app/backend/auth/manager_test.go
@@ -19,7 +19,7 @@ import (
 	"testing"
 	"time"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 
 	authApi "github.com/kubernetes/dashboard/src/app/backend/auth/api"
 	"github.com/kubernetes/dashboard/src/app/backend/client"
diff --git a/src/app/backend/client/manager_test.go b/src/app/backend/client/manager_test.go
index 07b3f0fcd..222f1be5e 100644
--- a/src/app/backend/client/manager_test.go
+++ b/src/app/backend/client/manager_test.go
@@ -19,7 +19,7 @@ import (
 	"net/http"
 	"testing"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/args"
 	"github.com/kubernetes/dashboard/src/app/backend/errors"
 	"k8s.io/client-go/rest"
diff --git a/src/app/backend/handler/apihandler_test.go b/src/app/backend/handler/apihandler_test.go
index 660b9edd0..a543f4bf6 100644
--- a/src/app/backend/handler/apihandler_test.go
+++ b/src/app/backend/handler/apihandler_test.go
@@ -23,7 +23,7 @@ import (
 	"reflect"
 	"strings"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/args"
 	"github.com/kubernetes/dashboard/src/app/backend/auth"
 	authApi "github.com/kubernetes/dashboard/src/app/backend/auth/api"
diff --git a/src/app/backend/integration/handler_test.go b/src/app/backend/integration/handler_test.go
index 3937f1664..480b259ef 100644
--- a/src/app/backend/integration/handler_test.go
+++ b/src/app/backend/integration/handler_test.go
@@ -17,7 +17,7 @@ package integration
 import (
 	"testing"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 )
 
 func TestIntegrationHandler_Install(t *testing.T) {
diff --git a/src/app/backend/plugin/config_test.go b/src/app/backend/plugin/config_test.go
index fc0989a55..cab4a8e52 100644
--- a/src/app/backend/plugin/config_test.go
+++ b/src/app/backend/plugin/config_test.go
@@ -22,7 +22,7 @@ import (
 
 	"github.com/kubernetes/dashboard/src/app/backend/plugin/apis/v1alpha1"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 	authApi "github.com/kubernetes/dashboard/src/app/backend/auth/api"
 	clientapi "github.com/kubernetes/dashboard/src/app/backend/client/api"
 	"github.com/kubernetes/dashboard/src/app/backend/plugin/client/clientset/versioned"
diff --git a/src/app/backend/plugin/detail_test.go b/src/app/backend/plugin/detail_test.go
index 77b14fcdf..14fdddb49 100644
--- a/src/app/backend/plugin/detail_test.go
+++ b/src/app/backend/plugin/detail_test.go
@@ -21,7 +21,7 @@ import (
 	"net/http/httptest"
 	"testing"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 
 	"github.com/kubernetes/dashboard/src/app/backend/plugin/apis/v1alpha1"
 	fakePluginClientset "github.com/kubernetes/dashboard/src/app/backend/plugin/client/clientset/versioned/fake"
diff --git a/src/app/backend/plugin/handler_test.go b/src/app/backend/plugin/handler_test.go
index 294262feb..76099222e 100644
--- a/src/app/backend/plugin/handler_test.go
+++ b/src/app/backend/plugin/handler_test.go
@@ -17,7 +17,7 @@ package plugin
 import (
 	"testing"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 )
 
 func TestIntegrationHandler_Install(t *testing.T) {
diff --git a/src/app/backend/plugin/list_test.go b/src/app/backend/plugin/list_test.go
index 47fb095dd..0a03e187f 100644
--- a/src/app/backend/plugin/list_test.go
+++ b/src/app/backend/plugin/list_test.go
@@ -20,7 +20,7 @@ import (
 	"net/http/httptest"
 	"testing"
 
-	"github.com/emicklei/go-restful"
+	"github.com/emicklei/go-restful/v3"
 
 	"github.com/kubernetes/dashboard/src/app/backend/resource/dataselect"
 
diff --git a/src/app/backend/settings/handler_test.go b/src/app/backend/settings/handler_test.go
index fedd2f465..78a6c8132 100644
--- a/src/app/backend/settings/handler_test.go
+++ b/src/app/backend/settings/handler_test.go
@@ -17,7 +17,7 @@ package settings
 import (
 	"testing"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 )
 
 func TestIntegrationHandler_Install(t *testing.T) {
diff --git a/src/app/backend/validation/validateloginstatus_test.go b/src/app/backend/validation/validateloginstatus_test.go
index 095c02c8b..a9b771858 100644
--- a/src/app/backend/validation/validateloginstatus_test.go
+++ b/src/app/backend/validation/validateloginstatus_test.go
@@ -21,7 +21,7 @@ import (
 	"reflect"
 	"testing"
 
-	restful "github.com/emicklei/go-restful"
+	restful "github.com/emicklei/go-restful/v3"
 	"github.com/kubernetes/dashboard/src/app/backend/client"
 )