Be consistent in how we're generating string interpolations #192
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.
Motivation
If we use toSource() on a node that's an interpolation, we usually (unless it would be ambiguous?) get
"stuff $variable more stuff"
But we are careful to always emit interpolations as
"stuff ${variable} more stuff"
When we are checking to see if a message already exists by a name, we compare the messageText. But if it's an interpolation, we were generating it via toSource(), which wouldn't agree. So be consistent in how we're generating it.
Note that this can leave us generating two different messages for the two different forms if there was an existing version that was generated before we started using curly braces. But that can be future work on de-duplication.
Changes
Release Notes
Review
See CONTRIBUTING.md for more details on review types (+1 / QA +1 / +10) and code review process.
Please review:
QA Checklist
Merge Checklist
While we perform many automated checks before auto-merging, some manual checks are needed: