Skip to content

Commit 519db58

Browse files
committed
internal/encoding: don't simplify interpreted encodings
As this will cause file information to be lost. The effect is relatively minor. Change-Id: I25367088b202118ac16d24c3363f0c19553480a2 Reviewed-on: https://cue-review.googlesource.com/c/cue/+/6301 Reviewed-by: Marcel van Lohuizen <[email protected]> Reviewed-by: Johan Euphrosine <[email protected]>
1 parent ddc8eb4 commit 519db58

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

cmd/cue/cmd/testdata/script/def_jsonschema.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,8 @@ age: twenty
6969

7070
-- expect-stderr2 --
7171
age: conflicting values "twenty" and >=0 (mismatched types string and number):
72-
14:7
7372
./data.yaml:1:7
7473
-- expect-stderr3 --
7574
age: conflicting values "twenty" and >=0 (mismatched types string and number):
76-
14:7
7775
./data.yaml:1:7
7876
-- cue.mod --

cmd/cue/cmd/testdata/script/import_auto.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ cue import -o - ./openapi.yaml
22
cmp stdout expect-openapi
33

44
-- expect-openapi --
5+
6+
57
// An OpenAPI file
68

79
info: {

internal/encoding/encoding.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -267,15 +267,19 @@ func jsonSchemaFunc(cfg *Config, f *build.File) interpretFunc {
267267

268268
Strict: cfg.Strict,
269269
}
270-
file, err = simplify(jsonschema.Extract(i, cfg))
270+
file, err = jsonschema.Extract(i, cfg)
271+
// TODO: simplify currently erases file line info. Reintroduce after fix.
272+
// file, err = simplify(file, err)
271273
return file, id, err
272274
}
273275
}
274276

275277
func openAPIFunc(c *Config, f *build.File) interpretFunc {
276278
cfg := &openapi.Config{PkgName: c.PkgName}
277279
return func(i *cue.Instance) (file *ast.File, id string, err error) {
278-
file, err = simplify(openapi.Extract(i, cfg))
280+
file, err = openapi.Extract(i, cfg)
281+
// TODO: simplify currently erases file line info. Reintroduce after fix.
282+
// file, err = simplify(file, err)
279283
return file, "", err
280284
}
281285
}
@@ -431,6 +435,8 @@ func simplify(f *ast.File, err error) (*ast.File, error) {
431435
if err != nil {
432436
return nil, err
433437
}
438+
// This needs to be a function that modifies f in order to maintain line
439+
// number information.
434440
b, err := format.Node(f, format.Simplify())
435441
if err != nil {
436442
return nil, err

0 commit comments

Comments
 (0)