This patch is carried over from Nixpkgs' pkgs/development/compilers/go/go_no_vendor_checks-1.21.patch
.
It is required for Nixpkgs' buildGoModule to work with Go 1.14+.
diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go | |
index b2cb44100e..05bf3829d5 100644 | |
--- a/src/cmd/go/internal/modload/vendor.go | |
+++ b/src/cmd/go/internal/modload/vendor.go | |
@@ -159,7 +159,7 @@ func checkVendorConsistency(indexes []*modFileIndex, modFiles []*modfile.File, m | |
panic(fmt.Errorf("not in workspace mode but number of indexes is %v, not 1", len(indexes))) | |
} | |
index := indexes[0] | |
- if gover.Compare(index.goVersion, "1.14") < 0 { | |
+ if gover.Compare(index.goVersion, "1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) { | |
// Go versions before 1.14 did not include enough information in | |
// vendor/modules.txt to check for consistency. | |
// If we know that we're on an earlier version, relax the consistency check. |