Fix Issue #192 of dynamic context overriding default context #203
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an attempt to fix #192
The issue was that when a dynamic context is set, it overrides all of the default contexts, making it get nested contexts wrong if they are not themselves set dynamically.
What I did was swapping the order of evaluation of
ctx/infer
, making the contexts inferred fromp/Contextual
take precedence over the dynamic context. If you want to override this behaviour and set a dynamic context over thep/Contextual
default, you need to usewith-context-override
instead. It needs to be noted however, that if one does this, all possible nested different context will have to be set withwith-context-override
as well.I don't think this fix is ideal, but is better than the way it is right now. Suggestions are welcome.