Skip to content

Upgrade dependencies: caddyserver/caddy v2.10.0 + quic-go v0.54.0#316

Merged
mholt merged 7 commits intomholt:masterfrom
vnxme:upgrade-dependencies
Aug 13, 2025
Merged

Upgrade dependencies: caddyserver/caddy v2.10.0 + quic-go v0.54.0#316
mholt merged 7 commits intomholt:masterfrom
vnxme:upgrade-dependencies

Conversation

@vnxme
Copy link
Collaborator

@vnxme vnxme commented Aug 6, 2025

This PR only upgrades caddyserver/caddy to v2.10.0 (+ go mod tidy), but it is based on the l4quic matcher fix to ensure all the tests pass. I will rebase it once we merge #315.

@vnxme
Copy link
Collaborator Author

vnxme commented Aug 6, 2025

Actually all the tests pass in my IDE, but they fail here because we test against the master branch of the mainline Caddy instead of the one indicated in go.mod, and there is a change in quic-go syntax between v0.51.0 required by v2.10.0 and v0.54.0 required by the master. See also #312 (comment).

@vnxme vnxme changed the title Upgrade dependencies: caddyserver/caddy v2.10.0 Upgrade dependencies: caddyserver/caddy v2.10.0 + quic-go v0.54.0 Aug 6, 2025
@vnxme
Copy link
Collaborator Author

vnxme commented Aug 6, 2025

If we require caddyserver/caddy v2.10.1-0.20250720214045-8ba7eefd0767 which upgrades quic-go dependency to v0.54.0 and make a minor adjustment to l4quic code, all the tests pass here as well.

@francislavoie
Copy link
Collaborator

@vnxme what that would do is it make anyone who builds with caddy-l4 to get forced onto that version of Caddy instead of the one they actually requested (e.g. if they build xcaddy build 2.10.0 --with github.com/mholt/caddy-l4 they would instead get whatever commit from Caddy you point caddy-l4 to). But honestly, that's fine cause caddy-l4 is still essentially experimental.

@mholt
Copy link
Owner

mholt commented Aug 7, 2025

@francislavoie I think that might actually be necessary in this case though since we need to use the latest quic-go version directly in this package.

@vnxme
Copy link
Collaborator Author

vnxme commented Aug 7, 2025

@francislavoie I don’t insist on bumping to a pseudo-version here and would be perfectly fine with v2.10.0. Then we would have to ignore automatic tests failures with Caddy master and users’ complaints about inability to build any commit of Caddy after quic-go upgrade with this app. Though I would rather release Caddy v2.10.1 instead to take into account the code breaking change in quic-go.

Copy link
Owner

@mholt mholt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you very much, again!

I updated it with #315 -- shall we just merge this or was there more you wanted to change?

@vnxme vnxme force-pushed the upgrade-dependencies branch from 7d08006 to 43e204c Compare August 8, 2025 13:03
@vnxme
Copy link
Collaborator Author

vnxme commented Aug 8, 2025

I suggest we also upgrade fsnotify (required by l4remoteiplist) and things-go/go-socks5 (required by l4socks). I've rebased this PR and added these upgrades.

Besides, I remember we had to remove some caddyfile related workarounds where we moved some parsing code to Caddy. I will prepare a separate PR. I've removed the workarounds in tls handler as well (we moved this code to Caddy last year, see caddyserver/caddy@3579815).

Now we may merge unless there are any plans to release Caddy v2.10.1 within a few days or a week.

@IceCodeNew
Copy link
Collaborator

IceCodeNew commented Aug 13, 2025

Is there something we have not yet discussed? This PR looks good to me, though I would like to request @francislavoie and @mholt to pull the trigger.

  • recently planning on a new release of Caddy? @mholt
  • state the necessary for upgrading fsnotify and things-go/go-socks5 @vnxme

@vnxme
Copy link
Collaborator Author

vnxme commented Aug 13, 2025

@IceCodeNew, as far as fsnotify and things-go/go-socks5 upgrades are concerned, they aren't critical at all. However, my intention was to let the users benefit from the bug fixes available in the upstreams.

@mholt
Copy link
Owner

mholt commented Aug 13, 2025

recently planning on a new release of Caddy? @mholt

Ha, yeah, still planned, but then Go 1.25 just got released so we want to build with that, but there's some nuances we need to work out/document.

I will merge this PR for now. 👍

@mholt mholt merged commit 458cf97 into mholt:master Aug 13, 2025
3 checks passed
@Monviech
Copy link

@vnxme Thank you :)

@elAgala elAgala mentioned this pull request Aug 17, 2025
@vnxme vnxme deleted the upgrade-dependencies branch August 22, 2025 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants