Tags: longcipher/hpx
Tags
test(hpx-emulation, hpx-streams): add comprehensive unit tests Add tests for emulation factory dispatch, browser header initializers, TLS fingerprint presets, fingerprint diffs, cache behavior, and codec edge cases including varint decoding, bracket handling in JSON arrays, and iteration bounds to prevent hangs from codec regressions.
chore: bump version to 2.5.16 and update defaults - Bump workspace version and all local crate versions from 2.5.15 to 2.5.16 - Update selectors from 0.39.0 to 0.40.0 and stylo from 0.19.0 to 0.20.0 - Enable TCP nodelay by default in connector - Enable HTTP/2 keep-alive pings (10s interval, while idle) - Enable BBR congestion control for HTTP/3 - Add warm_up API to pre-establish pooled connections - Enable WebSocket no_delay by default
fix(hpx): Fix missing conditional compilation for rustls-tls feature Add the missing not(feature = "boring-tls") condition to the TlsInfoFactory implementation, and supplement the conditional declaration of tokio_rustls in lib.rs to prevent conflicts with the boring-tls feature.
chore: bump to v2.5.11 and refactor browser/TLS/config layers - Version bump workspace to 2.5.11 - Refactor hpx-browser: extract stealth into dedicated module, add utils.rs - Unify TLS version representation with wire-value constants - Introduce RequestConfig generic for layered client/request config - Fix yawc fragmentation: replace panic with ConflictingFragmentation error - Fix yawc proxy URL parsing: proper host/port extraction with error handling - Fix codec boundary: max_payload_size uses > instead of >= - Remove dead code annotations for pending integrations - Update hpx-h3 upstream tracking doc - Bump deno_core, rustls-pki-types, blitz rev
refactor(ws/yawc): delegate permessage-deflate negotiation to yawc na… …tive layer Replace manual Sec-WebSocket-Extensions header manipulation with yawc's built-in compression negotiation via Options::with_balanced_compression(). This moves extension negotiation out of the hpx backend and into the yawc layer where it belongs, eliminating duplicate logic and improving reliability. Changes: - backend_yawc.rs: Remove manual extension header injection; use yawc's with_balanced_compression() for transparent compression negotiation - WebSocketResponse: Replace deflate_request field with compression_accepted derived from yawc's negotiated_extensions; add compression_accepted() method - WebSocket/Read/Write: Track compression_accepted instead of DeflateCodec; recv/send no longer perform manual compress/decompress — yawc handles it - yawc native: Add negotiated_extensions field and compression_accepted() API to expose handshake negotiation result to callers - Version bump: 2.5.8 -> 2.5.9 across workspace
PreviousNext