Add Reducer to the end of reducer arg types to avoid collisions #3889
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.
Description of Changes
This helps with the issue reported in #3811.
Right now we have a type representing the reducer, and a type for the reducer args, and both have the same name. This adds
Reducerto the end of the args type, which is similar to what we are doing for procedure arguments or theRowsuffix for tables.This will still cause some potential problems, since someone could have a type that ends in
Reducer(orRow), but this will fix the majority of issues that are currently breaking people.This also has some changes to get the basic react example to build.
API and ABI breaking changes
This is technically a breaking change if people are using this for type annotations (which doesn't seem too likely), but it should be an easy one for people to fix.
Expected complexity level and risk
Testing
I tested the quickstart.