The main practical advantage is that klog.Fatal no longer dumps the backtrace
of all goroutines.
Kubernetes-commit: f05e327ca611c23469ef41310d1d59b384cedc27
Making the LoggingConfiguration part of the versioned component-base/config API
had the theoretic advantage that components could have offered different
configuration APIs with experimental features limited to alpha versions (for
example, sanitization offered only in a v1alpha1.KubeletConfiguration). Some
components could have decided to only use stable logging options.
In practice, this wasn't done. Furthermore, we don't want different components
to make different choices regarding which logging features they offer to
users. It should always be the same everywhere, for the sake of consistency.
This can be achieved with a saner Go API by dropping the distinction between
internal and external LoggingConfiguration types. Different stability levels of
indidividual fields have to be covered by documentation (done) and potentially
feature gates (not currently done).
Advantages:
- everything related to logging is under component-base/logs;
previously this was scattered across different packages and
different files under "logs" (why some code was in logs/config.go
vs. logs/options.go vs. logs/logs.go always confused me again
and again when coming back to the code):
- long-term config and command line API are clearly separated
into the "api" package underneath that
- logs/logs.go itself only deals with legacy global flags and
logging configuration
- removal of separate Go APIs like logs.BindLoggingFlags and
logs.Options
- LogRegistry becomes an implementation detail, with less code
and less exported functionality (only registration needs to
be exported, querying is internal)
Kubernetes-commit: 1aceac797d404b4ac3b3d02fe43d495d1f645aba
The updated zapr is more resilient against MarshalLog crashing. Not a known
problem in Kubernetes, though.
Kubernetes-commit: 3e6974e0ba67a8f598e7bc4ccedfdab928935551
This is the first version to be fully go-mod-compatible.
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Kubernetes-commit: 080c6c711ebf527d5494732b4b41d074ab02733f
Bump konnectivity network proxy to v0.0.28.
Includes a fix to ensure the KAS calls Close() on the egress connection.
Kubernetes-commit: e5b0392f12ed343fbd02266ec785cb31f7071fd3
Bump client_golang to v1.12.1 to fix a concurrency issue in the Go
Collector that was introduced by the library in v1.12.0.
Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
Kubernetes-commit: 7f3f8d25c856e3075d8526dc918ca0965bd4ffae
Also runs:
hack/pin-dependency.sh golang.org/x/mod \
v0.6.0-dev.0.20220106191415-9b9b3d81d5e3
Signed-off-by: Stephen Augustus <foo@auggie.dev>
Kubernetes-commit: 4b1bd548bbe4d71609c65b050b69f63af1ca81d1
Goal of this commit is to add some missing features when the
Kubernetes API is accessed through a SOCKS5 proxy. That's for
example the case when port-forwarding is used (`kubectl port-forward`)
or when exec'ing inside a container (`kubectl exec`), with this
commit it'll now be possible to use both.
Signed-off-by: Romain Aviolat <romain.aviolat@kudelskisecurity.com>
Signed-off-by: Romain Jufer <romain.jufer@kudelskisecurity.com>
Kubernetes-commit: 0a98875e9572d998fbdf3bcdaef4961715b8bc06