grafana/k6 · error

k6/experimental/grpc has been graduated, please use k6/net/g

Error message

k6/experimental/grpc has been graduated, please use k6/net/grpc instead. See https://grafana.com/docs/k6/latest/javascript-api/k6-net-grpc/ for more information.

What it means

k6/experimental/grpc graduated to the stable k6/net/grpc module; the experimental import path was removed from the registry and now resolves to the removedModule stub, which throws at import-instantiation time.

Source

Thrown at internal/js/jsmodules.go:107

	// external is always prefixed with `k6/x`
	for _, e := range external {
		result[e.Name] = e.Module
	}

	return result
}

type removedModule struct {
	errMsg string
}

func newRemovedModule(errMsg string) modules.Module {
	return &removedModule{errMsg: errMsg}
}

func (rm *removedModule) NewModuleInstance(vu modules.VU) modules.Instance {
	common.Throw(vu.Runtime(), errors.New(rm.errMsg))

	return nil
}

type warnExperimentalModule struct {
	once sync.Once
	msg  string
	base modules.Module
}

func newWarnExperimentalModule(base modules.Module, msg string) modules.Module {
	return &warnExperimentalModule{
		msg:  msg,
		base: base,
	}
}

func (w *warnExperimentalModule) NewModuleInstance(vu modules.VU) modules.Instance {

View on GitHub (pinned to 93accf6570)

Solutions

  1. Change the import to 'k6/net/grpc': `import grpc from 'k6/net/grpc'`
  2. The Client API (grpc.newClient etc.) is unchanged; only the specifier needs updating in most scripts

Example fix

// before
import grpc from 'k6/experimental/grpc';

// after
import grpc from 'k6/net/grpc';
Defensive patterns

Strategy: validation

Validate before calling

grep -rn "k6/experimental/grpc" . --include='*.js' && { echo 'migrate to k6/net/grpc' >&2; exit 1; } || true

Prevention

When it happens

Trigger: `import grpc from 'k6/experimental/grpc'` on a current k6 build.

Common situations: gRPC scripts from the experimental era run after upgrading k6; shared company libraries still importing the old specifier.

Related errors


AI-assisted analysis of grafana/k6@93accf6570 (2026-08-15). Data as JSON: /api/errors/4047ba0505ee941c. Report an issue: GitHub.