docker/cli ยท error

invalid value : %+v

Error message

invalid value : %+v

What it means

Error "invalid value : %+v" thrown in docker/cli.

Source

Thrown at cli/compose/loader/merge.go:228

		dstMap, err := sliceToMap(tomap, dst)
		if err != nil {
			return err
		}
		srcMap, err := sliceToMap(tomap, src)
		if err != nil {
			return err
		}
		if err := mergo.Map(&dstMap, srcMap, mergo.WithOverride); err != nil {
			return err
		}
		return writeValue(dst, dstMap)
	}
}

func sliceToMap(tomap tomapFn, v reflect.Value) (map[any]any, error) {
	// check if valid
	if !v.IsValid() {
		return nil, fmt.Errorf("invalid value : %+v", v)
	}
	return tomap(v.Interface())
}

func mergeLoggingConfig(dst, src reflect.Value) error {
	dstDriver := dst.Elem().FieldByName("Driver").String()
	srcDriver := src.Elem().FieldByName("Driver").String()

	// Same driver, merging options
	if dstDriver == srcDriver || dstDriver == "" || srcDriver == "" {
		if dstDriver == "" {
			dst.Elem().FieldByName("Driver").SetString(srcDriver)
		}
		dstOptions := dst.Elem().FieldByName("Options").Interface().(map[string]string)
		srcOptions := src.Elem().FieldByName("Options").Interface().(map[string]string)
		return mergo.Merge(&dstOptions, srcOptions, mergo.WithOverride)
	}
	// Different driver, override with src

View on GitHub (pinned to e9452d6e78)

When it happens

Trigger: Thrown at cli/compose/loader/merge.go:228 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of docker/cli@e9452d6e78 (2026-08-01). Data as JSON: /data/errors/0e00aefd10329f59.json. Report an issue: GitHub.