Skip to content

Commit 5296e5f

Browse files
authored
Update Version Compatibility in readme (#1514)
* Add SDK version 13.0 to the compatibility table * Clarity client's backward compatibility * Clarify back-porting fixes to older versions
1 parent cdf5398 commit 5296e5f

File tree

1 file changed

+29
-20
lines changed

1 file changed

+29
-20
lines changed

Diff for: README.md

+29-20
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ var config = KubernetesClientConfiguration.BuildConfigFromConfigFile();
102102
var client = new Kubernetes(config);
103103
```
104104

105-
Not all auth providers are supported at moment [#91](https://github.com/kubernetes-client/csharp/issues/91#issuecomment-362920478). You can still connect to a cluster by starting the proxy command:
105+
Not all auth providers are supported at the moment [#91](https://github.com/kubernetes-client/csharp/issues/91#issuecomment-362920478). You can still connect to a cluster by starting the proxy command:
106106

107107
```bash
108108
$ kubectl proxy
@@ -153,28 +153,37 @@ ${GEN_DIR}/openapi/csharp.sh ${REPO_DIR}/src/KubernetesClient ${REPO_DIR}/csharp
153153

154154
# Version Compatibility
155155

156-
| SDK Version | Kubernetes Version | .NET Targeting |
157-
|-------------|--------------------|------------------------------------------------------|
158-
| 12.0 | 1.28 | net6.0;net7.0;net48*;netstandard2.0* |
159-
| 11.0 | 1.27 | net6.0;net7.0;net48*;netstandard2.0* |
160-
| 10.0 | 1.26 | net6.0;net7.0;net48*;netstandard2.0* |
161-
| 9.1 | 1.25 | netstandard2.1;net6.0;net7.0;net48*;netstandard2.0* |
162-
| 9.0 | 1.25 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
163-
| 8.0 | 1.24 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
164-
| 7.2 | 1.23 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
165-
| 7.0 | 1.23 | netstandard2.1;net5.0;net6.0 |
166-
| 6.0 | 1.22 | netstandard2.1;net5.0 |
167-
| 5.0 | 1.21 | netstandard2.1;net5 |
168-
| 4.0 | 1.20 | netstandard2.0;netstandard2.1 |
169-
| 3.0 | 1.19 | netstandard2.0;net452 |
170-
| 2.0 | 1.18 | netstandard2.0;net452 |
171-
| 1.6 | 1.16 | netstandard1.4;netstandard2.0;net452; |
172-
| 1.4 | 1.13 | netstandard1.4;net451 |
173-
| 1.3 | 1.12 | netstandard1.4;net452 |
156+
| SDK Version | Kubernetes Version | .NET Targeting |
157+
|-------------|--------------------|-----------------------------------------------------|
158+
| 13.0 | 1.29 | net6.0;net7.0;net8.0;net48*;netstandard2.0* |
159+
| 12.0 | 1.28 | net6.0;net7.0;net48*;netstandard2.0* |
160+
| 11.0 | 1.27 | net6.0;net7.0;net48*;netstandard2.0* |
161+
| 10.0 | 1.26 | net6.0;net7.0;net48*;netstandard2.0* |
162+
| 9.1 | 1.25 | netstandard2.1;net6.0;net7.0;net48*;netstandard2.0* |
163+
| 9.0 | 1.25 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
164+
| 8.0 | 1.24 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
165+
| 7.2 | 1.23 | netstandard2.1;net5.0;net6.0;net48*;netstandard2.0* |
166+
| 7.0 | 1.23 | netstandard2.1;net5.0;net6.0 |
167+
| 6.0 | 1.22 | netstandard2.1;net5.0 |
168+
| 5.0 | 1.21 | netstandard2.1;net5 |
169+
| 4.0 | 1.20 | netstandard2.0;netstandard2.1 |
170+
| 3.0 | 1.19 | netstandard2.0;net452 |
171+
| 2.0 | 1.18 | netstandard2.0;net452 |
172+
| 1.6 | 1.16 | netstandard1.4;netstandard2.0;net452; |
173+
| 1.4 | 1.13 | netstandard1.4;net451 |
174+
| 1.3 | 1.12 | netstandard1.4;net452 |
174175

175176
* Starting from `2.0`, [dotnet sdk versioning](https://github.com/kubernetes-client/csharp/issues/400) adopted
176177
* `Kubernetes Version` here means the version sdk models and apis were generated from
177-
* Kubernetes api server guarantees the compatibility with `n-2` (`n-3` after 1.28) version. for exmaple, 1.19 based sdk should work with 1.21 cluster, but no guarantee works with 1.22 cluster. see also <https://kubernetes.io/releases/version-skew-policy/>
178+
* Kubernetes api server guarantees the compatibility with `n-2` (`n-3` after 1.28) version. for example:
179+
- 1.19 based sdk should work with 1.21 cluster, but not guaranteed to work with 1.22 cluster.<br>
180+
181+
and vice versa:
182+
- 1.21 based sdk should work with 1.19 cluster, but not guaranteed to work with 1.18 cluster.<br>
183+
Note: in practice, the sdk might work with much older clusters, at least for the more stable functionality. However, it is not guaranteed past the `n-2` (or `n-3` after 1.28 ) version. See [#1511](https://github.com/kubernetes-client/csharp/issues/1511) for additional details.<br>
184+
185+
see also <https://kubernetes.io/releases/version-skew-policy/>
186+
* Fixes (including security fixes) are not back-ported automatically to older sdk versions. However, contributions from the community are welcomed 😊; See [Contributing](#contributing) for instructions on how to contribute.
178187
* `*` `KubernetesClient.Classic`: netstandard2.0 and net48 are supported with limited features
179188

180189

0 commit comments

Comments
 (0)