Go 1.21 introduces new features to improve compatibility, which may sound boring but is actually a good thing. Go 1 was exciting and full of surprises, but Go 1’s compatibility promise was introduced to make future releases stable and predictable. The post discusses the importance of compatibility and the approaches used to maintain it, such as API checking and testing. Examples of compatibility issues, including output changes, input changes, and protocol changes, are provided. The post also introduces the expanded use of GODEBUG in Go 1.21 to allow programs to opt out of new behaviors and maintain compatibility.
https://go.dev/blog/compat