-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Description
Use case
The platforms that Flutter supports introduce new features every year. To support these features, the Flutter tool may need to change the files in an existing project.
Features introduced in Flutter may also require changes to the underlaying project structure.
Because developers may configure project files in ways that we don't see ahead of time, changes to the project files may cause issues that are hard to revert. Even when the files are source controlled, the developer could have unstaged changes.
As a result, changes performed by the tool must ensure that they won't disrupt the developer's workflow.
Proposal
Create a new subcommand: flutter migrate that tracks all the migrations performed to an existing project and provides an option to revert the change.
DevX: If flutter build apk updated some files, the changes can be reverted by using flutter migrate --revert.
There are still more details to figure out:
- What happen if they are multiple migrations?
- Can a migration depend on another migration?
- Can the order of the migrations cause issues?