There are two main categories of changes here, and both pertain to variables getting mutated:
- let declarations where the variable is reassigned later
- const declarations of mutable collections that are mutated later
In both of these cases, Flow now wants us to annotate the declaration to cover both the type of the data that's initialized, and also the mutations that later occur.
Depends on D9705
Can we have a const instead of a function that tells if it is Safari? We can avoid having to detect the browser multiple times, as this fact doesn't change through the lifetime of the app.