@weavejester I have discovered a change in behaviour of #ig/ref
between the current stable Duct and Duct beta. I’m not sure if this a bug, or if we were simply abusing some behaviour that should not have worked:
@scottlowe Neither of those is correct! It looks like a bug where I didn't account for refs merged with maps.
Refs and refsets should be treated as atomic values.
@weavejester Okay thanks. The odd thing here (for me) is that the printed config example above that used to work looks wrong when prepped. But at “runtime”, we did get what we expected i.e. a merged hash-map with the value {:baz 1 :corge 3}
.
If that makes sense.
Adding extra keys to a ref shouldn't impact how it works, which I think is what you were seeing. Which way around are the configurations being merged?
It's not clear from your example if the ref is being merged into the map, or vice versa.
I should have also mentioned that each subsequent block of example config is merged-in from include files with the intention that keys are merged at the top level of the config so the final qux
is also top level. So if I understand your question correctly, yes the ref :foo/bar
should be merged into the map :qux
. Apologies if that doesn’t make sense - I’m finding this hard to explain. Perhaps I should send you a zipped-up shell of an app to demonstrate?
@weavejester If you think this should be a bug report, I could do that, and report it properly.
@scottlowe Sure, an example app would be a great help.
And a bug report would be appreciated too.
Okay. Will do :thumbsup: