My current theory: Sometimes, one go command will hang while it has a lock on the Go module cache. This causes all other go commands to deadlock while it waits for the cache to be unlocked. One of the Go team members suspects an internal race condition causing the deadlock.
We want to work around this, but we can’t know whether it’s just hung or is taking a while to download. We’ve seen legitimate builds sometimes take a half hour or more to complete, due to slow source file downloads. So we may implement a timeout, but it will break legitimate/working builds too.
Remember, our Download page comes with no guarantees or SLAs. It’s merely for convenience, especially for first-timers.
If you rely on custom Caddy builds, we recommend using xcaddy directly. (The download page is just a thin HTTP wrapper over xcaddy.)