FVM manages Flutter SDK versions per project. Switch between Flutter versions instantly without reinstalling, making it easy to test new releases and maintain consistent builds across your team.
Why FVM?
Need for simultaneous use of multiple Flutter SDKs.
Dart SDK requirements: Day-to-day development now targets the
repository SDK constraint (>=3.6.0 <4.0.0). Release automation lives under
tool/release_tool/ and requires Dart SDK >=3.8.0. CI pins this higher tool
chain via the RELEASE_DART_SDK environment variable (currently 3.9.0) so
it matches the versions packaged for Homebrew and other installers.
If you run release tasks locally, switch to a Dart SDK 3.8.0 or newer
before executing commands from tool/release_tool/.
Emergency Releases
For hotfixes or emergency releases:
Update version manually in pubspec.yaml
Use individual platform workflows via manual dispatch:
deploy_homebrew.yml for Homebrew updates
deploy_docker.yml for Docker deployment
Individual platform deployments as needed
For complete emergency deployment, create a GitHub release as normal.