-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🌱 Downgrade github.com/evanphx/json-patch library to v4 to match upstream #2643
🌱 Downgrade github.com/evanphx/json-patch library to v4 to match upstream #2643
Conversation
Hi @aerfio. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/ok-to-test |
pkg/client/fake/client.go
Outdated
@@ -29,8 +29,7 @@ import ( | |||
"sync" | |||
"time" | |||
|
|||
// Using v4 to match upstream |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/hold
This was intentional, see the godoc comment. Did upstream move to v5?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I saw it, but I concluded that it was stale comment because in go.mod there was only v5/v5+incompatible. Now that I know there was some issue with newer versions of this lib (thanks @inteon) I'll research what to do next.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The reason we use the older version here was that we copied code from upstream and wanted it to use the same library as upstream.
I wasn't aware of general issues in the library. I wonder if we should re-visit our usage of v5 with this in mind.
(I didn't take a closer look yet)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cc @vincepri @alvaroaleman for awareness.
We should probably figure out if we have to do something before we cut v0.17
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kubernetes/kubernetes#120326 mentions that v5.6.0 does not include evanphx/json-patch@50fdc0b, but it's part of v5.7.0 btw
EDIT: I also saw kubernetes-sigs/kustomize#5479, same issue, they reverted back to v4
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's only if you use
github.com/evanphx/json-patch v5.6.0+incompatible
And not for
github.com/evanphx/json-patch/v5 v5.6.0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay so my interpretation:
- Kubernetes intentionally stayed on v4 because of: Update github.com/evanphx/json-patch to version v5.0.0 kubernetes/kubernetes#91622 (comment)
- Basically because jsonpatch v5 became more RFC6902 compliant (Conform to RFC6902 replacement semantics evanphx/json-patch#85) and they didn't want to break Kubernetes users
- For the
github.com/evanphx/json-patch
module "v5.6.0+incompatible is older than v4.12.0+incompatible" (evanphx/json-patch used by 1.28 drops a fix included in 1.27 kubernetes/kubernetes#120326 (comment)) - client-go v0.29 is using
v4.12.0+incompatible
https://github.com/kubernetes/client-go/blob/v0.29.0/go.mod#L8 - we intentionally use
github.com/evanphx/json-patch
in fake/client.go because we copied code from https://github.com/kubernetes/client-go/blob/783d0d33626e59d55d52bfd7696b775851f92107/testing/fixture.go#L146-L194
Based on all this:
- I would "upgrade"
github.com/evanphx/json-patch
tov4.12.0+incompatible
to be in sync with client-go v0.29 - I would keep our regular
github.com/evanphx/json-patch/v5
dependency. I think it doesn't make sense for us to downgrade to become less compliant with RFC6902, now that we already made the move to /v5 in the past.- Note: We only use the jsonpatch/v5 dependency in this place:
controller-runtime/pkg/client/patch.go
Line 136 in a550f29
return jsonpatch.CreateMergePatch(originalJSON, modifiedJSON)
- Note: We only use the jsonpatch/v5 dependency in this place:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I've downgraded this dep to v4. I also copied the comment that you originally asked about to the go.mod, so that any changes to this line will be visible in the future. I hope this will prevent accidental changes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
b299f35
to
2406935
Compare
2406935
to
b72383f
Compare
/retest |
Hmm the
But there's no difference between changed to vs from. Is go-apidiff generics compatible? This PR is running a couple hours after #2592 was merged, which is the first (IIRC) public usage of generics in c-r, it might be related |
Try rebasing |
@vincepri already did that with the earlier force-push |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: aerfio, vincepri The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
@sbueringer hold is yours to clear |
Thx! /lgtm /hold cancel |
/test ? |
@sbueringer: The following commands are available to trigger required jobs:
The following commands are available to trigger optional jobs:
Use In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
b72383f
to
c01010e
Compare
No idea why but tide was blocked because it though the hold label was there even though it wasn't. Force pushed the PR to force a re-run of everything |
/lgtm |
@aerfio: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
Just an additional thought, if I understand this situation correctly: it might be nice to mention in the release notes that c-r users should downgrade github.com/evanphx/json-patch to v4.12.0 to match client-go (or upgrade all the way up to v5.7.0) so that the fix evanphx/json-patch@50fdc0b is included |
@aerfio Good idea, will do |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sigs.k8s.io/controller-runtime](https://togithub.com/kubernetes-sigs/controller-runtime) | `v0.16.3` -> `v0.17.2` | [![age](https://developer.mend.io/api/mc/badges/age/go/sigs.k8s.io%2fcontroller-runtime/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/sigs.k8s.io%2fcontroller-runtime/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/sigs.k8s.io%2fcontroller-runtime/v0.16.3/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/sigs.k8s.io%2fcontroller-runtime/v0.16.3/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>kubernetes-sigs/controller-runtime (sigs.k8s.io/controller-runtime)</summary> ### [`v0.17.2`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.2) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.17.1...v0.17.2) #### What's Changed - ⚠ 🐛 Fakeclient: Do not consider an apply patch to be a strategic merge patch by [@​k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2681](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2681) - 🐛 Fix lazy rest mapper cache invalidation by [@​k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2688](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2688) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.17.1...v0.17.2 ### [`v0.17.1`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.1) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.17.0...v0.17.1) ##### What's Changed - 🐛 Clean restmapper cache if a version is notFound by [@​k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2676](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2676) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.17.0...v0.17.1 ### [`v0.17.0`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.0) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.5...v0.17.0) ####⚠️ Breaking Changes - Fake client: Only set TypeMeta for unstructured ([#​2633](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2633)) - Update k8s.io/\* deps to 1.29 ([#​2457](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2457) [#​2500](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2500) [#​2553](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2553) [#​2588](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2588) [#​2612](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2612) [#​2615](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2615) [#​2621](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2621)) - Remove apiutil.NewDiscoveryRESTMapper, use DynamicRESTMapper by default for cache ([#​2611](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2611)) - RESTMapper: don't treat non-existing GroupVersions as errors ([#​2571](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2571)) - Webhooks: Deprecate admission.Validator and admission.Defaulter ([#​2639](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2639)) - Webhooks: Limit size of AdmissionRequests to 7MB and size of TokenReviews to 1MB ([#​2598](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2598)) #### ✨ New Features - Cache: Allow defining options that apply to all namespaces without explicit config ([#​2528](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2528)) - Cache: Allow to remove informers ([#​2285](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2285)) - Cache: Add option to set WatchErrorHandler on informers ([#​2494](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2494)) - Client: client.MatchingFields now supports multiple indexes ([#​2512](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2512)) - Fake client: Add flowcontrol api v1 ([#​2623](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2623)) - Reconciler: Add reconcile.ObjectReconciler ([#​2592](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2592)) #### 🐛 Bug Fixes - Add corev1, coordinationv1 scheme for leader election when LeaderElection manager option is true ([#​2461](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2461)) - Cache: Default namespace only for namespaced object ([#​2480](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2480)) - Client: Don't truncate large int64s in MergePatch ([#​2650](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2650)) - controllerutil: Add `RemoveControllerReference` and `HasControllerReference` func ([#​2509](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2509) [#​2595](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2595)) - controllerutil: Add `RemoveOwnerReference` func ([#​2462](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2462)) - Dependencies: Refactor tests to drop hard otel dependency ([#​2460](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2460)) - Envtest: CRDs that aren't convertible should unset spec.conversion ([#​2525](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2525)) - Fake client: Correctly identify if patch call was made on status ([#​2508](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2508)) - Fake client: Do not update anything but status when using subresource client ([#​2479](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2479)) - Fake client: Fix returning object after status update ([#​2489](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2489)) - Fake client: Fix status subresource getting updated on Update when it is empty ([#​2484](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2484)) - Fake client: Handle unstructured status update with fake client ([#​2495](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2495)) - Manager: Fix goroutine leak ([#​2527](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2527)) - Manager: Use HTTP client from leaderElectionConfig for leader election recorder provider ([#​2464](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2464)) - RESTMapper: Return NoResourceMatchError when appropriate for backwards compatibility. ([#​2472](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2472)) - Webhook: Handle http.NoBody ([#​2605](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2605)) #### 🌱 Others - Client: Make client.MatchingLabels faster ([#​2529](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2529)) - Envtest: Allow to ignore scheme.Convertible check for CRDs ([#​2555](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2555)) - Envtest: Improve process cleanup ([#​2560](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2560)) - Metrics: Add 100/1000s buckets for Prometheus workqueue histograms ([#​2638](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2638)) - Metrics: Avoid dependency on apiserver/options if metrics/filters are used ([#​2645](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2645)) - Replace k8s.io/utils/pointer with k8s.io/utils/ptr ([#​2488](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2488)) - Webhooks: Cleanup webhook variable assignment ([#​2604](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2604)) #### 🌱 Dependencies - Bump github.com/emicklei/go-restful/v3 from v3.9.0 to 3.11.0 ([#​2507](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2507)) - Bump github.com/evanphx/json-patch from 5.6.0+incompatible to 4.12.0+incompatible ([#​2501](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2501) [#​2643](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2643)) - Note: We "downgraded" to v4.12.0+incompatible because it is actually newer than v5.6.0+incompatible and to make sure the code in fake client that is using this dependency behaves exactly the same as the corresponding upstream code. We recommend users to either use github.com/evanphx/json-patch@v4.12.0+incompatible or to upgrade to github.com/evanphx/json-patch/v5@​v5.8.0. More details can be fou[https://github.com/kubernetes-sigs/controller-runtime/pull/2643#discussion_r1446189655](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2643#discussion_r1446189655)189655. - Bump github.com/evanphx/json-patch/v5 from 5.6.0 to 5.8.0 ([#​2499](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2499) [#​2650](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2650)) - Bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 ([#​2561](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2561)) - Bump github.com/go-logr/logr from 1.2.4 to 1.4.1 ([#​2566](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2566) [#​2630](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2630)) - Bump github.com/go-logr/zapr from 1.2.4 to 1.3.0 ([#​2574](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2574)) - Bump github.com/google/go-cmp from 0.5.9 to 0.6.0 ([#​2545](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2545)) - Bump github.com/onsi/ginkgo/v2 from 2.11.0 to 2.14.0 ([#​2458](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2458) [#​2514](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2514) [#​2534](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2534) [#​2578](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2578) [#​2610](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2610) [#​2651](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2651)) - Bump github.com/onsi/gomega from 1.27.10 to 1.30.0 ([#​2521](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2521) [#​2562](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2562) [#​2568](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2568) [#​2579](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2579)) - Bump github.com/prometheus/client_golang from 1.16.0 to 1.18.0 ([#​2520](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2520) [#​2632](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2632)) - Bump github.com/prometheus/client_model from 0.4.1-0.20230718164431-9a2bf3000d16 to 0.5.0 ([#​2535](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2535)) - Bump go.uber.org/goleak from 1.2.1 to 1.3.0 ([#​2569](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2569)) - Bump go.uber.org/zap from 1.25.0 to 1.26.0 ([#​2502](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2502)) - Bump golang.org/x/net to 0.17.0 ([#​2540](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2540)) - Bump golang.org/x/sys from 0.11.0 to 0.16.0 ([#​2470](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2470) [#​2533](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2533) [#​2572](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2572) [#​2597](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2597) [#​2642](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2642)) - Bump k8s.io/klog/v2 from 2.100.1 to 2.110.1 ([#​2573](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2573)) - Bump sigs.k8s.io/yaml from 1.3.0 to 1.4.0 ([#​2567](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2567)) - Bump controller-tools from v0.13.0 to v0.14.0 ([#​2649](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2649)) - Bump go-apidiff from v0.5.0 to v0.8.2 ([#​2517](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2517) [#​2655](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2655)) - Upgrade dependencies for hack/tools and tools/ ([#​2517](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2517)) - Bump kubernetes-sigs/kubebuilder-release-tools from 0.3.0 to 0.4.3 ([#​2532](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2532) [#​2575](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2575) [#​2618](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2618)) - Bump golang version in GH actions ([#​2609](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2609)) - Bump actions/checkout from 3 to 4 ([#​2469](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2469)) - Bump actions/setup-go from 4 to 5 ([#​2617](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2617)) - Bump envtest to 1.28.0 ([#​2531](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2531)) :book: Additionally, there have been 5 contributions to our documentation. ([#​2497](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2497), [#​2498](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2498), [#​2538](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2538), [#​2599](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2599), [#​2602](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2602), [#​2635](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2635) [#​2647](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2647)) *Thanks to all our contributors!* 😊 ### [`v0.16.5`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.16.5) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.4...v0.16.5) #### What's Changed - 🐛 Fix lazy rest mapper cache invalidation by [@​g-gaston](https://togithub.com/g-gaston) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2689](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2689) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.16.4...v0.16.5 ### [`v0.16.4`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.16.4) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.3...v0.16.4) #### What's Changed - 🏃 Make client.MatchingLabels faster by [@​samuelvl](https://togithub.com/samuelvl) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2613](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2613) - 🐛 Avoid extra calls for not found resource by [@​g-gaston](https://togithub.com/g-gaston) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2677](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2677) #### New Contributors - [@​samuelvl](https://togithub.com/samuelvl) made their first contribution in [https://github.com/kubernetes-sigs/controller-runtime/pull/2613](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2613) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.16.3...v0.16.4 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com>
…ry#31348) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sigs.k8s.io/controller-runtime](https://togithub.com/kubernetes-sigs/controller-runtime) | `v0.16.3` -> `v0.17.2` | [![age](https://developer.mend.io/api/mc/badges/age/go/sigs.k8s.io%2fcontroller-runtime/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/sigs.k8s.io%2fcontroller-runtime/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/sigs.k8s.io%2fcontroller-runtime/v0.16.3/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/sigs.k8s.io%2fcontroller-runtime/v0.16.3/v0.17.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>kubernetes-sigs/controller-runtime (sigs.k8s.io/controller-runtime)</summary> ### [`v0.17.2`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.2) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.17.1...v0.17.2) #### What's Changed - ⚠ 🐛 Fakeclient: Do not consider an apply patch to be a strategic merge patch by [@&open-telemetry#8203;k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2681](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2681) - 🐛 Fix lazy rest mapper cache invalidation by [@&open-telemetry#8203;k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2688](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2688) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.17.1...v0.17.2 ### [`v0.17.1`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.1) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.17.0...v0.17.1) ##### What's Changed - 🐛 Clean restmapper cache if a version is notFound by [@&open-telemetry#8203;k8s-infra-cherrypick-robot](https://togithub.com/k8s-infra-cherrypick-robot) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2676](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2676) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.17.0...v0.17.1 ### [`v0.17.0`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.17.0) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.5...v0.17.0) ####⚠️ Breaking Changes - Fake client: Only set TypeMeta for unstructured ([#&open-telemetry#8203;2633](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2633)) - Update k8s.io/\* deps to 1.29 ([#&open-telemetry#8203;2457](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2457) [#&open-telemetry#8203;2500](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2500) [#&open-telemetry#8203;2553](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2553) [#&open-telemetry#8203;2588](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2588) [#&open-telemetry#8203;2612](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2612) [#&open-telemetry#8203;2615](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2615) [#&open-telemetry#8203;2621](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2621)) - Remove apiutil.NewDiscoveryRESTMapper, use DynamicRESTMapper by default for cache ([#&open-telemetry#8203;2611](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2611)) - RESTMapper: don't treat non-existing GroupVersions as errors ([#&open-telemetry#8203;2571](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2571)) - Webhooks: Deprecate admission.Validator and admission.Defaulter ([#&open-telemetry#8203;2639](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2639)) - Webhooks: Limit size of AdmissionRequests to 7MB and size of TokenReviews to 1MB ([#&open-telemetry#8203;2598](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2598)) #### ✨ New Features - Cache: Allow defining options that apply to all namespaces without explicit config ([#&open-telemetry#8203;2528](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2528)) - Cache: Allow to remove informers ([#&open-telemetry#8203;2285](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2285)) - Cache: Add option to set WatchErrorHandler on informers ([#&open-telemetry#8203;2494](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2494)) - Client: client.MatchingFields now supports multiple indexes ([#&open-telemetry#8203;2512](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2512)) - Fake client: Add flowcontrol api v1 ([#&open-telemetry#8203;2623](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2623)) - Reconciler: Add reconcile.ObjectReconciler ([#&open-telemetry#8203;2592](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2592)) #### 🐛 Bug Fixes - Add corev1, coordinationv1 scheme for leader election when LeaderElection manager option is true ([#&open-telemetry#8203;2461](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2461)) - Cache: Default namespace only for namespaced object ([#&open-telemetry#8203;2480](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2480)) - Client: Don't truncate large int64s in MergePatch ([#&open-telemetry#8203;2650](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2650)) - controllerutil: Add `RemoveControllerReference` and `HasControllerReference` func ([#&open-telemetry#8203;2509](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2509) [#&open-telemetry#8203;2595](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2595)) - controllerutil: Add `RemoveOwnerReference` func ([#&open-telemetry#8203;2462](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2462)) - Dependencies: Refactor tests to drop hard otel dependency ([#&open-telemetry#8203;2460](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2460)) - Envtest: CRDs that aren't convertible should unset spec.conversion ([#&open-telemetry#8203;2525](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2525)) - Fake client: Correctly identify if patch call was made on status ([#&open-telemetry#8203;2508](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2508)) - Fake client: Do not update anything but status when using subresource client ([#&open-telemetry#8203;2479](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2479)) - Fake client: Fix returning object after status update ([#&open-telemetry#8203;2489](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2489)) - Fake client: Fix status subresource getting updated on Update when it is empty ([#&open-telemetry#8203;2484](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2484)) - Fake client: Handle unstructured status update with fake client ([#&open-telemetry#8203;2495](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2495)) - Manager: Fix goroutine leak ([#&open-telemetry#8203;2527](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2527)) - Manager: Use HTTP client from leaderElectionConfig for leader election recorder provider ([#&open-telemetry#8203;2464](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2464)) - RESTMapper: Return NoResourceMatchError when appropriate for backwards compatibility. ([#&open-telemetry#8203;2472](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2472)) - Webhook: Handle http.NoBody ([#&open-telemetry#8203;2605](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2605)) #### 🌱 Others - Client: Make client.MatchingLabels faster ([#&open-telemetry#8203;2529](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2529)) - Envtest: Allow to ignore scheme.Convertible check for CRDs ([#&open-telemetry#8203;2555](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2555)) - Envtest: Improve process cleanup ([#&open-telemetry#8203;2560](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2560)) - Metrics: Add 100/1000s buckets for Prometheus workqueue histograms ([#&open-telemetry#8203;2638](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2638)) - Metrics: Avoid dependency on apiserver/options if metrics/filters are used ([#&open-telemetry#8203;2645](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2645)) - Replace k8s.io/utils/pointer with k8s.io/utils/ptr ([#&open-telemetry#8203;2488](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2488)) - Webhooks: Cleanup webhook variable assignment ([#&open-telemetry#8203;2604](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2604)) #### 🌱 Dependencies - Bump github.com/emicklei/go-restful/v3 from v3.9.0 to 3.11.0 ([#&open-telemetry#8203;2507](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2507)) - Bump github.com/evanphx/json-patch from 5.6.0+incompatible to 4.12.0+incompatible ([#&open-telemetry#8203;2501](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2501) [#&open-telemetry#8203;2643](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2643)) - Note: We "downgraded" to v4.12.0+incompatible because it is actually newer than v5.6.0+incompatible and to make sure the code in fake client that is using this dependency behaves exactly the same as the corresponding upstream code. We recommend users to either use github.com/evanphx/json-patch@v4.12.0+incompatible or to upgrade to github.com/evanphx/json-patch/v5@&open-telemetry#8203;v5.8.0. More details can be fou[https://github.com/kubernetes-sigs/controller-runtime/pull/2643#discussion_r1446189655](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2643#discussion_r1446189655)189655. - Bump github.com/evanphx/json-patch/v5 from 5.6.0 to 5.8.0 ([#&open-telemetry#8203;2499](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2499) [#&open-telemetry#8203;2650](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2650)) - Bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 ([#&open-telemetry#8203;2561](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2561)) - Bump github.com/go-logr/logr from 1.2.4 to 1.4.1 ([#&open-telemetry#8203;2566](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2566) [#&open-telemetry#8203;2630](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2630)) - Bump github.com/go-logr/zapr from 1.2.4 to 1.3.0 ([#&open-telemetry#8203;2574](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2574)) - Bump github.com/google/go-cmp from 0.5.9 to 0.6.0 ([#&open-telemetry#8203;2545](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2545)) - Bump github.com/onsi/ginkgo/v2 from 2.11.0 to 2.14.0 ([#&open-telemetry#8203;2458](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2458) [#&open-telemetry#8203;2514](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2514) [#&open-telemetry#8203;2534](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2534) [#&open-telemetry#8203;2578](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2578) [#&open-telemetry#8203;2610](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2610) [#&open-telemetry#8203;2651](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2651)) - Bump github.com/onsi/gomega from 1.27.10 to 1.30.0 ([#&open-telemetry#8203;2521](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2521) [#&open-telemetry#8203;2562](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2562) [#&open-telemetry#8203;2568](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2568) [#&open-telemetry#8203;2579](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2579)) - Bump github.com/prometheus/client_golang from 1.16.0 to 1.18.0 ([#&open-telemetry#8203;2520](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2520) [#&open-telemetry#8203;2632](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2632)) - Bump github.com/prometheus/client_model from 0.4.1-0.20230718164431-9a2bf3000d16 to 0.5.0 ([#&open-telemetry#8203;2535](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2535)) - Bump go.uber.org/goleak from 1.2.1 to 1.3.0 ([#&open-telemetry#8203;2569](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2569)) - Bump go.uber.org/zap from 1.25.0 to 1.26.0 ([#&open-telemetry#8203;2502](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2502)) - Bump golang.org/x/net to 0.17.0 ([#&open-telemetry#8203;2540](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2540)) - Bump golang.org/x/sys from 0.11.0 to 0.16.0 ([#&open-telemetry#8203;2470](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2470) [#&open-telemetry#8203;2533](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2533) [#&open-telemetry#8203;2572](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2572) [#&open-telemetry#8203;2597](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2597) [#&open-telemetry#8203;2642](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2642)) - Bump k8s.io/klog/v2 from 2.100.1 to 2.110.1 ([#&open-telemetry#8203;2573](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2573)) - Bump sigs.k8s.io/yaml from 1.3.0 to 1.4.0 ([#&open-telemetry#8203;2567](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2567)) - Bump controller-tools from v0.13.0 to v0.14.0 ([#&open-telemetry#8203;2649](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2649)) - Bump go-apidiff from v0.5.0 to v0.8.2 ([#&open-telemetry#8203;2517](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2517) [#&open-telemetry#8203;2655](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2655)) - Upgrade dependencies for hack/tools and tools/ ([#&open-telemetry#8203;2517](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2517)) - Bump kubernetes-sigs/kubebuilder-release-tools from 0.3.0 to 0.4.3 ([#&open-telemetry#8203;2532](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2532) [#&open-telemetry#8203;2575](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2575) [#&open-telemetry#8203;2618](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2618)) - Bump golang version in GH actions ([#&open-telemetry#8203;2609](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2609)) - Bump actions/checkout from 3 to 4 ([#&open-telemetry#8203;2469](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2469)) - Bump actions/setup-go from 4 to 5 ([#&open-telemetry#8203;2617](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2617)) - Bump envtest to 1.28.0 ([#&open-telemetry#8203;2531](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2531)) :book: Additionally, there have been 5 contributions to our documentation. ([#&open-telemetry#8203;2497](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2497), [#&open-telemetry#8203;2498](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2498), [#&open-telemetry#8203;2538](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2538), [#&open-telemetry#8203;2599](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2599), [#&open-telemetry#8203;2602](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2602), [#&open-telemetry#8203;2635](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2635) [#&open-telemetry#8203;2647](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2647)) *Thanks to all our contributors!* 😊 ### [`v0.16.5`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.16.5) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.4...v0.16.5) #### What's Changed - 🐛 Fix lazy rest mapper cache invalidation by [@&open-telemetry#8203;g-gaston](https://togithub.com/g-gaston) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2689](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2689) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.16.4...v0.16.5 ### [`v0.16.4`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.16.4) [Compare Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.16.3...v0.16.4) #### What's Changed - 🏃 Make client.MatchingLabels faster by [@&open-telemetry#8203;samuelvl](https://togithub.com/samuelvl) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2613](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2613) - 🐛 Avoid extra calls for not found resource by [@&open-telemetry#8203;g-gaston](https://togithub.com/g-gaston) in [https://github.com/kubernetes-sigs/controller-runtime/pull/2677](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2677) #### New Contributors - [@&open-telemetry#8203;samuelvl](https://togithub.com/samuelvl) made their first contribution in [https://github.com/kubernetes-sigs/controller-runtime/pull/2613](https://togithub.com/kubernetes-sigs/controller-runtime/pull/2613) **Full Changelog**: kubernetes-sigs/controller-runtime@v0.16.3...v0.16.4 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com>
Changes an import of
github.com/evanphx/json-patch
togithub.com/evanphx/json-patch/v5
. Other codepaths use only json-patch/v5. It removes 1 direct dependency