Xo is experimental. The source code is not public yet; it will be soon. Read the release notes
Menu · XO1103

Docs

XO1103: per module report of `use go` packages and the functions that perform `go`

note · reported by the vet

Reported by xo vet as a note, once per module. Go code can reach files and the network without a capability, so every call into Go performs the effect go, and agents may reach for Go idioms through the boundary out of habit (decision 0041). The note lists the Go packages the module imports and the functions that perform go, so the authority escape can be reviewed. See core 4.4.

Example

use go "strings"

pub fn shout(s: Str) -> Str uses go {
  strings.to_upper(s)
}

Fix

// Review each listed use. Prefer Xo std where it covers the need:
pub fn shout(s: Str) -> Str {
  s.to_upper()
}

Run xo explain XO1103 for this text in a terminal, or see section 10.6 of the specification.