caddy-dns / cloudflare

Caddy module: dns.providers.cloudflare
Apache License 2.0
436 stars 59 forks source link

Fails to build: cannot use h.allow0RTT (variable of type bool) as tls.QUICSessionTicketOptions #57

Closed talentlessguy closed 1 year ago

talentlessguy commented 1 year ago

I've ran xcaddy build --with github.com/caddy-dns/cloudflare on latest go (1.21.0 linux/amd64) and it fails because of quic-go for some reason (I assume generic types error?):

2023/08/08 21:57:39 [INFO] Temporary folder: /tmp/buildenv_2023-08-08-2157.3516867617
2023/08/08 21:57:39 [INFO] Writing main module: /tmp/buildenv_2023-08-08-2157.3516867617/main.go
package main

import (
caddycmd "github.com/caddyserver/caddy/v2/cmd"

// plug in Caddy modules here
_ "github.com/caddyserver/caddy/v2/modules/standard"
_ "github.com/caddy-dns/cloudflare"
)

func main() {
caddycmd.Main()
}
2023/08/08 21:57:39 [INFO] Initializing Go module
2023/08/08 21:57:39 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go mod init caddy
go: creating new go.mod: module caddy
go: to add module requirements and sums:
go mod tidy
2023/08/08 21:57:39 [INFO] Pinning versions
2023/08/08 21:57:39 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go get -d -v github.com/caddyserver/caddy/v2
go: added github.com/beorn7/perks v1.0.1
go: added github.com/caddyserver/caddy/v2 v2.7.3
go: added github.com/caddyserver/certmagic v0.19.1
go: added github.com/cespare/xxhash/v2 v2.2.0
go: added github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572
go: added github.com/golang/mock v1.6.0
go: added github.com/golang/protobuf v1.5.3
go: added github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1
go: added github.com/google/uuid v1.3.0
go: added github.com/klauspost/cpuid/v2 v2.2.5
go: added github.com/libdns/libdns v0.2.1
go: added github.com/matttproud/golang_protobuf_extensions v1.0.1
go: added github.com/mholt/acmez v1.2.0
go: added github.com/miekg/dns v1.1.55
go: added github.com/onsi/ginkgo/v2 v2.9.5
go: added github.com/prometheus/client_golang v1.14.0
go: added github.com/prometheus/client_model v0.3.0
go: added github.com/prometheus/common v0.37.0
go: added github.com/prometheus/procfs v0.8.0
go: added github.com/quic-go/qpack v0.4.0
go: added github.com/quic-go/qtls-go1-20 v0.3.1
go: added github.com/quic-go/quic-go v0.37.3
go: added github.com/zeebo/blake3 v0.2.3
go: added go.uber.org/multierr v1.11.0
go: added go.uber.org/zap v1.25.0
go: added golang.org/x/crypto v0.11.0
go: added golang.org/x/exp v0.0.0-20230310171629-522b1b587ee0
go: added golang.org/x/mod v0.11.0
go: added golang.org/x/net v0.12.0
go: added golang.org/x/sys v0.10.0
go: added golang.org/x/term v0.10.0
go: added golang.org/x/text v0.11.0
go: added golang.org/x/tools v0.10.0
go: added google.golang.org/protobuf v1.31.0
2023/08/08 21:57:42 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go get -d -v github.com/caddy-dns/cloudflare github.com/caddyserver/caddy/v2
go: added github.com/caddy-dns/cloudflare v0.0.0-20230807034102-74f004e1c1ab
go: added github.com/libdns/cloudflare v0.1.0
2023/08/08 21:57:44 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go get -d -v
2023/08/08 21:57:54 [INFO] Build environment ready
2023/08/08 21:57:54 [INFO] Building Caddy
2023/08/08 21:57:54 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go mod tidy -e
2023/08/08 21:57:54 [INFO] exec (timeout=0s): /home/v1rtl/go/bin/go build -o /home/v1rtl/caddy -ldflags -w -s -trimpath
# github.com/quic-go/quic-go/internal/handshake
/home/v1rtl/go/pkg/mod/github.com/quic-go/quic-go@v0.37.3/internal/handshake/crypto_setup.go:362:37: cannot use h.allow0RTT (variable of type bool) as tls.QUICSessionTicketOptions value in argument to h.conn.SendSessionTicket
2023/08/08 21:57:56 [INFO] Cleaning up temporary folder: /tmp/buildenv_2023-08-08-2157.3516867617
2023/08/08 21:57:56 [FATAL] exit status 1
mholt commented 1 year ago

Quic-go cannot be built with Go 1.21 yet. (This has nothing to do with caddy-dns/cloudflare btw) - Go pushed a last minute change before their release that didn't get into quic-go. See https://github.com/caddyserver/caddy/pull/5719#issuecomment-1670271346.

talentlessguy commented 1 year ago

switched to go 1.20, it builds successfully