eval: improve unknown/secret for complex literals #170
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.
Do not treat object and array literals that include unknown or secret
elements as unknown or secret themselves. Instead, leave it up to the
consumer of the literal to handle unknownness and secretness
appropriately (i.e. by combining the unknownness and secretness of each
leaf value the consumer observes).
For example, the following object definition no is no longer unknown
during check or secret during eval:
Instead, it is partially-known during check:
And partially-secret during eval:
But when passed to
fn::toJSON
, the result of the call would be unknownin check or secret in eval b/c of the nested unknown/secret.
Fixes #164.
Fixes https://github.com/pulumi/pulumi-service/issues/16162.