Skip to content

[pull] master from kubernetes-client:master - #138

Merged
pull[bot] merged 4 commits into
MorningSong:masterfrom
kubernetes-client:master
Aug 11, 2026
Merged

[pull] master from kubernetes-client:master#138
pull[bot] merged 4 commits into
MorningSong:masterfrom
kubernetes-client:master

Conversation

@pull

@pull pull Bot commented Aug 11, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

jojinkb and others added 4 commits July 25, 2026 15:23
WSClient.update() waits for the underlying socket to become readable
via poll()/select() before reading a frame. SSL sockets decrypt an
entire TLS record at a time, so when several websocket frames arrive
in one TLS record, the first recv_data_frame() call consumes the whole
record from the socket and the remaining frames sit decrypted inside
the SSLSocket's internal buffer, where poll()/select() cannot see
them. Those frames are only delivered once new data arrives on the
connection and are lost if it never does, which randomly truncates
large outputs read through the stream API.

Check SSLSocket.pending() before polling, mirroring what
PortForward._proxy() already does, so buffered frames are consumed
without waiting for socket readability.

The OPCODE_CONT handling suggested in the issue is not needed:
websocket-client reassembles continuation frames inside
recv_data_frame() and returns the opcode of the initial frame, so
update() never observes OPCODE_CONT. A regression test documents that
fragmented messages are delivered in full.

Signed-off-by: Jojin <jojin.kb@gmail.com>
…ssl-pending

Revert "Fix pending SSL data handling in stream client"
Fix WSClient.update dropping frames buffered in the SSL socket
@pull pull Bot locked and limited conversation to collaborators Aug 11, 2026
@pull pull Bot added the ⤵️ pull label Aug 11, 2026
@pull
pull Bot merged commit 5a8b21c into MorningSong:master Aug 11, 2026
8 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants