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
 			}