This edge release introduces a change in the destination service to honor opaque ports set in the `proxyProtocol` field of `Server` resources. This change makes it possible to set opaque ports directly in `Server` resources without needing the opaque ports annotation on pods. The release also features a number of fixes and improvements, a big thank you to our external contributors for their continued support and involvement. * Added support in the destination service for honoring opaque ports marked in `Server` resources; ports can now be marked as opaque directly in `Server` resources through the `proxyProtocol` field. * Added support to override default behavior and run `proxyInit` as root (thanks @alex-berger!) * Added multicluster `Link` CRD to code generation script; consumers of the multicluster API can now use a typed API to interact with multicluster links (thanks @zaharidichev!) * Added a multicluster integration test for exported headless services (thanks @importhuman!) * Deprecated `v1alpha1` version of the policy APIs * Removed newline from `linkerd check` header text (thanks @mikutas!) * Replaced deprecated `beta.kubernetes.io/os` label with `kubernetes.io/os`