-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Substitution with merged configs is incorrect #110
Comments
Hows this coming? |
Minimal reproducer. It seems to be an issue with
Expected answer: |
I think what is happening: if a key is ConfigValues, when it is resolved to a ConfigTree we do not walk down the linked list of overriden_value and perform resolution and merging if the overriden values are also ConfigTrees
The overriden list |
RFC:
If we are a ConfigTree, merge from the bottom up
|
PR #144 |
Issue 145: backtrack to handle self-references(includes #110). Thank you @aalba6675!
Hi dear maintainers,
with pyhocon 0.3.35 I get unexpected substitution results with merged configs.
I have following configurations:
base.conf
test.conf
test.py:
I executed the test.py with the configs being in the same directory.
Expected result:
Actual result:
Notice that the key 'lost' is missing.
In fact, if I adapt the test.conf like this; the output is like expected.
Notice that the only change was to remove the object merge for key 'derived'.
I did not dig into the code yet, but I think it is related to merging and not the substitution. If I set 'resolve=False' in test.py, the output looks like this:
The key 'lost' is already missing.
I tested this stuff with the JVM implementation com.typesafe.config v1.3.0 which yields the expected results.
Do you have any insights on that?
Many thanks in advance
Greets,
Alexander
The text was updated successfully, but these errors were encountered: