cmd/cue/cmd: allow lossy conversion by default and add --strict option
Applies to JSON Schema now, but generallly applicable for
other conversions.
Change-Id: Ie6abe0ea0daf2d2ede1850a16cd2c1d831fb7f13
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/5649
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
diff --git a/encoding/jsonschema/decode.go b/encoding/jsonschema/decode.go
index bf58b4b..ac2a4af 100644
--- a/encoding/jsonschema/decode.go
+++ b/encoding/jsonschema/decode.go
@@ -380,8 +380,9 @@
// Convert each constraint into a either a value or a functor.
c := constraintMap[key]
if c == nil {
- if pass == 0 {
- s.warnf(n.Pos(), "unsupported constraint %q", key)
+ if pass == 0 && s.cfg.Strict {
+ // TODO: value is not the correct possition, albeit close. Fix this.
+ s.warnf(value.Pos(), "unsupported constraint %q", key)
}
return
}