* support async enum watch
* honor ct and catch more exception
* fix format
* better flaky
* ct to for should throw
* make sure no npe
* fix nuget build
* fix watcher test
* check close before dispose
* port autorest to watch generator
* rename KubernetesWatchGenerator -> KubernetesGenerator
* add validate
* fix format
* fix generate code warnings
* fix line ending
* fix missing property found by comp check
* do not new http method
* Initial port of cache functions from java client
* Move lock in Cache.Replace to be less disruptive
* Remove IListerWatcher as it's not used at the moment
* Added todo in Cache.Get as reminder
* TApiType implement IKubernetesObject
* TApiType implement IKubernetesObject
* TApiType implement class along with IKubernetesObject
* Disable failing test until it can be figured out
* Ran `dotnet format --fix-whitespace --fix-style` to put formatting in compliance
* Moved contents of KubernetesClient.Util into KubernetesClient project
* Moved contents of KubernetesClient.Util into KubernetesClient project #2 :(
* Update LICENSE
Update the copyright notice within the licence agreement, as per the instructions under "APPENDIX: How to apply the Apache License to your work."
* Update LICENSE
Updated the date and licence holder for the copyright notice
* Affects Yaml.LoadAllFrom* methods
* Doesn't require user to explicitly pass a mapping for known types
* Allows user to specify a mapping for custom types, if required
Some tools can generate kubeconfig files which use wildcard IPv4 or IPv6 addresses. For example, using k3d with --api-server=https://0.0.0.0:6433/ would generate a kubeconfig file like this:
```
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: (...)
server: https://0.0.0.0:6433
name: k3d-k3s-default
```
Standard Kubernetes tools (like kubectl or Helm) correctly parse the 0.0.0.0 IP address and transform it 127.0.0.1; 3rd party tools like curl or wget will do the same on Unix systems.
This is default behavior on Unix but not on Windows. As a result, the .NET Kubernetes client will fail to work with kubeconfig files like this and you'll get HTTP exceptions.
Go has explicit workarounds for this (see 1a0b1cca4c), and this PR attemps to replicate these workarounds in the .NET client.