···1+Starting from go1.14, go verifes that vendor/modules.txt matches the requirements
2+and replacements listed in the main module go.mod file, and it is a hard failure if
3+vendor/modules.txt is missing.
4+5+Relax module consistency checks and switch back to pre go1.14 behaviour if
6+vendor/modules.txt is missing regardless of go version requirement in go.mod.
7+8+This has been ported from FreeBSD: https://reviews.freebsd.org/D24122
9+See https://github.com/golang/go/issues/37948 for discussion.
10+11+diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go
12+index b2cb44100e..05bf3829d5 100644
13+--- a/src/cmd/go/internal/modload/vendor.go
14++++ b/src/cmd/go/internal/modload/vendor.go
15+@@ -159,7 +159,7 @@ func checkVendorConsistency(indexes []*modFileIndex, modFiles []*modfile.File, m
16+ panic(fmt.Errorf("not in workspace mode but number of indexes is %v, not 1", len(indexes)))
17+ }
18+ index := indexes[0]
19+- if gover.Compare(index.goVersion, "1.14") < 0 {
20++ if gover.Compare(index.goVersion, "1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) {
21+ // Go versions before 1.14 did not include enough information in
22+ // vendor/modules.txt to check for consistency.
23+ // If we know that we're on an earlier version, relax the consistency check.
+11
pkgs/top-level/all-packages.nix
···25916 go = buildPackages.go_1_21;
25917 };
259180000000000025919 leaps = callPackage ../development/tools/leaps { };
2592025921 ### DEVELOPMENT / JAVA MODULES
···25916 go = buildPackages.go_1_21;
25917 };
2591825919+ # requires a newer Apple SDK
25920+ go_1_22 = darwin.apple_sdk_11_0.callPackage ../development/compilers/go/1.22.nix {
25921+ inherit (darwin.apple_sdk_11_0.frameworks) Foundation Security;
25922+ };
25923+ buildGo122Module = darwin.apple_sdk_11_0.callPackage ../build-support/go/module.nix {
25924+ go = buildPackages.go_1_22;
25925+ };
25926+ buildGo122Package = darwin.apple_sdk_11_0.callPackage ../build-support/go/package.nix {
25927+ go = buildPackages.go_1_22;
25928+ };
25929+25930 leaps = callPackage ../development/tools/leaps { };
2593125932 ### DEVELOPMENT / JAVA MODULES