Highlights
- Operator panels now display
26.8.25-1457fromxray version/core.Version(). - The string and release name follow year.month.day-HHMM UTC so they stay valid semver.
- Fixed a mux XUDP server panic (
close of closed channel) when a worker finished after the shared Runtime had already started closing.
Fork fixes
- A response sink created against an already-closing mux Runtime closed its stop channel without marking the sink closed.
ServerWorker.finishthen closed the same channel again and the process panicked. Rejected sinks now go throughmarkClosed()so later teardown is idempotent.
Upstream changes
Merged the latest upstream/main:
- WireGuard outbound: add
remoteDNSand honor TTL (XTLS#6620)
Compatibility notes
- Release tag and title are
v26.8.25-1457. The panel-visible string is the same. - REALITY session identifiers use numeric
26.8.25. Client-version bounds stay operator-configurable with no implicit minimum when omitted. - Existing VLESS, Trojan, Vision, and SMUX wire bytes are unchanged.
Validation
- Mux XUDP double-close regression: RED (
panic: close of closed channel) then GREEN. go test ./core ./common/mux ./proxy/wireguard ./infra/conf -count=1go test -race ./core ./common/mux ./proxy/wireguard -count=1- Version stamp test:
26.8.25-1457.