kube-rs/kube-rs
### [`v0.75.0`](https://togithub.com/kube-rs/kube-rs/blob/HEAD/CHANGELOG.md#0750-httpsgithubcomkube-rskubereleasestag0750--2022-09-21)
[Compare Source](https://togithub.com/kube-rs/kube-rs/compare/0.74.0...0.75.0)
\===================
#### Highlights
##### [Upgrade `k8s-openapi` to 0.16 for Kubernetes 1.25](https://togithub.com/kube-rs/kube/pull/1008)
The update to [k8s-openapi@0.16.0](https://togithub.com/Arnavion/k8s-openapi/blob/master/CHANGELOG.md#v0160-2022-09-15) makes this the first release with **tentative** Kubernetes 1.25 support.
While the new structs and apis now exist, we **recommend holding off** on using 1.25 until a [deserialization bug in the apiserver](https://togithub.com/kubernetes/kubernetes/issues/111985) is resolved upstream. See [#997](https://togithub.com/kube-rs/kube-rs/issues/997) / [#1008](https://togithub.com/kube-rs/kube-rs/issues/1008) for details.
To upgrade, ensure you bump both `kube` and `k8s-openapi`:
```sh
cargo upgrade kube k8s-openapi
```
##### [New/Old `Config::incluster` default to connect in cluster](https://togithub.com/kube-rs/kube/pull/1001)
Our previous default of connecting to the Kubernetes apiserver via `kubernetes.default.svc` has been reverted back to use the old environment variables after [Kubernetes updated](https://togithub.com/kubernetes/kubernetes/issues/112263) their position that the environment variables are not legacy. This does unfortunately regress on `rustls` support, so for those users we have included a [`Config::incluster_dns`](https://docs.rs/kube/latest/kube/struct.Config.html#method.incluster_dns) to work around the old [rustls issue](https://togithub.com/kube-rs/kube/issues/153) while it is open.
##### [Controller `error_policy` extension](https://togithub.com/kube-rs/kube/pull/995)
The `error_policy` fn now has access to the `object` that failed the reconciliation to ease metric creation / failure attribution. The following change is needed on the user side:
```diff
-fn error_policy(error: &Error, ctx: Arc) -> Action {
+fn error_policy(_obj: Arc, error: &Error, ctx: Arc) -> Action {
```
##### Polish / Subresources / Conversion
There are also a slew of ergonomics improvements, closing of [gaps in subresources](https://togithub.com/kube-rs/kube/pull/989), adding [initial support for `ConversionReview`](https://togithub.com/kube-rs/kube/pull/999), making [`Api::namespaced` impossible to use for non-namepaced resources](https://togithub.com/kube-rs/kube/pull/956) (a common pitfall), as well as many great fixes to the edge cases in [portforwarding](https://togithub.com/kube-rs/kube/pull/973) and [finalizers](https://togithub.com/kube-rs/kube/pull/965). Many of these changes came from first time contributors. A huge thank you to everyone involved.
#### What's Changed
##### Added
- Make `Config::auth_info` public by [@danrspencer](https://togithub.com/danrspencer) in [https://github.com/kube-rs/kube/pull/959](https://togithub.com/kube-rs/kube/pull/959)
- Make raw `Client::send` method public by [@tiagolobocastro](https://togithub.com/tiagolobocastro) in [https://github.com/kube-rs/kube/pull/972](https://togithub.com/kube-rs/kube/pull/972)
- Make `types` on `AdmissionRequest` and `AdmissionResponse` public by [@clux](https://togithub.com/clux) in [https://github.com/kube-rs/kube/pull/977](https://togithub.com/kube-rs/kube/pull/977)
- Add `#[serde(default)]` to metadata field of `DynamicObject` by [@pbzweihander](https://togithub.com/pbzweihander) in [https://github.com/kube-rs/kube/pull/987](https://togithub.com/kube-rs/kube/pull/987)
- Add `create_subresource` method to `Api` and `create_token_request` method to `Api` by [@pbzweihander](https://togithub.com/pbzweihander) in [https://github.com/kube-rs/kube/pull/989](https://togithub.com/kube-rs/kube/pull/989)
- Controller: impl Eq and PartialEq for `Action` by [@Sherlock-Holo](https://togithub.com/Sherlock-Holo) in [https://github.com/kube-rs/kube/pull/993](https://togithub.com/kube-rs/kube/pull/993)
- Add support for CRD `ConversionReview` types by [@MikailBag](https://togithub.com/MikailBag) in [https://github.com/kube-rs/kube/pull/999](https://togithub.com/kube-rs/kube/pull/999)
##### Changed
- Constrain Resource trait and Api::namespaced by Scope by [@clux](https://togithub.com/clux) in [https://github.com/kube-rs/kube/pull/956](https://togithub.com/kube-rs/kube/pull/956)
- Add connect/read/write timeouts to `Config` by [@goenning](https://togithub.com/goenning) in [https://github.com/kube-rs/kube/pull/971](https://togithub.com/kube-rs/kube/pull/971)
- Controller: Include the object being reconciled in the `error_policy` by [@felipesere](https://togithub.com/felipesere) in [https://github.com/kube-rs/kube/pull/995](https://togithub.com/kube-rs/kube/pull/995)
- `Config`: New `incluster` and `incluster_dns` constructors by [@olix0r](https://togithub.com/olix0r) in [https://github.com/kube-rs/kube/pull/1001](https://togithub.com/kube-rs/kube/pull/1001)
- Upgrade `k8s-openapi` to 0.16 by [@clux](https://togithub.com/clux) in [https://github.com/kube-rs/kube/pull/1008](https://togithub.com/kube-rs/kube/pull/1008)
##### Fixed
- Remove `tracing::instrument` from `apply_debug_overrides` by [@kazk](https://togithub.com/kazk) in [https://github.com/kube-rs/kube/pull/958](https://togithub.com/kube-rs/kube/pull/958)
- fix duplicate finalizers race condition by [@alex-hunt-materialize](https://togithub.com/alex-hunt-materialize) in [https://github.com/kube-rs/kube/pull/965](https://togithub.com/kube-rs/kube/pull/965)
- fix: portforward connection cleanup by [@tiagolobocastro](https://togithub.com/tiagolobocastro) in [https://github.com/kube-rs/kube/pull/973](https://togithub.com/kube-rs/kube/pull/973)
Configuration
📅 Schedule: Branch creation - "after 5:00 and before 6:00 every weekday" in timezone Europe/Berlin, 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.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
0.74
->0.75
Release Notes
kube-rs/kube-rs
### [`v0.75.0`](https://togithub.com/kube-rs/kube-rs/blob/HEAD/CHANGELOG.md#0750-httpsgithubcomkube-rskubereleasestag0750--2022-09-21) [Compare Source](https://togithub.com/kube-rs/kube-rs/compare/0.74.0...0.75.0) \=================== #### Highlights ##### [Upgrade `k8s-openapi` to 0.16 for Kubernetes 1.25](https://togithub.com/kube-rs/kube/pull/1008) The update to [k8s-openapi@0.16.0](https://togithub.com/Arnavion/k8s-openapi/blob/master/CHANGELOG.md#v0160-2022-09-15) makes this the first release with **tentative** Kubernetes 1.25 support. While the new structs and apis now exist, we **recommend holding off** on using 1.25 until a [deserialization bug in the apiserver](https://togithub.com/kubernetes/kubernetes/issues/111985) is resolved upstream. See [#997](https://togithub.com/kube-rs/kube-rs/issues/997) / [#1008](https://togithub.com/kube-rs/kube-rs/issues/1008) for details. To upgrade, ensure you bump both `kube` and `k8s-openapi`: ```sh cargo upgrade kube k8s-openapi ``` ##### [New/Old `Config::incluster` default to connect in cluster](https://togithub.com/kube-rs/kube/pull/1001) Our previous default of connecting to the Kubernetes apiserver via `kubernetes.default.svc` has been reverted back to use the old environment variables after [Kubernetes updated](https://togithub.com/kubernetes/kubernetes/issues/112263) their position that the environment variables are not legacy. This does unfortunately regress on `rustls` support, so for those users we have included a [`Config::incluster_dns`](https://docs.rs/kube/latest/kube/struct.Config.html#method.incluster_dns) to work around the old [rustls issue](https://togithub.com/kube-rs/kube/issues/153) while it is open. ##### [Controller `error_policy` extension](https://togithub.com/kube-rs/kube/pull/995) The `error_policy` fn now has access to the `object` that failed the reconciliation to ease metric creation / failure attribution. The following change is needed on the user side: ```diff -fn error_policy(error: &Error, ctx: Arc) -> Action { +fn error_policy(_obj: ArcConfiguration
📅 Schedule: Branch creation - "after 5:00 and before 6:00 every weekday" in timezone Europe/Berlin, 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.
This PR has been generated by Mend Renovate. View repository job log here.