Repository: knative-sandbox/eventing-kafka-broker
Pull request #1150 (2021-08-19 16:16:59)

Bump to latest eventing, fix Trigger DeadLetterSinkURI
Bump eventing with the latest breaking changes from https://github.com/knative/eventing/pull/5642

knative-prow-robot: [APPROVALNOTIFIER] This PR is **NOT APPROVED**

This pull-request has been approved by: *<a href="https://github.com/knative-sandbox/eventing-kafka-broker/pull/1150#" title="Author self-approved">benmoss</a>*
To complete the [pull request process](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process), please assign **evankanderson** after the PR has been reviewed.
You can assign the PR to them by writing `/assign @evankanderson` in a comment when ready.

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

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

- **[OWNERS](https://github.com/knative-sandbox/eventing-kafka-broker/blob/main/OWNERS)**

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":["evankanderson"]} -->

Patch:
diff --git a/control-plane/pkg/reconciler/trigger/trigger_lifecycle.go b/control-plane/pkg/reconciler/trigger/trigger_lifecycle.go
index cd9219708..1071a3786 100644
--- a/control-plane/pkg/reconciler/trigger/trigger_lifecycle.go
+++ b/control-plane/pkg/reconciler/trigger/trigger_lifecycle.go
@@ -133,7 +133,7 @@ func (m *statusConditionManager) subscriberResolved(egress *contract.Egress) {
 	if isDeadLetterSinkConfigured(egress.EgressConfig) {
 		m.Trigger.Status.MarkDeadLetterSinkResolvedSucceeded()
 		uri, _ /* safe to ignore */ := apis.ParseURL(egress.EgressConfig.DeadLetter)
-		m.Trigger.Status.DeadLetterURI = uri
+		m.Trigger.Status.DeadLetterSinkURI = uri
 	} else {
 		m.Trigger.Status.MarkDeadLetterSinkNotConfigured()
 	}
diff --git a/go.mod b/go.mod
index 62d25f38b..429c5e24f 100644
--- a/go.mod
+++ b/go.mod
@@ -21,8 +21,8 @@ require (
 	k8s.io/apiserver v0.20.7
 	k8s.io/client-go v0.20.7
 	k8s.io/utils v0.0.0-20210111153108-fddb29f9d009
-	knative.dev/eventing v0.25.1-0.20210818214503-4b18ab87646a
+	knative.dev/eventing v0.25.1-0.20210819160604-19fcdf4b2aed
 	knative.dev/hack v0.0.0-20210806075220-815cd312d65c
-	knative.dev/pkg v0.0.0-20210818135208-7b5ecbc0e477
+	knative.dev/pkg v0.0.0-20210819054404-bda81c029160
 	knative.dev/reconciler-test v0.0.0-20210806131721-1e1e9f72d9cd
 )
diff --git a/go.sum b/go.sum
index c801abedb..e45648fd9 100644
--- a/go.sum
+++ b/go.sum
@@ -1220,16 +1220,15 @@ k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAG
 k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
 k8s.io/utils v0.0.0-20210111153108-fddb29f9d009 h1:0T5IaWHO3sJTEmCP6mUlBvMukxPKUQWqiI/YuiBNMiQ=
 k8s.io/utils v0.0.0-20210111153108-fddb29f9d009/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
-knative.dev/eventing v0.25.1-0.20210818214503-4b18ab87646a h1:5Qy+pV6/gn7o07b2bHuUeZ6AkfrOsgecahmA3IFr/vs=
-knative.dev/eventing v0.25.1-0.20210818214503-4b18ab87646a/go.mod h1:8jIsrnSONPgv+m63OTzpwZQJiQASYl77C3llCyYlBMU=
+knative.dev/eventing v0.25.1-0.20210819160604-19fcdf4b2aed h1:HRL8zo6EcWjb01g4Q842UVMns4mRosaj1A28OMZBuL4=
+knative.dev/eventing v0.25.1-0.20210819160604-19fcdf4b2aed/go.mod h1:5z8b751O9jUHaZbZTEnJB2ZkkvcurBb0YlqUxBtn9GI=
 knative.dev/hack v0.0.0-20210622141627-e28525d8d260/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
 knative.dev/hack v0.0.0-20210806075220-815cd312d65c h1:nOXoDWAAItwr4o0dp3nHr6skgpVD4IvME/UX84YNl5k=
 knative.dev/hack v0.0.0-20210806075220-815cd312d65c/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
-knative.dev/hack/schema v0.0.0-20210622141627-e28525d8d260/go.mod h1:ffjwmdcrH5vN3mPhO8RrF2KfNnbHeCE2C60A+2cv3U0=
+knative.dev/hack/schema v0.0.0-20210806075220-815cd312d65c/go.mod h1:ffjwmdcrH5vN3mPhO8RrF2KfNnbHeCE2C60A+2cv3U0=
 knative.dev/pkg v0.0.0-20210803160015-21eb4c167cc5/go.mod h1:RPk5txNA3apR9X40D4MpUOP9/VqOG8CrtABWfOwGVS4=
-knative.dev/pkg v0.0.0-20210818135208-7b5ecbc0e477 h1:oHKwxMz8dV5pKXTAUOMbmZA0kgLkXKR11ISysegU/L8=
-knative.dev/pkg v0.0.0-20210818135208-7b5ecbc0e477/go.mod h1:RPk5txNA3apR9X40D4MpUOP9/VqOG8CrtABWfOwGVS4=
-knative.dev/reconciler-test v0.0.0-20210803183715-b61cc77c06f6/go.mod h1:+Kovy+G5zXZNcuO/uB+zfo37vFKZzsLIlWezt/nKMz0=
+knative.dev/pkg v0.0.0-20210819054404-bda81c029160 h1:1ae2qW+dz63xLcWcUxWdUzn9JDG98/4yTdGUECj6Joo=
+knative.dev/pkg v0.0.0-20210819054404-bda81c029160/go.mod h1:t6WzDPywQloi+AbOtiOejfpem1mLfKeuV+sjXGQLGN8=
 knative.dev/reconciler-test v0.0.0-20210806131721-1e1e9f72d9cd h1:mY2SFGIbL2gCw7o5fxyUMG0r2OcnChUKTGt3PtdIlas=
 knative.dev/reconciler-test v0.0.0-20210806131721-1e1e9f72d9cd/go.mod h1:+Kovy+G5zXZNcuO/uB+zfo37vFKZzsLIlWezt/nKMz0=
 modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw=
diff --git a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/trigger_types.go b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/trigger_types.go
index 97ffc8759..d7b876c86 100644
--- a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/trigger_types.go
+++ b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/trigger_types.go
@@ -120,9 +120,9 @@ type TriggerStatus struct {
 	// +optional
 	SubscriberURI *apis.URL `json:"subscriberUri,omitempty"`
 
-	// DeadLetterURI is the resolved URI of the dead letter sink for this Trigger.
+	// DeadLetterSinkURI is the resolved URI of the dead letter sink for this Trigger.
 	// +optional
-	DeadLetterURI *apis.URL `json:"deadLetterUri,omitempty"`
+	DeadLetterSinkURI *apis.URL `json:"deadLetterSinkUri,omitempty"`
 }
 
 // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
diff --git a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
index 7be79a4ee..908b4e354 100644
--- a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
@@ -274,8 +274,8 @@ func (in *TriggerStatus) DeepCopyInto(out *TriggerStatus) {
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
-	if in.DeadLetterURI != nil {
-		in, out := &in.DeadLetterURI, &out.DeadLetterURI
+	if in.DeadLetterSinkURI != nil {
+		in, out := &in.DeadLetterSinkURI, &out.DeadLetterSinkURI
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
diff --git a/vendor/knative.dev/eventing/pkg/client/injection/client/client.go b/vendor/knative.dev/eventing/pkg/client/injection/client/client.go
index b54ffc81d..1d6f31800 100644
--- a/vendor/knative.dev/eventing/pkg/client/injection/client/client.go
+++ b/vendor/knative.dev/eventing/pkg/client/injection/client/client.go
@@ -20,27 +20,56 @@ package client
 
 import (
 	context "context"
+	json "encoding/json"
+	errors "errors"
+	fmt "fmt"
 
+	v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	unstructured "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
+	runtime "k8s.io/apimachinery/pkg/runtime"
+	schema "k8s.io/apimachinery/pkg/runtime/schema"
+	types "k8s.io/apimachinery/pkg/types"
+	watch "k8s.io/apimachinery/pkg/watch"
+	discovery "k8s.io/client-go/discovery"
+	dynamic "k8s.io/client-go/dynamic"
 	rest "k8s.io/client-go/rest"
+	eventingv1 "knative.dev/eventing/pkg/apis/eventing/v1"
+	v1beta1 "knative.dev/eventing/pkg/apis/eventing/v1beta1"
+	flowsv1 "knative.dev/eventing/pkg/apis/flows/v1"
+	messagingv1 "knative.dev/eventing/pkg/apis/messaging/v1"
+	sourcesv1 "knative.dev/eventing/pkg/apis/sources/v1"
+	v1beta2 "knative.dev/eventing/pkg/apis/sources/v1beta2"
 	versioned "knative.dev/eventing/pkg/client/clientset/versioned"
+	typedeventingv1 "knative.dev/eventing/pkg/client/clientset/versioned/typed/eventing/v1"
+	typedeventingv1beta1 "knative.dev/eventing/pkg/client/clientset/versioned/typed/eventing/v1beta1"
+	typedflowsv1 "knative.dev/eventing/pkg/client/clientset/versioned/typed/flows/v1"
+	typedmessagingv1 "knative.dev/eventing/pkg/client/clientset/versioned/typed/messaging/v1"
+	typedsourcesv1 "knative.dev/eventing/pkg/client/clientset/versioned/typed/sources/v1"
+	typedsourcesv1beta2 "knative.dev/eventing/pkg/client/clientset/versioned/typed/sources/v1beta2"
 	injection "knative.dev/pkg/injection"
+	dynamicclient "knative.dev/pkg/injection/clients/dynamicclient"
 	logging "knative.dev/pkg/logging"
 )
 
 func init() {
-	injection.Default.RegisterClient(withClient)
+	injection.Default.RegisterClient(withClientFromConfig)
 	injection.Default.RegisterClientFetcher(func(ctx context.Context) interface{} {
 		return Get(ctx)
 	})
+	injection.Dynamic.RegisterDynamicClient(withClientFromDynamic)
 }
 
 // Key is used as the key for associating information with a context.Context.
 type Key struct{}
 
-func withClient(ctx context.Context, cfg *rest.Config) context.Context {
+func withClientFromConfig(ctx context.Context, cfg *rest.Config) context.Context {
 	return context.WithValue(ctx, Key{}, versioned.NewForConfigOrDie(cfg))
 }
 
+func withClientFromDynamic(ctx context.Context) context.Context {
+	return context.WithValue(ctx, Key{}, &wrapClient{dyn: dynamicclient.Get(ctx)})
+}
+
 // Get extracts the versioned.Interface client from the context.
 func Get(ctx context.Context) versioned.Interface {
 	untyped := ctx.Value(Key{})
@@ -55,3 +84,1817 @@ func Get(ctx context.Context) versioned.Interface {
 	}
 	return untyped.(versioned.Interface)
 }
+
+type wrapClient struct {
+	dyn dynamic.Interface
+}
+
+var _ versioned.Interface = (*wrapClient)(nil)
+
+func (w *wrapClient) Discovery() discovery.DiscoveryInterface {
+	panic("Discovery called on dynamic client!")
+}
+
+func convert(from interface{}, to runtime.Object) error {
+	bs, err := json.Marshal(from)
+	if err != nil {
+		return fmt.Errorf("Marshal() = %w", err)
+	}
+	if err := json.Unmarshal(bs, to); err != nil {
+		return fmt.Errorf("Unmarshal() = %w", err)
+	}
+	return nil
+}
+
+// EventingV1beta1 retrieves the EventingV1beta1Client
+func (w *wrapClient) EventingV1beta1() typedeventingv1beta1.EventingV1beta1Interface {
+	return &wrapEventingV1beta1{
+		dyn: w.dyn,
+	}
+}
+
+type wrapEventingV1beta1 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapEventingV1beta1) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapEventingV1beta1) EventTypes(namespace string) typedeventingv1beta1.EventTypeInterface {
+	return &wrapEventingV1beta1EventTypeImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "eventing.knative.dev",
+			Version:  "v1beta1",
+			Resource: "eventtypes",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapEventingV1beta1EventTypeImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedeventingv1beta1.EventTypeInterface = (*wrapEventingV1beta1EventTypeImpl)(nil)
+
+func (w *wrapEventingV1beta1EventTypeImpl) Create(ctx context.Context, in *v1beta1.EventType, opts v1.CreateOptions) (*v1beta1.EventType, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1beta1",
+		Kind:    "EventType",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventType{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta1.EventType, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventType{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) List(ctx context.Context, opts v1.ListOptions) (*v1beta1.EventTypeList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventTypeList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.EventType, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventType{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) Update(ctx context.Context, in *v1beta1.EventType, opts v1.UpdateOptions) (*v1beta1.EventType, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1beta1",
+		Kind:    "EventType",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventType{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) UpdateStatus(ctx context.Context, in *v1beta1.EventType, opts v1.UpdateOptions) (*v1beta1.EventType, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1beta1",
+		Kind:    "EventType",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta1.EventType{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1beta1EventTypeImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+// EventingV1 retrieves the EventingV1Client
+func (w *wrapClient) EventingV1() typedeventingv1.EventingV1Interface {
+	return &wrapEventingV1{
+		dyn: w.dyn,
+	}
+}
+
+type wrapEventingV1 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapEventingV1) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapEventingV1) Brokers(namespace string) typedeventingv1.BrokerInterface {
+	return &wrapEventingV1BrokerImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "eventing.knative.dev",
+			Version:  "v1",
+			Resource: "brokers",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapEventingV1BrokerImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedeventingv1.BrokerInterface = (*wrapEventingV1BrokerImpl)(nil)
+
+func (w *wrapEventingV1BrokerImpl) Create(ctx context.Context, in *eventingv1.Broker, opts v1.CreateOptions) (*eventingv1.Broker, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Broker",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Broker{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapEventingV1BrokerImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapEventingV1BrokerImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*eventingv1.Broker, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Broker{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) List(ctx context.Context, opts v1.ListOptions) (*eventingv1.BrokerList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.BrokerList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *eventingv1.Broker, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Broker{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) Update(ctx context.Context, in *eventingv1.Broker, opts v1.UpdateOptions) (*eventingv1.Broker, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Broker",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Broker{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) UpdateStatus(ctx context.Context, in *eventingv1.Broker, opts v1.UpdateOptions) (*eventingv1.Broker, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Broker",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Broker{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1BrokerImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapEventingV1) Triggers(namespace string) typedeventingv1.TriggerInterface {
+	return &wrapEventingV1TriggerImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "eventing.knative.dev",
+			Version:  "v1",
+			Resource: "triggers",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapEventingV1TriggerImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedeventingv1.TriggerInterface = (*wrapEventingV1TriggerImpl)(nil)
+
+func (w *wrapEventingV1TriggerImpl) Create(ctx context.Context, in *eventingv1.Trigger, opts v1.CreateOptions) (*eventingv1.Trigger, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Trigger",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Trigger{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapEventingV1TriggerImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapEventingV1TriggerImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*eventingv1.Trigger, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Trigger{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) List(ctx context.Context, opts v1.ListOptions) (*eventingv1.TriggerList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.TriggerList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *eventingv1.Trigger, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Trigger{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) Update(ctx context.Context, in *eventingv1.Trigger, opts v1.UpdateOptions) (*eventingv1.Trigger, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Trigger",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Trigger{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) UpdateStatus(ctx context.Context, in *eventingv1.Trigger, opts v1.UpdateOptions) (*eventingv1.Trigger, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "eventing.knative.dev",
+		Version: "v1",
+		Kind:    "Trigger",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &eventingv1.Trigger{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapEventingV1TriggerImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+// FlowsV1 retrieves the FlowsV1Client
+func (w *wrapClient) FlowsV1() typedflowsv1.FlowsV1Interface {
+	return &wrapFlowsV1{
+		dyn: w.dyn,
+	}
+}
+
+type wrapFlowsV1 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapFlowsV1) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapFlowsV1) Parallels(namespace string) typedflowsv1.ParallelInterface {
+	return &wrapFlowsV1ParallelImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "flows.knative.dev",
+			Version:  "v1",
+			Resource: "parallels",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapFlowsV1ParallelImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedflowsv1.ParallelInterface = (*wrapFlowsV1ParallelImpl)(nil)
+
+func (w *wrapFlowsV1ParallelImpl) Create(ctx context.Context, in *flowsv1.Parallel, opts v1.CreateOptions) (*flowsv1.Parallel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Parallel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Parallel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapFlowsV1ParallelImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapFlowsV1ParallelImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*flowsv1.Parallel, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Parallel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) List(ctx context.Context, opts v1.ListOptions) (*flowsv1.ParallelList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.ParallelList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *flowsv1.Parallel, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Parallel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) Update(ctx context.Context, in *flowsv1.Parallel, opts v1.UpdateOptions) (*flowsv1.Parallel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Parallel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Parallel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) UpdateStatus(ctx context.Context, in *flowsv1.Parallel, opts v1.UpdateOptions) (*flowsv1.Parallel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Parallel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Parallel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1ParallelImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapFlowsV1) Sequences(namespace string) typedflowsv1.SequenceInterface {
+	return &wrapFlowsV1SequenceImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "flows.knative.dev",
+			Version:  "v1",
+			Resource: "sequences",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapFlowsV1SequenceImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedflowsv1.SequenceInterface = (*wrapFlowsV1SequenceImpl)(nil)
+
+func (w *wrapFlowsV1SequenceImpl) Create(ctx context.Context, in *flowsv1.Sequence, opts v1.CreateOptions) (*flowsv1.Sequence, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Sequence",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Sequence{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapFlowsV1SequenceImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapFlowsV1SequenceImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*flowsv1.Sequence, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Sequence{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) List(ctx context.Context, opts v1.ListOptions) (*flowsv1.SequenceList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.SequenceList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *flowsv1.Sequence, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Sequence{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) Update(ctx context.Context, in *flowsv1.Sequence, opts v1.UpdateOptions) (*flowsv1.Sequence, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Sequence",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Sequence{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) UpdateStatus(ctx context.Context, in *flowsv1.Sequence, opts v1.UpdateOptions) (*flowsv1.Sequence, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "flows.knative.dev",
+		Version: "v1",
+		Kind:    "Sequence",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &flowsv1.Sequence{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapFlowsV1SequenceImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+// MessagingV1 retrieves the MessagingV1Client
+func (w *wrapClient) MessagingV1() typedmessagingv1.MessagingV1Interface {
+	return &wrapMessagingV1{
+		dyn: w.dyn,
+	}
+}
+
+type wrapMessagingV1 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapMessagingV1) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapMessagingV1) Channels(namespace string) typedmessagingv1.ChannelInterface {
+	return &wrapMessagingV1ChannelImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "messaging.knative.dev",
+			Version:  "v1",
+			Resource: "channels",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapMessagingV1ChannelImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedmessagingv1.ChannelInterface = (*wrapMessagingV1ChannelImpl)(nil)
+
+func (w *wrapMessagingV1ChannelImpl) Create(ctx context.Context, in *messagingv1.Channel, opts v1.CreateOptions) (*messagingv1.Channel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Channel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Channel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapMessagingV1ChannelImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapMessagingV1ChannelImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*messagingv1.Channel, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Channel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) List(ctx context.Context, opts v1.ListOptions) (*messagingv1.ChannelList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.ChannelList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *messagingv1.Channel, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Channel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) Update(ctx context.Context, in *messagingv1.Channel, opts v1.UpdateOptions) (*messagingv1.Channel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Channel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Channel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) UpdateStatus(ctx context.Context, in *messagingv1.Channel, opts v1.UpdateOptions) (*messagingv1.Channel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Channel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Channel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1ChannelImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapMessagingV1) InMemoryChannels(namespace string) typedmessagingv1.InMemoryChannelInterface {
+	return &wrapMessagingV1InMemoryChannelImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "messaging.knative.dev",
+			Version:  "v1",
+			Resource: "inmemorychannels",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapMessagingV1InMemoryChannelImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedmessagingv1.InMemoryChannelInterface = (*wrapMessagingV1InMemoryChannelImpl)(nil)
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Create(ctx context.Context, in *messagingv1.InMemoryChannel, opts v1.CreateOptions) (*messagingv1.InMemoryChannel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "InMemoryChannel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*messagingv1.InMemoryChannel, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) List(ctx context.Context, opts v1.ListOptions) (*messagingv1.InMemoryChannelList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannelList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *messagingv1.InMemoryChannel, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Update(ctx context.Context, in *messagingv1.InMemoryChannel, opts v1.UpdateOptions) (*messagingv1.InMemoryChannel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "InMemoryChannel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) UpdateStatus(ctx context.Context, in *messagingv1.InMemoryChannel, opts v1.UpdateOptions) (*messagingv1.InMemoryChannel, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "InMemoryChannel",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.InMemoryChannel{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1InMemoryChannelImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapMessagingV1) Subscriptions(namespace string) typedmessagingv1.SubscriptionInterface {
+	return &wrapMessagingV1SubscriptionImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "messaging.knative.dev",
+			Version:  "v1",
+			Resource: "subscriptions",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapMessagingV1SubscriptionImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedmessagingv1.SubscriptionInterface = (*wrapMessagingV1SubscriptionImpl)(nil)
+
+func (w *wrapMessagingV1SubscriptionImpl) Create(ctx context.Context, in *messagingv1.Subscription, opts v1.CreateOptions) (*messagingv1.Subscription, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Subscription",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Subscription{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*messagingv1.Subscription, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Subscription{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) List(ctx context.Context, opts v1.ListOptions) (*messagingv1.SubscriptionList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.SubscriptionList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *messagingv1.Subscription, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Subscription{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) Update(ctx context.Context, in *messagingv1.Subscription, opts v1.UpdateOptions) (*messagingv1.Subscription, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Subscription",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Subscription{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) UpdateStatus(ctx context.Context, in *messagingv1.Subscription, opts v1.UpdateOptions) (*messagingv1.Subscription, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "messaging.knative.dev",
+		Version: "v1",
+		Kind:    "Subscription",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &messagingv1.Subscription{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapMessagingV1SubscriptionImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+// SourcesV1beta2 retrieves the SourcesV1beta2Client
+func (w *wrapClient) SourcesV1beta2() typedsourcesv1beta2.SourcesV1beta2Interface {
+	return &wrapSourcesV1beta2{
+		dyn: w.dyn,
+	}
+}
+
+type wrapSourcesV1beta2 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapSourcesV1beta2) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapSourcesV1beta2) PingSources(namespace string) typedsourcesv1beta2.PingSourceInterface {
+	return &wrapSourcesV1beta2PingSourceImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "sources.knative.dev",
+			Version:  "v1beta2",
+			Resource: "pingsources",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapSourcesV1beta2PingSourceImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedsourcesv1beta2.PingSourceInterface = (*wrapSourcesV1beta2PingSourceImpl)(nil)
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Create(ctx context.Context, in *v1beta2.PingSource, opts v1.CreateOptions) (*v1beta2.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1beta2",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta2.PingSource, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) List(ctx context.Context, opts v1.ListOptions) (*v1beta2.PingSourceList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSourceList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta2.PingSource, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Update(ctx context.Context, in *v1beta2.PingSource, opts v1.UpdateOptions) (*v1beta2.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1beta2",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) UpdateStatus(ctx context.Context, in *v1beta2.PingSource, opts v1.UpdateOptions) (*v1beta2.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1beta2",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &v1beta2.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1beta2PingSourceImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+// SourcesV1 retrieves the SourcesV1Client
+func (w *wrapClient) SourcesV1() typedsourcesv1.SourcesV1Interface {
+	return &wrapSourcesV1{
+		dyn: w.dyn,
+	}
+}
+
+type wrapSourcesV1 struct {
+	dyn dynamic.Interface
+}
+
+func (w *wrapSourcesV1) RESTClient() rest.Interface {
+	panic("RESTClient called on dynamic client!")
+}
+
+func (w *wrapSourcesV1) ApiServerSources(namespace string) typedsourcesv1.ApiServerSourceInterface {
+	return &wrapSourcesV1ApiServerSourceImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "sources.knative.dev",
+			Version:  "v1",
+			Resource: "apiserversources",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapSourcesV1ApiServerSourceImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedsourcesv1.ApiServerSourceInterface = (*wrapSourcesV1ApiServerSourceImpl)(nil)
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Create(ctx context.Context, in *sourcesv1.ApiServerSource, opts v1.CreateOptions) (*sourcesv1.ApiServerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ApiServerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*sourcesv1.ApiServerSource, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) List(ctx context.Context, opts v1.ListOptions) (*sourcesv1.ApiServerSourceList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSourceList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *sourcesv1.ApiServerSource, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Update(ctx context.Context, in *sourcesv1.ApiServerSource, opts v1.UpdateOptions) (*sourcesv1.ApiServerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ApiServerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) UpdateStatus(ctx context.Context, in *sourcesv1.ApiServerSource, opts v1.UpdateOptions) (*sourcesv1.ApiServerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ApiServerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ApiServerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ApiServerSourceImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapSourcesV1) ContainerSources(namespace string) typedsourcesv1.ContainerSourceInterface {
+	return &wrapSourcesV1ContainerSourceImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "sources.knative.dev",
+			Version:  "v1",
+			Resource: "containersources",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapSourcesV1ContainerSourceImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedsourcesv1.ContainerSourceInterface = (*wrapSourcesV1ContainerSourceImpl)(nil)
+
+func (w *wrapSourcesV1ContainerSourceImpl) Create(ctx context.Context, in *sourcesv1.ContainerSource, opts v1.CreateOptions) (*sourcesv1.ContainerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ContainerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*sourcesv1.ContainerSource, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) List(ctx context.Context, opts v1.ListOptions) (*sourcesv1.ContainerSourceList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSourceList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *sourcesv1.ContainerSource, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) Update(ctx context.Context, in *sourcesv1.ContainerSource, opts v1.UpdateOptions) (*sourcesv1.ContainerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ContainerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) UpdateStatus(ctx context.Context, in *sourcesv1.ContainerSource, opts v1.UpdateOptions) (*sourcesv1.ContainerSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "ContainerSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.ContainerSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1ContainerSourceImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapSourcesV1) PingSources(namespace string) typedsourcesv1.PingSourceInterface {
+	return &wrapSourcesV1PingSourceImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "sources.knative.dev",
+			Version:  "v1",
+			Resource: "pingsources",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapSourcesV1PingSourceImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedsourcesv1.PingSourceInterface = (*wrapSourcesV1PingSourceImpl)(nil)
+
+func (w *wrapSourcesV1PingSourceImpl) Create(ctx context.Context, in *sourcesv1.PingSource, opts v1.CreateOptions) (*sourcesv1.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapSourcesV1PingSourceImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapSourcesV1PingSourceImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*sourcesv1.PingSource, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) List(ctx context.Context, opts v1.ListOptions) (*sourcesv1.PingSourceList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSourceList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *sourcesv1.PingSource, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) Update(ctx context.Context, in *sourcesv1.PingSource, opts v1.UpdateOptions) (*sourcesv1.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) UpdateStatus(ctx context.Context, in *sourcesv1.PingSource, opts v1.UpdateOptions) (*sourcesv1.PingSource, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "PingSource",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.PingSource{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1PingSourceImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
+
+func (w *wrapSourcesV1) SinkBindings(namespace string) typedsourcesv1.SinkBindingInterface {
+	return &wrapSourcesV1SinkBindingImpl{
+		dyn: w.dyn.Resource(schema.GroupVersionResource{
+			Group:    "sources.knative.dev",
+			Version:  "v1",
+			Resource: "sinkbindings",
+		}),
+
+		namespace: namespace,
+	}
+}
+
+type wrapSourcesV1SinkBindingImpl struct {
+	dyn dynamic.NamespaceableResourceInterface
+
+	namespace string
+}
+
+var _ typedsourcesv1.SinkBindingInterface = (*wrapSourcesV1SinkBindingImpl)(nil)
+
+func (w *wrapSourcesV1SinkBindingImpl) Create(ctx context.Context, in *sourcesv1.SinkBinding, opts v1.CreateOptions) (*sourcesv1.SinkBinding, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "SinkBinding",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Create(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBinding{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error {
+	return w.dyn.Namespace(w.namespace).Delete(ctx, name, opts)
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error {
+	return w.dyn.Namespace(w.namespace).DeleteCollection(ctx, opts, listOpts)
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) Get(ctx context.Context, name string, opts v1.GetOptions) (*sourcesv1.SinkBinding, error) {
+	uo, err := w.dyn.Namespace(w.namespace).Get(ctx, name, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBinding{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) List(ctx context.Context, opts v1.ListOptions) (*sourcesv1.SinkBindingList, error) {
+	uo, err := w.dyn.Namespace(w.namespace).List(ctx, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBindingList{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *sourcesv1.SinkBinding, err error) {
+	uo, err := w.dyn.Namespace(w.namespace).Patch(ctx, name, pt, data, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBinding{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) Update(ctx context.Context, in *sourcesv1.SinkBinding, opts v1.UpdateOptions) (*sourcesv1.SinkBinding, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "SinkBinding",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).Update(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBinding{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) UpdateStatus(ctx context.Context, in *sourcesv1.SinkBinding, opts v1.UpdateOptions) (*sourcesv1.SinkBinding, error) {
+	in.SetGroupVersionKind(schema.GroupVersionKind{
+		Group:   "sources.knative.dev",
+		Version: "v1",
+		Kind:    "SinkBinding",
+	})
+	uo := &unstructured.Unstructured{}
+	if err := convert(in, uo); err != nil {
+		return nil, err
+	}
+	uo, err := w.dyn.Namespace(w.namespace).UpdateStatus(ctx, uo, opts)
+	if err != nil {
+		return nil, err
+	}
+	out := &sourcesv1.SinkBinding{}
+	if err := convert(uo, out); err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (w *wrapSourcesV1SinkBindingImpl) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) {
+	return nil, errors.New("NYI: Watch")
+}
diff --git a/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/broker.go b/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/broker.go
index 5109b5367..721a08104 100644
--- a/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/broker.go
+++ b/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/broker.go
@@ -21,8 +21,15 @@ package broker
 import (
 	context "context"
 
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	labels "k8s.io/apimachinery/pkg/labels"
+	cache "k8s.io/client-go/tools/cache"
+	apiseventingv1 "knative.dev/eventing/pkg/apis/eventing/v1"
+	versioned "knative.dev/eventing/pkg/client/clientset/versioned"
 	v1 "knative.dev/eventing/pkg/client/informers/externalversions/eventing/v1"
+	client "knative.dev/eventing/pkg/client/injection/client"
 	factory "knative.dev/eventing/pkg/client/injection/informers/factory"
+	eventingv1 "knative.dev/eventing/pkg/client/listers/eventing/v1"
 	controller "knative.dev/pkg/controller"
 	injection "knative.dev/pkg/injection"
 	logging "knative.dev/pkg/logging"
@@ -30,6 +37,7 @@ import (
 
 func init() {
 	injection.Default.RegisterInformer(withInformer)
+	injection.Dynamic.RegisterDynamicInformer(withDynamicInformer)
 }
 
 // Key is used for associating the Informer inside the context.Context.
@@ -41,6 +49,11 @@ func withInformer(ctx context.Context) (context.Context, controller.Informer) {
 	return context.WithValue(ctx, Key{}, inf), inf.Informer()
 }
 
+func withDynamicInformer(ctx context.Context) context.Context {
+	inf := &wrapper{client: client.Get(ctx)}
+	return context.WithValue(ctx, Key{}, inf)
+}
+
 // Get extracts the typed informer from the context.
 func Get(ctx context.Context) v1.BrokerInformer {
 	untyped := ctx.Value(Key{})
@@ -50,3 +63,44 @@ func Get(ctx context.Context) v1.BrokerInformer {
 	}
 	return untyped.(v1.BrokerInformer)
 }
+
+type wrapper struct {
+	client versioned.Interface
+
+	namespace string
+}
+
+var _ v1.BrokerInformer = (*wrapper)(nil)
+var _ eventingv1.BrokerLister = (*wrapper)(nil)
+
+func (w *wrapper) Informer() cache.SharedIndexInformer {
+	return cache.NewSharedIndexInformer(nil, &apiseventingv1.Broker{}, 0, nil)
+}
+
+func (w *wrapper) Lister() eventingv1.BrokerLister {
+	return w
+}
+
+func (w *wrapper) Brokers(namespace string) eventingv1.BrokerNamespaceLister {
+	return &wrapper{client: w.client, namespace: namespace}
+}
+
+func (w *wrapper) List(selector labels.Selector) (ret []*apiseventingv1.Broker, err error) {
+	lo, err := w.client.EventingV1().Brokers(w.namespace).List(context.TODO(), metav1.ListOptions{
+		LabelSelector: selector.String(),
+		// TODO(mattmoor): Incorporate resourceVersion bounds based on staleness criteria.
+	})
+	if err != nil {
+		return nil, err
+	}
+	for idx := range lo.Items {
+		ret = append(ret, &lo.Items[idx])
+	}
+	return ret, nil
+}
+
+func (w *wrapper) Get(name string) (*apiseventingv1.Broker, error) {
+	return w.client.EventingV1().Brokers(w.namespace).Get(context.TODO(), name, metav1.GetOptions{
+		// TODO(mattmoor): Incorporate resourceVersion bounds based on staleness criteria.
+	})
+}
diff --git a/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/trigger/trigger.go b/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/trigger/trigger.go
index d585db09d..59d81fd6d 100644
--- a/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/trigger/trigger.go
+++ b/vendor/knative.dev/eventing/pkg/client/injection/informers/eventing/v1/trigger/trigger.go
@@ -21,8 +21,15 @@ package trigger
 import (
 	context "context"
 
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	labels "k8s.io/apimachinery/pkg/labels"
+	cache "k8s.io/client-go/tools/cache"
+	apiseventingv1 "knative.dev/eventing/pkg/apis/eventing/v1"
+	versioned "knative.dev/eventing/pkg/client/clientset/versioned"
 	v1 "knative.dev/eventing/pkg/client/informers/externalversions/eventing/v1"
+	client "knative.dev/eventing/pkg/client/injection/client"
 	factory "knative.dev/eventing/pkg/client/injection/informers/factory"
+	eventingv1 "knative.dev/eventing/pkg/client/listers/eventing/v1"
 	controller "knative.dev/pkg/controller"
 	injection "knative.dev/pkg/injection"
 	logging "knative.dev/pkg/logging"
@@ -30,6 +37,7 @@ import (
 
 func init() {
 	injection.Default.RegisterInformer(withInformer)
+	injection.Dynamic.RegisterDynamicInformer(withDynamicInformer)
 }
 
 // Key is used for associating the Informer inside the context.Context.
@@ -41,6 +49,11 @@ func withInformer(ctx context.Context) (context.Context, controller.Informer) {
 	return context.WithValue(ctx, Key{}, inf), inf.Informer()
 }
 
+func withDynamicInformer(ctx context.Context) context.Context {
+	inf := &wrapper{client: client.Get(ctx)}
+	return context.WithValue(ctx, Key{}, inf)
+}
+
 // Get extracts the typed informer from the context.
 func Get(ctx context.Context) v1.TriggerInformer {
 	untyped := ctx.Value(Key{})
@@ -50,3 +63,44 @@ func Get(ctx context.Context) v1.TriggerInformer {
 	}
 	return untyped.(v1.TriggerInformer)
 }
+
+type wrapper struct {
+	client versioned.Interface
+
+	namespace string
+}
+
+var _ v1.TriggerInformer = (*wrapper)(nil)
+var _ eventingv1.TriggerLister = (*wrapper)(nil)
+
+func (w *wrapper) Informer() cache.SharedIndexInformer {
+	return cache.NewSharedIndexInformer(nil, &apiseventingv1.Trigger{}, 0, nil)
+}
+
+func (w *wrapper) Lister() eventingv1.TriggerLister {
+	return w
+}
+
+func (w *wrapper) Triggers(namespace string) eventingv1.TriggerNamespaceLister {
+	return &wrapper{client: w.client, namespace: namespace}
+}
+
+func (w *wrapper) List(selector labels.Selector) (ret []*apiseventingv1.Trigger, err error) {
+	lo, err := w.client.EventingV1().Triggers(w.namespace).List(context.TODO(), metav1.ListOptions{
+		LabelSelector: selector.String(),
+		// TODO(mattmoor): Incorporate resourceVersion bounds based on staleness criteria.
+	})
+	if err != nil {
+		return nil, err
+	}
+	for idx := range lo.Items {
+		ret = append(ret, &lo.Items[idx])
+	}
+	return ret, nil
+}
+
+func (w *wrapper) Get(name string) (*apiseventingv1.Trigger, error) {
+	return w.client.EventingV1().Triggers(w.namespace).Get(context.TODO(), name, metav1.GetOptions{
+		// TODO(mattmoor): Incorporate resourceVersion bounds based on staleness criteria.
+	})
+}
diff --git a/vendor/modules.txt b/vendor/modules.txt
index aff2b0fd7..381f1ab0a 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -954,7 +954,7 @@ k8s.io/utils/buffer
 k8s.io/utils/integer
 k8s.io/utils/pointer
 k8s.io/utils/trace
-# knative.dev/eventing v0.25.1-0.20210818214503-4b18ab87646a
+# knative.dev/eventing v0.25.1-0.20210819160604-19fcdf4b2aed
 ## explicit
 knative.dev/eventing/pkg/apis/config
 knative.dev/eventing/pkg/apis/duck
@@ -1065,7 +1065,7 @@ knative.dev/eventing/test/test_images/request-sender
 # knative.dev/hack v0.0.0-20210806075220-815cd312d65c
 ## explicit
 knative.dev/hack
-# knative.dev/pkg v0.0.0-20210818135208-7b5ecbc0e477
+# knative.dev/pkg v0.0.0-20210819054404-bda81c029160
 ## explicit
 knative.dev/pkg/apis
 knative.dev/pkg/apis/duck


Test patch:
diff --git a/third_party/eventing-latest/eventing-core.yaml b/third_party/eventing-latest/eventing-core.yaml
index d91ac1821..afff09e01 100644
--- a/third_party/eventing-latest/eventing-core.yaml
+++ b/third_party/eventing-latest/eventing-core.yaml
@@ -16,7 +16,7 @@ kind: Namespace
 metadata:
   name: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 
 ---
 # Copyright 2018 The Knative Authors
@@ -39,14 +39,14 @@ metadata:
   name: eventing-controller
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRoleBinding
 metadata:
   name: eventing-controller
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-controller
@@ -61,7 +61,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-controller
@@ -76,7 +76,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-source-observer
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-controller
@@ -91,7 +91,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-sources-controller
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-controller
@@ -106,7 +106,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-manipulator
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-controller
@@ -137,14 +137,14 @@ metadata:
   name: pingsource-mt-adapter
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRoleBinding
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: pingsource-mt-adapter
@@ -175,14 +175,14 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-webhook
@@ -198,7 +198,7 @@ metadata:
   namespace: knative-eventing
   name: eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-webhook
@@ -213,7 +213,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-webhook
@@ -228,7 +228,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 subjects:
   - kind: ServiceAccount
     name: eventing-webhook
@@ -259,7 +259,7 @@ metadata:
   name: config-br-default-channel
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 data:
   channelTemplateSpec: |
     apiVersion: messaging.knative.dev/v1
@@ -286,7 +286,7 @@ metadata:
   name: config-br-defaults
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 data:
   # Configuration for defaulting channels that do not specify CRD implementations.
   default-br-config: |
@@ -318,7 +318,7 @@ metadata:
   name: default-ch-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 data:
   # Configuration for defaulting channels that do not specify CRD implementations.
   default-ch-config: |
@@ -351,7 +351,7 @@ metadata:
   name: config-ping-defaults
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
   annotations:
     knative.dev/example-checksum: "f8e5a744"
 data:
@@ -396,7 +396,7 @@ metadata:
   name: config-features
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
 data:
@@ -428,7 +428,7 @@ metadata:
   name: config-leader-election
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
   annotations:
     knative.dev/example-checksum: "96896b00"
 data:
@@ -488,7 +488,7 @@ metadata:
   name: config-logging
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
 data:
@@ -540,7 +540,7 @@ metadata:
   name: config-observability
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
   annotations:
@@ -615,7 +615,7 @@ metadata:
   name: config-tracing
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
   annotations:
@@ -676,7 +676,7 @@ metadata:
   name: eventing-controller
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/high-availability: "true"
 spec:
   selector:
@@ -686,7 +686,7 @@ spec:
     metadata:
       labels:
         app: eventing-controller
-        eventing.knative.dev/release: "v20210813-41e36eea8"
+        eventing.knative.dev/release: "v20210818-c1838335a"
     spec:
       # To avoid node becoming SPOF, spread our replicas to different nodes.
       affinity:
@@ -703,7 +703,7 @@ spec:
       containers:
         - name: eventing-controller
           terminationMessagePolicy: FallbackToLogsOnError
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:3a1b813eaca314b30bef9eb8cbb52df5df76141215148f01a585a570bab33c51
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:9c26455c9a506eebbe9deca86c11d35b9e75e86bbb574f8bd5adbf309a958e2f
           resources:
             requests:
               cpu: 100m
@@ -721,7 +721,7 @@ spec:
               value: knative.dev/eventing
             # APIServerSource
             - name: APISERVER_RA_IMAGE
-              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:a190a4e0e0ae258bb3eb329a15c1ba37f05f5b7c3d057f85942931fbce575c9f
+              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:ab7cde1e8fcab2d102ca29d9568e1a4843c73260c8f73fd0dd32674cdb2cb2a2
             - name: POD_NAME
               valueFrom:
                 fieldRef:
@@ -765,7 +765,7 @@ metadata:
   name: pingsource-mt-adapter
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 spec:
   # when set to 0 (and only 0) will be set to 1 when the first PingSource is created.
   replicas: 0
@@ -777,7 +777,7 @@ spec:
     metadata:
       labels:
         !!merge <<: *labels
-        eventing.knative.dev/release: "v20210813-41e36eea8"
+        eventing.knative.dev/release: "v20210818-c1838335a"
     spec:
       affinity:
         podAntiAffinity:
@@ -790,7 +790,7 @@ spec:
       enableServiceLinks: false
       containers:
         - name: dispatcher
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:a1012ca0510617c5445c610f6b9a1ee1c16977e9dc1489171edcf72c8f59f527
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:d0184e944256eb566b1564e03091822d7a1f7c4c2dcfe139545c2ff3928949f7
           env:
             - name: SYSTEM_NAMESPACE
               value: ''
@@ -848,7 +848,7 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 spec:
   scaleTargetRef:
     apiVersion: apps/v1
@@ -871,7 +871,7 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 spec:
   minAvailable: 80%
   selector:
@@ -899,7 +899,7 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 spec:
   selector:
     matchLabels: &labels
@@ -926,7 +926,7 @@ spec:
           terminationMessagePolicy: FallbackToLogsOnError
           # This is the Go import path for the binary that is containerized
           # and substituted here.
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/webhook@sha256:c9056e78eb5efda4f9d435355aa4594d29426d08e44f847e449b1e5be92e7047
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/webhook@sha256:ad4417009aa903a10043c6755321e94e9a06f58ee4c123f373eb72e6ffb6029b
           resources:
             requests:
               # taken from serving.
@@ -990,7 +990,7 @@ apiVersion: v1
 kind: Service
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     role: eventing-webhook
   name: eventing-webhook
   namespace: knative-eventing
@@ -1022,7 +1022,7 @@ kind: CustomResourceDefinition
 metadata:
   creationTimestamp: null
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -1236,7 +1236,7 @@ kind: CustomResourceDefinition
 metadata:
   name: brokers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -1398,7 +1398,7 @@ kind: CustomResourceDefinition
 metadata:
   name: channels.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
@@ -1668,7 +1668,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -1820,7 +1820,7 @@ kind: CustomResourceDefinition
 metadata:
   name: eventtypes.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: eventing.knative.dev
@@ -1947,7 +1947,7 @@ kind: CustomResourceDefinition
 metadata:
   name: parallels.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -2200,7 +2200,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -2389,7 +2389,7 @@ kind: CustomResourceDefinition
 metadata:
   name: sequences.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -2708,7 +2708,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
@@ -2898,7 +2898,7 @@ kind: CustomResourceDefinition
 metadata:
   name: subscriptions.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: messaging.knative.dev
@@ -3108,7 +3108,7 @@ kind: CustomResourceDefinition
 metadata:
   name: triggers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: eventing.knative.dev
@@ -3287,7 +3287,7 @@ kind: ClusterRole
 metadata:
   name: addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 aggregationRule:
   clusterRoleSelectors:
     - matchLabels:
@@ -3299,7 +3299,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: service-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3317,7 +3317,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: serving-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3338,7 +3338,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: channel-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3363,7 +3363,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: broker-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3382,7 +3382,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: messaging-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3403,7 +3403,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: flows-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/addressable: "true"
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3439,7 +3439,7 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-filter
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -3464,7 +3464,7 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-ingress
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -3480,7 +3480,7 @@ kind: ClusterRole
 metadata:
   name: eventing-config-reader
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -3512,7 +3512,7 @@ kind: ClusterRole
 metadata:
   name: channelable-manipulator
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 aggregationRule:
   clusterRoleSelectors:
     - matchLabels:
@@ -3524,7 +3524,7 @@ kind: ClusterRole
 metadata:
   name: meta-channelable-manipulator
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/channelable: "true"
 # Do not use this role directly. These rules will be added to the "channelable-manipulator" role.
 rules:
@@ -3561,7 +3561,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-eventing-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
 rules:
   - apiGroups: ["eventing.knative.dev"]
@@ -3573,7 +3573,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-messaging-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
 rules:
   - apiGroups: ["messaging.knative.dev"]
@@ -3585,7 +3585,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-flows-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
 rules:
   - apiGroups: ["flows.knative.dev"]
@@ -3597,7 +3597,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-sources-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
 rules:
   - apiGroups: ["sources.knative.dev"]
@@ -3609,7 +3609,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-bindings-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
 rules:
   - apiGroups: ["bindings.knative.dev"]
@@ -3622,7 +3622,7 @@ metadata:
   name: knative-eventing-namespaced-edit
   labels:
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
     resources: ["*"]
@@ -3634,7 +3634,7 @@ metadata:
   name: knative-eventing-namespaced-view
   labels:
     rbac.authorization.k8s.io/aggregate-to-view: "true"
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
     resources: ["*"]
@@ -3660,7 +3660,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-controller
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -3794,7 +3794,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -3860,7 +3860,7 @@ kind: ClusterRole
 metadata:
   name: podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 aggregationRule:
   clusterRoleSelectors:
     - matchLabels:
@@ -3872,7 +3872,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: builtin-podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/podspecable: "true"
 # Do not use this role directly. These rules will be added to the "podspecable-binding role.
 rules:
@@ -3918,7 +3918,7 @@ kind: ClusterRole
 metadata:
   name: source-observer
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 aggregationRule:
   clusterRoleSelectors:
     - matchLabels:
@@ -3930,7 +3930,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: eventing-sources-source-observer
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     duck.knative.dev/source: "true"
 # Do not use this role directly. These rules will be added to the "source-observer" role.
 rules:
@@ -3966,7 +3966,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-sources-controller
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   - apiGroups:
       - ""
@@ -4051,7 +4051,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   # For watching logging configuration and getting certs.
   - apiGroups:
@@ -4149,7 +4149,7 @@ metadata:
   namespace: knative-eventing
   name: knative-eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 rules:
   # For manipulating certs into secrets.
   - apiGroups:
@@ -4184,7 +4184,7 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: config.webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
     clientConfig:
@@ -4220,7 +4220,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
     clientConfig:
@@ -4252,7 +4252,7 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: validation.webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
     clientConfig:
@@ -4285,7 +4285,7 @@ metadata:
   name: eventing-webhook-certs
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 # The data is populated at install time.
 
 ---
@@ -4308,7 +4308,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: sinkbindings.webhook.sources.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
     clientConfig:
diff --git a/third_party/eventing-latest/eventing-crds.yaml b/third_party/eventing-latest/eventing-crds.yaml
index fc2c20e65..2c47f7d39 100644
--- a/third_party/eventing-latest/eventing-crds.yaml
+++ b/third_party/eventing-latest/eventing-crds.yaml
@@ -17,7 +17,7 @@ kind: CustomResourceDefinition
 metadata:
   creationTimestamp: null
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -231,7 +231,7 @@ kind: CustomResourceDefinition
 metadata:
   name: brokers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -393,7 +393,7 @@ kind: CustomResourceDefinition
 metadata:
   name: channels.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
@@ -663,7 +663,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -815,7 +815,7 @@ kind: CustomResourceDefinition
 metadata:
   name: eventtypes.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: eventing.knative.dev
@@ -942,7 +942,7 @@ kind: CustomResourceDefinition
 metadata:
   name: parallels.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -1195,7 +1195,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
@@ -1384,7 +1384,7 @@ kind: CustomResourceDefinition
 metadata:
   name: sequences.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
 spec:
@@ -1703,7 +1703,7 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
@@ -1893,7 +1893,7 @@ kind: CustomResourceDefinition
 metadata:
   name: subscriptions.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: messaging.knative.dev
@@ -2103,7 +2103,7 @@ kind: CustomResourceDefinition
 metadata:
   name: triggers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20210813-41e36eea8"
+    eventing.knative.dev/release: "v20210818-c1838335a"
     knative.dev/crd-install: "true"
 spec:
   group: eventing.knative.dev
diff --git a/vendor/knative.dev/eventing/pkg/reconciler/testing/v1/trigger.go b/vendor/knative.dev/eventing/pkg/reconciler/testing/v1/trigger.go
index bd9ba6ad0..cd03d0391 100644
--- a/vendor/knative.dev/eventing/pkg/reconciler/testing/v1/trigger.go
+++ b/vendor/knative.dev/eventing/pkg/reconciler/testing/v1/trigger.go
@@ -192,7 +192,7 @@ func WithTriggerStatusSubscriberURI(uri string) TriggerOption {
 func WithTriggerStatusDeadLetterSinkURI(uri string) TriggerOption {
 	return func(t *v1.Trigger) {
 		u, _ := apis.ParseURL(uri)
-		t.Status.DeadLetterURI = u
+		t.Status.DeadLetterSinkURI = u
 	}
 }