xray-rust v0.3.0
Highlights
- Added production VLESS WebSocket, HTTPUpgrade, gRPC, and XHTTP transports.
- Added XHTTP packet-up, stream-up, and stream-one over HTTP/1.1, HTTP/2, and protected HTTP/3.
- Hardened browser-shaped TLS/uTLS and VLESS REALITY Vision interoperability.
- Improved gRPC/XHTTP pooling, cancellation, gzip handling, and HTTP/3 stream cancellation.
- Made fd-backed TUN recovery resilient, kept Apple IPv6 full-tunnel routing fail-closed, and preserved FFI v1 prefix compatibility.
- Added live xray-core interoperability matrices and transport benchmark workloads.
Compatibility
- Embedders using the removed free
select_*functions must retain a long-livedOutboundRouterand call its methods. - HTTP/3 is phase one: QUIC v1, static receive windows, Quinn BBR approximation, and one active HTTP request per QUIC connection. Unsupported H3 features fail closed.
- This is a source-only release; no binary, AAR, XCFramework, or crates.io assets are published.
Verification
- GitHub CI: Rust, Go oracles, Apple, Android, secret scan, and supply-chain policy.
- Live xray-core: WS 3/3, HTTPUpgrade 3/3, gRPC 5/5, XHTTP 15/15, REALITY/Vision 21/21.
- Raw TCP VLESS REALITY Vision A/B: unchanged 13.380 Gbps median throughput; CPU improved from 830 to 820 ms/GiB.
See the full changelog.