The go line in the go.mod describes the minimal Go version used to build a module, and also controls Go runtime behavior when that behavior changes across Go versions. 88300c4 moved Kubernetes to Go 1.24.0, and subsequently requires any importer consuming modules from Kubernetes to also upgrade to Go 1.24.0.
This is problematic for containerd. containerd imports several modules as part of our CRI integration, including the CRI API itself, management code for CRI implementations, and modules use to test CRI. containerd's development branch (main) and our planned 2.1 release currently have a minimum of Go 1.23. We do not plan to update to 1.24 as part of the containerd 2.1 release cycle (planned for early May), so this means any further changes to CRI or supporting libraries will not be able to be included in containerd 2.1 and would instead need to wait for 2.2 (planned for early November).
The
goline in thego.moddescribes the minimal Go version used to build a module, and also controls Go runtime behavior when that behavior changes across Go versions. 88300c4 moved Kubernetes to Go 1.24.0, and subsequently requires any importer consuming modules from Kubernetes to also upgrade to Go 1.24.0.This is problematic for containerd. containerd imports several modules as part of our CRI integration, including the CRI API itself, management code for CRI implementations, and modules use to test CRI. containerd's development branch (
main) and our planned 2.1 release currently have a minimum of Go 1.23. We do not plan to update to 1.24 as part of the containerd 2.1 release cycle (planned for early May), so this means any further changes to CRI or supporting libraries will not be able to be included in containerd 2.1 and would instead need to wait for 2.2 (planned for early November).