mesh/delivery-group group feat/774-l3-reland rejected: composed together: the checker's verdict at the members' heads (b48c90fea31f): integration: mesh-self-ch…
mesh/delivery closed: a newer head of the same pull request
mesh/check failed: integration: mesh-self-check/cmd/mesh-self-check.TestTheSelfCheckWholeRunsOnTheBus: the run answered {Run:doctor-1793351737-1 At:20…
One commit with exactly the tree of the reviewed head35b4509c0a, on main12c2574c9d, so two compiled programs added and removed on the branch leave no trace in history (issue 1577).
34 lines
1.3 KiB
Go
34 lines
1.3 KiB
Go
package main
|
|
|
|
// The SDK pin a process's own bus connection needs (novox/hq ADR 0436 §4, issue 1172): mesh-mail's go.mod
|
|
// requires mesh-sdk go at the release-2 commit (main 34392e7) and go 1.26.0, and go/process is importable.
|
|
// The blank import below is what proves importability at compile time; go vet (run before every commit, per
|
|
// the context file) already fails the build if it is not.
|
|
|
|
import (
|
|
"os"
|
|
"strings"
|
|
"testing"
|
|
|
|
_ "git.novox.be/novox/mesh-sdk/go/process"
|
|
)
|
|
|
|
// 1172/AC1: given mesh-mail's go.mod, when built, then it requires mesh-sdk go at the release-2 commit or after it
|
|
// (v0.1.14-0.20261019062050-34392e74916c or any later pseudo-version, which the catalogue's pins move) and go 1.26.0, and
|
|
// go/process is importable (the import above).
|
|
func TestGoModPinsTheSDKsProcessRelease(t *testing.T) {
|
|
raw, err := os.ReadFile("../../go.mod")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
mod := string(raw)
|
|
const prefix, release2 = "git.novox.be/novox/mesh-sdk/go v0.1.14-0.", "20261019062050"
|
|
at := strings.Index(mod, prefix)
|
|
if at < 0 || len(mod) < at+len(prefix)+14 || mod[at+len(prefix):at+len(prefix)+14] < release2 {
|
|
t.Fatalf("go.mod does not require mesh-sdk go at release 2 (%s) or after:\n%s", release2, mod)
|
|
}
|
|
if !strings.Contains(mod, "go 1.26.0") {
|
|
t.Fatalf("go.mod does not declare go 1.26.0:\n%s", mod)
|
|
}
|
|
}
|