Or just go version -m
> 122 packages
That's still a lot
> many of which are indirect)
That means literally nothing. Indirect still gets built, indirect still in the exe.
A lot of the /x/ packages are repeated, just different versions; and I believe -- if my understanding is right -- a lot of these are only used for checksum verification, not necessarily a manifest of what is compiled into the binary.
But, the point remains, dependencies can bloat quickly, which is why we went with such a modular architecture for Caddy 2.
it actually doesn’t seem like that long of a list if you only consider one version per library
This tripped me up trying to minimize dependencies for a library by splitting it into a separate repo from the rest of the application, but this is totally unnecessary (and annoying to manage).
Go modules are pretty good.