Open kolinfluence opened 7 months ago
updated the quic-go to latest manually but got this:
go build main.go
# github.com/hertz-contrib/http3/network/quic-go
vendor/github.com/hertz-contrib/http3/network/quic-go/connection.go:79:9: cannot use &conn{…} (value of type *conn) as network.StreamConn value in return statement: *conn does not implement network.StreamConn (wrong type for method HandshakeComplete)
have HandshakeComplete() <-chan struct{}
want HandshakeComplete() context.Context
vendor/github.com/hertz-contrib/http3/network/quic-go/transport.go:99:13: cannot use quic.ListenAddrEarly(addr, baseConf, quicConf) (value of type *"github.com/quic-go/quic-go".EarlyListener) as "github.com/quic-go/quic-go".EarlyListener value in assignment
vendor/github.com/hertz-contrib/http3/network/quic-go/transport.go:101:13: cannot use quic.ListenEarly(conn, baseConf, quicConf) (value of type *"github.com/quic-go/quic-go".EarlyListener) as "github.com/quic-go/quic-go".EarlyListener value in assignment
vendor/github.com/hertz-contrib/http3/network/quic-go/transport.go:106:15: cannot use ln (variable of type "github.com/quic-go/quic-go".EarlyListener) as io.Closer value in assignment: "github.com/quic-go/quic-go".EarlyListener does not implement io.Closer (method Close has pointer receiver)
Hello,Can you submit a PR? @kolinfluence
In quic-go
,Connection.HandshakeComplete returns a channels instead of a context.Context after v0.34.0.
// HandshakeComplete blocks until the handshake completes (or fails).
// For the client, data sent before completion of the handshake is encrypted with 0-RTT keys.
// For the server, data sent before completion of the handshake is encrypted with 1-RTT keys,
// however the client's identity is only verified once the handshake completes.
HandshakeComplete() <-chan struct{}
But in hertz/pkg/network
,it need HandshakeComplete to return context.Context.
// HandshakeComplete blocks until the handshake completes (or fails).
HandshakeComplete() context.Context
maybe need to submit a PR to hertz
.
change lucas clement to quic-go repo naming