python/kubernetes/base/stream
Andrew Melnick 488518d957 Enable binary support for WSClient
Currently, under python 3, the WSClient decodes all data via UTF-8. This
will break, e.g. capturing the stdout of tar or gzip.
This adds a new 'binary' kwarg to the WSClient class and websocket_call
function. If this is set to true, then the decoding will not happen, and
all channels will be interpreted as binary.
This does raise a slight complication, as the OpenAPI-generated client
will convert the output to a string, no matter what, which it ends up
doing by (effectively) calling repr(). This requires a bit of magic to
recover the orignial bytes, and is inefficient. However, this is only
the case when using the default _preload_content=True, setting this to
False and manually calling read_all or read_channel, this issue does not
arise.
2024-02-28 15:41:24 -07:00
..
__init__.py removed submodule 2022-01-07 16:17:39 -08:00
stream.py Enable binary support for WSClient 2024-02-28 15:41:24 -07:00
ws_client_test.py removed submodule 2022-01-07 16:17:39 -08:00
ws_client.py Enable binary support for WSClient 2024-02-28 15:41:24 -07:00