- Update to Kubernetes model v1.24.10
- Fix decoding error when deleting a service #27
SwiftkubeModel 0.8.0
makes allKubernetesResources
Hashable #28
- Use structured concurrency instead of EventLoops for watching resources #25
- Fix client crash in
GenericKubernetesClient.prepareDecoder
due to decoder instance being shared #24
- Drop AnyKubernetesAPIResource in favour of UnstructuredResource
- The generic client for a given
GroupVersionResource
usesUnstructuredResource
for unknown types:KubernetesClient/``for``(gvr:) -> GenericKubernetesClient<AnyKubernetesAPIResource>
is replaced with:KubernetesClient/``for``(gvr:) -> GenericKubernetesClient<UnstructuredResource>
- The
SwiftkubeClientTask
returned by thewatch
andfollow
API must be started explicitly - The
SwiftkubeClientTask
returns anAsyncThrowingStream
instead of using a callback delegate
- Update to Kubernetes model v1.24.8
- Update dependencies
- Async HTTP Client 1.13.1
- SwiftkubeModel 0.6.0
- SwiftLog 1.4.4
- SwiftMetrics 2.3.3
- SwiftNIO 2.46.0
- Yams 5.0.1
- Update k3s docker image to k3s:v1.24.8-k3s1
- Add configurable timeout and redirect config for the underlying HTTPClient by @octo47
- Update documentation comments
- Raise minimum supported Swift version to 5.5
- Replace
EventLoops
withasync/await
style API
- Update to Kubernetes model v1.22.7
- Add option to retrieve logs once without watching / streaming (#14) by @thomashorrobin
- Add discovery API to load server resources
- Use SwiftkubeModel v0.5.0
- Refactor client to use
GroupVersionResource
instead ofGroupVersionKind
for resource type resolution - Support creating a parametrised generic client given a
GroupVersionResource
- Make
GenericKubernetesClient
extensions public - Update k3s docker image to k3s:v1.22.7-k3s1
- Typo in property name for storage.v1 API Group (#11) by @portellaa
- Add explicit dependency on NIO (#12) by @t089
- Update to Kubernetes model v1.20.9
- Add
LocalFileConfigLoader
for loading KubeConfigs from a local file given a URL #8 by @thomashorrobin - Add support for
scale
andstatus
API - Setup CI with live K3d cluster and add several tests against it
- Add missing support for
continue
token inListOption
for retrieving subsequent list results #9 - Track dependency on SwiftkubeModel up-to-next minor instead of major #10
- Add supported platforms for Swift package
- Add CI for iOS build
- DSL for all API Groups/Versions
- Update to Kubernetes model v1.19.8
- Discovery for server API groups and versions
- Fix SwiftkubeClientTask cancelling
- Implement asynchronous shutdown
- Implement reconnect handling for
watch
andfollow
API requests - Introduce
ResourceWatcherDelegate
andLogWatcherDelegate
protocols
- Changed signature of
watch
andfollow
APIs. - Replace
ResourceWatch
andLogWatch
with new protocols - The
follow
andwatch
functions return a cancellableSwiftkubeClientTask
instance insteaf ofHTTPClient.Task<Void>
.
- Add metrics support for gathering request latencies and counts
- Support
ListOptions
in watch call - Add
watch
andfollow
API that accept aRecourceWatch
orLogWatch
instance - Add an
errorHandler
closure toResourceWatch
andLogWatch
- Make Selectors (
NamespaceSelector
,LabelSelector
etc.) Hashable
- Replace implicit client shutdown on deinit with explicit
syncShutdow
- Expose
ResourceWatch
andLogWatch
classes for extension
- Add SwiftFormat config and format code base accordingly
- Add support for
ReadOptions
- Fix massive memory leak by breaking retain cycle between the
JSONDecoder
andDateFormatters
#4 by @t089
- Change personal copyright to Swiftkube Project
- Make
KubernetesClientConfig
initializer public #3
- Update to Kubernetes model v1.18.13
- No model changes between 1.18.9 and 1.18.13. This release is to track the update explicitly via a version bump.
- Add support for
DeleteOptions
- Can not create resources because of "Resource
metadata.name
must be set" error #2
- Add support for
ListOptions
- Add
core.v1.Pod
status read and update API
- KubernetesClient can't create x509 authentication from local kubeconfig's certificate data and key #1
- Initializers of
GenericKubernetesClients
are no longer public - Function signature change:
- from
watch(in:watch:) throws -> EventLoopFuture<Void>
- to
watch(in:using:) throws -> HTTPClient.Task<Void>
- from
- Function signature change:
- from
follow(in:name:container:watch:) throws -> HTTPClient.Task<Void>
- to
follow(in:name:container:using:) throws -> HTTPClient.Task<Void>
- from
Initial release