Uses dynamic walking (via the dyn.MapByPattern func) to validate no two resources have the same resource key. The allows us to remove this validation at merge time.
Modifies dyn.Mapping to always return a sorted slice of pairs. This makes traversal functions like dyn.Walk or dyn.MapByPattern deterministic.
Changes
This PR:
dyn.MapByPattern
func) to validate no two resources have the same resource key. The allows us to remove this validation at merge time.dyn.Mapping
to always return a sorted slice of pairs. This makes traversal functions likedyn.Walk
ordyn.MapByPattern
deterministic.Tests
Unit tests. Also manually.