mirror of
https://github.com/kubernetes/client-go.git
synced 2026-07-16 08:48:13 +00:00
Merge pull request #138351 from pohly/apidiff-changelog
optional tracking and documentation of breaking Go API changes in client-go Kubernetes-commit: b82bfba4efce18d0d5b6a345995f12aa4ff6edea
This commit is contained in:
133
CHANGELOG.md
Normal file
133
CHANGELOG.md
Normal file
@@ -0,0 +1,133 @@
|
||||
This file documents Go API changes in client-go.
|
||||
|
||||
Go API changes are typically not included in the Kubernetes release notes, so
|
||||
noteworthy Go API changes *may* be documented here. This is currently not
|
||||
*required*, so consult the git history to see all changes.
|
||||
|
||||
### restmapper + discovery: add context-aware APIs
|
||||
|
||||
See [PR #129109](https://github.com/kubernetes/kubernetes/pull/129109).
|
||||
|
||||
```
|
||||
- ./kubernetes.(*Clientset).Discovery: changed from func() k8s.io/client-go/discovery.DiscoveryInterface to func() k8s.io/client-go/discovery.DiscoveryInterfaces
|
||||
- ./kubernetes.Interface.Discovery: changed from func() k8s.io/client-go/discovery.DiscoveryInterface to func() k8s.io/client-go/discovery.DiscoveryInterfaces
|
||||
- ./kubernetes/fake.(*Clientset).Discovery: changed from func() k8s.io/client-go/discovery.DiscoveryInterface to func() k8s.io/client-go/discovery.DiscoveryInterfaces
|
||||
```
|
||||
|
||||
### Remove v2beta1 aggregated discovery support from clients
|
||||
|
||||
See [PR #138271](https://github.com/kubernetes/kubernetes/pull/138271).
|
||||
|
||||
```
|
||||
- ./discovery.AcceptV2Beta1: removed
|
||||
- ./discovery.SplitGroupsAndResourcesV2Beta1: removed
|
||||
```
|
||||
|
||||
### Add GC to client-go TLS cache
|
||||
|
||||
See [PR #136355](https://github.com/kubernetes/kubernetes/pull/136355).
|
||||
|
||||
```
|
||||
- ./transport.DialerStopCh: removed
|
||||
```
|
||||
|
||||
### Add metric tracking the latest cached rv of informers
|
||||
|
||||
See [PR #137419](https://github.com/kubernetes/kubernetes/pull/137419).
|
||||
|
||||
```
|
||||
- ./tools/cache.FIFOMetricsProvider: removed
|
||||
- ./tools/cache.InformerMetricsProvider.NewStoreResourceVersionMetric: added
|
||||
- ./tools/cache.InformerOptions.FIFOMetricsProvider: removed
|
||||
- ./tools/cache.NewIndexer: changed from func(KeyFunc, Indexers) Indexer to func(KeyFunc, Indexers, ...StoreOption) Indexer
|
||||
- ./tools/cache.NewThreadSafeStore: changed from func(Indexers, Indices) ThreadSafeStore to func(Indexers, Indices, ...ThreadSafeStoreOption) ThreadSafeStore
|
||||
- ./tools/cache.SetFIFOMetricsProvider: removed
|
||||
- ./tools/cache.SharedIndexInformerOptions.FIFOMetricsProvider: removed
|
||||
```
|
||||
|
||||
### Rename `name` to `command` in kuberc credentialPluginAllowlist entries
|
||||
|
||||
See [PR #137272](https://github.com/kubernetes/kubernetes/pull/137272).
|
||||
|
||||
```
|
||||
- ./tools/clientcmd/api.AllowlistEntry.Name: removed
|
||||
```
|
||||
|
||||
### Add Resource Version query and Bookmarks to thread safe store
|
||||
|
||||
See [PR #134827](https://github.com/kubernetes/kubernetes/pull/134827).
|
||||
|
||||
```
|
||||
- ./tools/cache.Store.Bookmark: added
|
||||
- ./tools/cache.Store.LastStoreSyncResourceVersion: added
|
||||
- ./tools/cache.ThreadSafeStore.Bookmark: added
|
||||
- ./tools/cache.ThreadSafeStore.DeleteWithObject: added
|
||||
- ./tools/cache.ThreadSafeStore.LastStoreSyncResourceVersion: added
|
||||
```
|
||||
|
||||
### apimachinery + client-go + device taint eviction unit test: context-aware Start/WaitFor, waiting through channels
|
||||
|
||||
See [PR #135395](https://github.com/kubernetes/kubernetes/pull/135395).
|
||||
|
||||
```
|
||||
- ./informers.SharedInformerFactory.StartWithContext: added
|
||||
- ./informers.SharedInformerFactory.WaitForCacheSyncWithContext: added
|
||||
- ./tools/cache.Controller.HasSyncedChecker: added
|
||||
- ./tools/cache.Queue.HasSyncedChecker: added
|
||||
- ./tools/cache.ResourceEventHandlerRegistration.HasSyncedChecker: added
|
||||
- ./tools/cache.SharedInformer.HasSyncedChecker: added
|
||||
- ./tools/cache/synctrack.AsyncTracker.UpstreamHasSynced: removed
|
||||
- ./tools/cache/synctrack.SingleFileTracker.UpstreamHasSynced: removed
|
||||
```
|
||||
|
||||
### Add identifier-based queue depth metrics for RealFIFO
|
||||
|
||||
See [PR #135782](https://github.com/kubernetes/kubernetes/pull/135782).
|
||||
|
||||
```
|
||||
- ./informers/internalinterfaces.SharedInformerFactory.InformerName: added
|
||||
- ./informers/internalinterfaces.SharedInformerFactory.InformerName: added
|
||||
```
|
||||
|
||||
### Ensure that processing does not block queue writers in RealFIFO
|
||||
|
||||
See [PR #136264](https://github.com/kubernetes/kubernetes/pull/136264).
|
||||
|
||||
```
|
||||
- ./tools/cache.Pop: removed
|
||||
```
|
||||
|
||||
### Add atomic replace in client-go
|
||||
|
||||
See [PR #135462](https://github.com/kubernetes/kubernetes/pull/135462).
|
||||
|
||||
```
|
||||
- ./tools/cache.(*RealFIFO).PopBatch: changed from func(ProcessBatchFunc) error to func(ProcessBatchFunc, PopProcessFunc) error
|
||||
- ./tools/cache.QueueWithBatch.PopBatch: changed from func(ProcessBatchFunc) error to func(ProcessBatchFunc, PopProcessFunc) error
|
||||
```
|
||||
|
||||
### Embed proper interface in TransformingStore to ensure DeltaFIFO and RealFIFO are implementing it
|
||||
|
||||
See [PR #135580](https://github.com/kubernetes/kubernetes/pull/135580).
|
||||
|
||||
```
|
||||
- ./tools/cache.Store.Get, method set of TransformingStore: removed
|
||||
- ./tools/cache.Store.GetByKey, method set of TransformingStore: removed
|
||||
- ./tools/cache.Store.List, method set of TransformingStore: removed
|
||||
- ./tools/cache.Store.ListKeys, method set of TransformingStore: removed
|
||||
- ./tools/cache.TransformingStore: no longer implements ./tools/cache.KeyLister
|
||||
- ./util/consistencydetector.CheckDataConsistency: changed from func(context.Context, string, string, ListFunc[T], k8s.io/apimachinery/pkg/apis/meta/v1.ListOptions, RetrieveItemsFunc[U]) to func(context.Context, string, string, ListFunc[T], TransformFunc, k8s.io/apimachinery/pkg/apis/meta/v1.ListOptions, RetrieveItemsFunc[U])
|
||||
```
|
||||
|
||||
### Replace deprecated sets.String with sets.Set in client-go/tools/*
|
||||
|
||||
See [PR #133923](https://github.com/kubernetes/kubernetes/pull/133923).
|
||||
|
||||
```
|
||||
- ./tools/cache.FakeExpirationPolicy.NeverExpire: changed from k8s.io/apimachinery/pkg/util/sets.String to k8s.io/apimachinery/pkg/util/sets.Set[string]
|
||||
- ./tools/cache.Index: removed
|
||||
```
|
||||
|
||||
### Changes for Kubernetes <= 1.34
|
||||
|
||||
For older changes refer to the commit messages and PR descriptions.
|
||||
4
go.mod
4
go.mod
@@ -23,8 +23,8 @@ require (
|
||||
golang.org/x/time v0.15.0
|
||||
google.golang.org/protobuf v1.36.12-0.20260120151049-f2248ac996af
|
||||
gopkg.in/evanphx/json-patch.v4 v4.13.0
|
||||
k8s.io/api v0.0.0-20260701165530-9fa1d170fb11
|
||||
k8s.io/apimachinery v0.0.0-20260701165018-c428e39362be
|
||||
k8s.io/api v0.0.0-20260702005351-d7f99214bf9a
|
||||
k8s.io/apimachinery v0.0.0-20260702204942-514a87090e39
|
||||
k8s.io/klog/v2 v2.140.0
|
||||
k8s.io/kube-openapi v0.0.0-20260618221249-bc653b64f974
|
||||
k8s.io/streaming v0.0.0-20260626172358-68009e8e6aa5
|
||||
|
||||
8
go.sum
8
go.sum
@@ -118,10 +118,10 @@ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
|
||||
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
k8s.io/api v0.0.0-20260701165530-9fa1d170fb11 h1:MZjAHyGujKdVOyoET5JJ88DsD/Q6TsyOvZKKsiO0aeM=
|
||||
k8s.io/api v0.0.0-20260701165530-9fa1d170fb11/go.mod h1:/VjmYY4IB/HirJZVDFdiDdjF2Z3wi8EgL0xOIPVvcAk=
|
||||
k8s.io/apimachinery v0.0.0-20260701165018-c428e39362be h1:7SYbrGJaF0XgQGQ3jshZvTkgRSC6lTVcnXADtdBSidQ=
|
||||
k8s.io/apimachinery v0.0.0-20260701165018-c428e39362be/go.mod h1:T9tvL1Yxf+TRVyTz+Q7KtLAncCr9xxxx1zrF6g/QuR0=
|
||||
k8s.io/api v0.0.0-20260702005351-d7f99214bf9a h1:QBigCm4fpHjNB8pNp6Vi4G3izDOzmkrY/Kw6QR5dv+U=
|
||||
k8s.io/api v0.0.0-20260702005351-d7f99214bf9a/go.mod h1:4xx49zAGrDNz3+7mTb00m8rs+taTOwnML4GhmaKEGLk=
|
||||
k8s.io/apimachinery v0.0.0-20260702204942-514a87090e39 h1:w6LmMiDJ3PrOhGIxdLs4Itjcp9nvmEycztaHbZDSu5Y=
|
||||
k8s.io/apimachinery v0.0.0-20260702204942-514a87090e39/go.mod h1:T9tvL1Yxf+TRVyTz+Q7KtLAncCr9xxxx1zrF6g/QuR0=
|
||||
k8s.io/klog/v2 v2.140.0 h1:Tf+J3AH7xnUzZyVVXhTgGhEKnFqye14aadWv7bzXdzc=
|
||||
k8s.io/klog/v2 v2.140.0/go.mod h1:o+/RWfJ6PwpnFn7OyAG3QnO47BFsymfEfrz6XyYSSp0=
|
||||
k8s.io/kube-openapi v0.0.0-20260618221249-bc653b64f974 h1:JVogoTvOj6gutlx8bUwGh0e8o8L4X8nDbTLyONmoVvk=
|
||||
|
||||
Reference in New Issue
Block a user