Generically compute dynamic defaults for Field
s (Cherry-pick of #16206)
#16219
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.
As discussed on #16175, we don't currently consume the "dynamic" defaults of field values for the purposes of
parametrize
. That is at least partially because there is no generic way to do so: aField
has no way to declare a dynamic default currently, becauseField
s cannot declare a dependency@rule_helper
to compute their value (...yet? see #12934 (comment)).This change adds a mechanism for generically declaring the default value of a
Field
. This is definitely not the most ergonomic API: over the next few versions, many dynamicField
defaults will hopefully move to__defaults__
. And #12934 (comment) will hopefully allow for significantly cleaning up those that remain.Fixes #16175.