diff --git a/go.mod b/go.mod index 20b3b42c..828d8239 100644 --- a/go.mod +++ b/go.mod @@ -16,8 +16,8 @@ require ( k8s.io/client-go v11.0.1-0.20190805182717-6502b5e7b1b5+incompatible k8s.io/code-generator v0.18.0 k8s.io/kube-openapi v0.0.0-20200410145947-bcb3869e6f29 - knative.dev/pkg v0.0.0-20200727081359-9a051b3decfd - knative.dev/test-infra v0.0.0-20200725213358-8557dab80d7a + knative.dev/pkg v0.0.0-20200728070958-58be631c12c0 + knative.dev/test-infra v0.0.0-20200727204758-76fda3dc3ff7 ) replace ( diff --git a/go.sum b/go.sum index 7d1fc9c0..1f30cd76 100644 --- a/go.sum +++ b/go.sum @@ -1327,8 +1327,6 @@ golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200610111108-226ff32320da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae h1:Ih9Yo4hSPImZOpfGuA4bR/ORKTAbhZo2AbWNRCnevdo= golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200722175500-76b94024e4b6 h1:X9xIZ1YU8bLZA3l6gqDUHSFiD0GFI9S548h6C8nDtOY= -golang.org/x/sys v0.0.0-20200722175500-76b94024e4b6/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c h1:UIcGWL6/wpCfyGuJnRFJRurA+yj8RrW7Q6x2YMCXt6c= golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1439,8 +1437,6 @@ golang.org/x/tools v0.0.0-20200709181711-e327e1019dfe/go.mod h1:njjCfa9FT2d7l9Bc golang.org/x/tools v0.0.0-20200713011307-fd294ab11aed/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200721223218-6123e77877b2 h1:kxDWg8KNMtpGjI/XVKGgOtSljTnVg/PrjhS8+0pxjLE= golang.org/x/tools v0.0.0-20200721223218-6123e77877b2/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200723000907-a7c6fd066f6d h1:7k9BKfwmdbykG6l5ztniTrH0TP25yel8O7l26/yovMU= -golang.org/x/tools v0.0.0-20200723000907-a7c6fd066f6d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200724172932-b5fc9d354d99 h1:OHn441rq5CeM5r1xJ0OmY7lfdTvnedi6k+vQiI7G9b8= golang.org/x/tools v0.0.0-20200724172932-b5fc9d354d99/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1676,7 +1672,6 @@ k8s.io/legacy-cloud-providers v0.17.4/go.mod h1:FikRNoD64ECjkxO36gkDgJeiQWwyZTuB k8s.io/metrics v0.17.2/go.mod h1:3TkNHET4ROd+NfzNxkjoVfQ0Ob4iZnaHmSEA4vYpwLw= k8s.io/test-infra v0.0.0-20200514184223-ba32c8aae783/go.mod h1:bW6thaPZfL2hW7ecjx2WYwlP9KQLM47/xIJyttkVk5s= k8s.io/test-infra v0.0.0-20200617221206-ea73eaeab7ff/go.mod h1:L3+cRvwftUq8IW1TrHji5m3msnc4uck/7LsE/GR/aZk= -k8s.io/test-infra v0.0.0-20200723132140-b02d194a2d64/go.mod h1:4cRZlOy5Ka3Ym/orCmNWL2dsE39pN0xHFT0WFrZe2HQ= k8s.io/test-infra v0.0.0-20200724210216-b2cdf8399d01/go.mod h1:4cRZlOy5Ka3Ym/orCmNWL2dsE39pN0xHFT0WFrZe2HQ= k8s.io/utils v0.0.0-20191114184206-e782cd3c129f/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew= k8s.io/utils v0.0.0-20200124190032-861946025e34 h1:HjlUD6M0K3P8nRXmr2B9o4F9dUy9TCj/aEpReeyi6+k= @@ -1684,12 +1679,12 @@ k8s.io/utils v0.0.0-20200124190032-861946025e34/go.mod h1:sZAwmy6armz5eXlNoLmJcl knative.dev/caching v0.0.0-20200116200605-67bca2c83dfa/go.mod h1:dHXFU6CGlLlbzaWc32g80cR92iuBSpsslDNBWI8C7eg= knative.dev/eventing-contrib v0.11.2/go.mod h1:SnXZgSGgMSMLNFTwTnpaOH7hXDzTFtw0J8OmHflNx3g= knative.dev/pkg v0.0.0-20200207155214-fef852970f43/go.mod h1:pgODObA1dTyhNoFxPZTTjNWfx6F0aKsKzn+vaT9XO/Q= -knative.dev/pkg v0.0.0-20200727081359-9a051b3decfd h1:PcffTKYEFwjgDTterGM7I0B1MFXIOxntrk0hZGHsk4I= -knative.dev/pkg v0.0.0-20200727081359-9a051b3decfd/go.mod h1:Zv+oUY4uQLV7ZiBHmFuD7WH4IPU0HcEVnrZbHfc/n/A= -knative.dev/test-infra v0.0.0-20200724213858-d5ec9cdc6b33 h1:IhDg9AfaH9xgPv2KS0Lso5zLBXf9NSD9G+NdEznaYDI= -knative.dev/test-infra v0.0.0-20200724213858-d5ec9cdc6b33/go.mod h1:Y3sNbLSTA11kRcLvTzRsZCxO+GQuw7KV7+PL+iD+9CA= +knative.dev/pkg v0.0.0-20200728070958-58be631c12c0 h1:zQPGer90idZA9j4eDmGrAIt+5sqAcfR8cACSmD7a0xs= +knative.dev/pkg v0.0.0-20200728070958-58be631c12c0/go.mod h1:ur42MwFkZfPfqZPt987/rkdkaUhWfuuO7+jKbEUE+uk= knative.dev/test-infra v0.0.0-20200725213358-8557dab80d7a h1:Coxwj+5PN0WCrRh2Dxf33Nu2QteF4hcy55qw+AJKMSw= knative.dev/test-infra v0.0.0-20200725213358-8557dab80d7a/go.mod h1:Besm7oWHKZcLfn5lmBw/JCmQrOMCKUuM3tSKi6insQ4= +knative.dev/test-infra v0.0.0-20200727204758-76fda3dc3ff7 h1:eiOsmVjtbO62AS6wYXmjgZrYECMEykeDX2Rtupn80rk= +knative.dev/test-infra v0.0.0-20200727204758-76fda3dc3ff7/go.mod h1:Besm7oWHKZcLfn5lmBw/JCmQrOMCKUuM3tSKi6insQ4= modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw= modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk= modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k= diff --git a/vendor/knative.dev/pkg/controller/helper.go b/vendor/knative.dev/pkg/controller/helper.go index b8cc08fb..4a4ca5c6 100644 --- a/vendor/knative.dev/pkg/controller/helper.go +++ b/vendor/knative.dev/pkg/controller/helper.go @@ -23,8 +23,11 @@ import ( "knative.dev/pkg/kmeta" ) +// Callback is a function that is passed to an informer's event handler. type Callback func(interface{}) +// EnsureTypeMeta augments the passed-in callback, ensuring that all objects that pass +// through this callback have their TypeMeta set according to the provided GVK. func EnsureTypeMeta(f Callback, gvk schema.GroupVersionKind) Callback { apiVersion, kind := gvk.ToAPIVersionAndKind() @@ -34,12 +37,23 @@ func EnsureTypeMeta(f Callback, gvk schema.GroupVersionKind) Callback { // TODO: We should consider logging here. return } - // We need to populated TypeMeta, but cannot trample the + + accessor, err := meta.TypeAccessor(typed) + if err != nil { + return + } + + // If TypeMeta is already what we want, exit early. + if accessor.GetAPIVersion() == apiVersion && accessor.GetKind() == kind { + f(typed) + return + } + + // We need to populate TypeMeta, but cannot trample the // informer's copy. - // TODO(mattmoor): Avoid the copy if TypeMeta is set. copy := typed.DeepCopyObject() - accessor, err := meta.TypeAccessor(copy) + accessor, err = meta.TypeAccessor(copy) if err != nil { return } diff --git a/vendor/modules.txt b/vendor/modules.txt index 68a54326..cc993c9e 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -747,7 +747,7 @@ k8s.io/kube-openapi/pkg/util/sets k8s.io/utils/buffer k8s.io/utils/integer k8s.io/utils/trace -# knative.dev/pkg v0.0.0-20200727081359-9a051b3decfd +# knative.dev/pkg v0.0.0-20200728070958-58be631c12c0 ## explicit knative.dev/pkg/apis knative.dev/pkg/apis/duck/ducktypes @@ -771,7 +771,7 @@ knative.dev/pkg/metrics/metricskey knative.dev/pkg/network knative.dev/pkg/reconciler knative.dev/pkg/system -# knative.dev/test-infra v0.0.0-20200725213358-8557dab80d7a +# knative.dev/test-infra v0.0.0-20200727204758-76fda3dc3ff7 ## explicit knative.dev/test-infra/scripts knative.dev/test-infra/tools/dep-collector