code: func SpecFromURL(u *url.URL) (*Spec, error) {
  	q := u.Query()
  	sp := Spec{
  		Context:   q.Get("context"),
  		Namespace: q.Get("namespace"),
  		Pod:       u.Hostname(),
  		Container: q.Get("container"),
  	}
  	if sp.Context != "" && !validKubeIdentifier(sp.Context) {
  		return nil, errors.Errorf("unsupported context name: %q", sp.Context)
  	}
  	if sp.Namespace != "" && !validKubeIdentifier(sp.Namespace) {
  		return nil, errors.Errorf("unsupported namespace name: %q", sp.Namespace)
  	}
  	if sp.Pod == "" {
  		return nil, errors.New("url lacks pod name")
  	}
  	if !validKubeIdentifier(sp.Pod) {
  		return nil, errors.Errorf("unsupported pod name: %q", sp.Pod)
  	}
  	if sp.Container != "" && !validKubeIdentifier(sp.Container) {
  		return nil, errors.Errorf("unsupported container name: %q", sp.Container)
  	}
  	return &sp, nil
  }
docs: // SpecFromURL creates Spec from URL.
  // URL is like kube-pod://<pod>?context=<context>&namespace=<namespace>&container=<container> .
  // Only <pod> part is mandatory.