I have opinions about Go's forced switch to modules, and one of them is that it effectively destroyed one part of the Go 1 compatibility promise in practice.

I can take Go code from 2015 or 2019 and run it today. Sure, great. But I generally can't take a Go program from 2015 or 2019 and rebuild it today, not easily, because you can no longer build non-modular programs. Converting a Go program to modules is non-trivial, especially third party programs.

0

If you have a fediverse account, you can quote this note from your own instance. Search https://mastodon.social/users/cks/statuses/115611589284610598 on your instance and quote it. (Note that quoting is not supported in Mastodon.)