[GH-ISSUE #3] Key chaining before defining full object #2

Open
opened 2026-05-22 22:05:27 +01:00 by JakeStanger · 0 comments
Owner

Originally created by @JakeStanger on GitHub (Jul 28, 2025).
Original GitHub issue: https://github.com/corn-config/specification/issues/3

The spec currently specifies that key-chaining can be mixed with full-object representation:

github.com/corn-config/specification@b5084cb319/spec.md (L409-L419)

What is not specified is whether this should be supported in reverse, ie chaining prior to the full-object.

{
    value.foo = 42
    value = { bar = 3.14 }
}

github.com/corn-config/test-suite@0a493cedc8/corn/key/chaining/start.pos.corn

The current (v0.10) behaviour is that foo is overwritten and lost.

{ "value": { "bar": 3.14 } }

github.com/corn-config/test-suite@0a493cedc8/json/key/chaining/start.json

Should this be the the case, or should the expected result be an object with both foo and bar?

A decision is required, and the spec needs to be updated either way.

Originally created by @JakeStanger on GitHub (Jul 28, 2025). Original GitHub issue: https://github.com/corn-config/specification/issues/3 The spec currently specifies that key-chaining can be mixed with full-object representation: https://github.com/corn-config/specification/blob/b5084cb319c2608e7f5bd9051c8fe177e240defc/spec.md?plain=1#L409-L419 What is not specified is whether this should be supported in reverse, ie chaining prior to the full-object. ``` { value.foo = 42 value = { bar = 3.14 } } ``` https://github.com/corn-config/test-suite/blob/0a493cedc8f0039bc9a0aceeb6a3c66ba0024bce/corn/key/chaining/start.pos.corn The current (v0.10) behaviour is that `foo` is overwritten and lost. ```json { "value": { "bar": 3.14 } } ``` https://github.com/corn-config/test-suite/blob/0a493cedc8f0039bc9a0aceeb6a3c66ba0024bce/json/key/chaining/start.json Should this be the the case, or should the expected result be an object with both `foo` and `bar`? A decision is required, and the spec needs to be updated either way.
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
corn-config/specification#2
No description provided.