Use Orbita from Go.

Install the current pre-release client:

go get github.com/orbita-rocks/orbita-go@v0.1.0-dev.2
package main
 
import (
  "context"
  "log"
 
  orbita "github.com/orbita-rocks/orbita-go"
)
 
func main() {
  ctx := context.Background()
  client, err := orbita.Dial(ctx, "http://127.0.0.1:7100")
  if err != nil {
    log.Fatal(err)
  }
  defer client.Close()
 
  keyspace := client.Keyspace("default")
  result, err := keyspace.Set(ctx, "catalog/current", []byte("manifest-42"))
  if err != nil {
    log.Fatal(err)
  }
  log.Printf("version: %d", result.Version)
}

Mutation failures can be ambiguous: a lost reply may mean the write committed. The client does not silently retry mutations. Reconcile with a linearizable read before deciding whether to retry.

See orbita-rocks/orbita-go for the pinned wire-contract version and full API.