Fix marshalling logic to correctly handle array of aliases #99
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.
tldr
We want to handle the situation where the result of a JS expression returns an array.
The changes
MarshalEntries
to check if the result fromexpr.EvaluateSingleValue
is empty, rather than checking for an errorexpr.EvaluateArray
rather thanexpr.EvaluateSingleValue
(an existing bug from before cel -> js we believe)Some extra context if needed
We want to be able to handle marshalling aliases in the situation where catalog entries have different numbers of aliases. Currently you can set the alias source like:
aliases: ['$.aliases[0]', '$.aliases[1]','$.aliases[2]']
, but this doesn't work in the situation above where the lengths could differ.For example, a jsonnet with:
We want to be able to set the source like:
and have this be handled correctly.