Skip to content

Releases: leoafarias/fvm

fvm 4.0.5

19 Dec 21:06
7b05814

Choose a tag to compare

  • feat: migrate install script to v2 with user-local default install (#967)
  • fix: disable auto-install of shell completions for Nix/Home Manager environments (#991)
  • fix: support legacy .fvm/fvm_config.json file loading (#996)
  • fix: improve PATH guidance for CI installs (#999)

See the full changelog for changes in earlier releases.

fvm 4.0.4

05 Dec 21:58
659f062

Choose a tag to compare

  • fix: remove leading newline from fvm dart/flutter output
  • fix: read or write cache with fork version by @huanghui1998hhh

See the full changelog for changes in earlier releases.

fvm 4.0.3

05 Dec 19:25
b23fde8

Choose a tag to compare

  • fix: preserve all project settings on fvm install

See the full changelog for changes in earlier releases.

fvm 4.0.2

04 Dec 20:44
b1f08c2

Choose a tag to compare

  • fix: version detection for Flutter 3.38+ (version file removal)
  • fix: filter hidden directories from cache version listing
  • fix: route conflict in documentation site navigation
  • docs: improve Android Studio/IntelliJ IDE configuration guide

See the full changelog for changes in earlier releases.

fvm 4.0.1

05 Nov 14:48

Choose a tag to compare

  • add: fvm install now runs setup by default
  • add: RISC-V and 32-bit ARM architecture support
  • add: SSH and scp-style git URL support for forks
  • add: Standalone executables for host platform
  • fix: fvm doctor crash when version not pinned
  • fix: Alpine/musl libc detection in install script
  • fix: Version prefix normalization in install script
  • fix: Pre-push PATH hook auto-detects Flutter/Dart
  • fix: Cache version matching logic
  • fix: Uninstall script, git logging, and HTTP error handling
  • fix: Code quality and analysis warnings
  • docs: Git safe directory troubleshooting for Windows
  • docs: PATH configuration for global version
  • refactor: Migrate release tooling to dedicated package

See the full changelog for changes in earlier releases.

fvm 4.0.0

30 Oct 17:44

Choose a tag to compare

  • add: Manage Flutter SDKs from custom or forked repositories
  • add: Automatic Melos integration - FVM automatically manages sdkPath in melos.yaml
  • add: updateMelosSettings configuration option to control Melos integration per project
  • fix: Enhanced environment variable processing logic
  • fix: Better environment variable precedence handling

See the full changelog for changes in earlier releases.

fvm 4.0.0-beta.2

07 Oct 00:25

Choose a tag to compare

fvm 4.0.0-beta.2 Pre-release
Pre-release
  • refactor: Restore simple tag-based release workflow (removes complex GitHub release automation)
  • fix: Version mismatch errors in CI and non-interactive environments
  • fix: Authentication prompts for private repository dependencies
  • fix: Fork installation fallback reliability

See the full changelog for changes in earlier releases.

fvm 4.0.0-beta.1

12 Jun 06:31

Choose a tag to compare

fvm 4.0.0-beta.1 Pre-release
Pre-release

Excited to announce FVM 4.0.0, a major release that brings enterprise-grade features to Flutter version management. This release introduces fork repository support, modular workflow architecture, and enhanced integrations for teams managing complex Flutter environments.

🎉 Highlights

🔀 Fork Repository Support

Manage Flutter SDKs from custom or forked repositories - perfect for enterprise teams with proprietary Flutter modifications.

# Add a fork
fvm fork add mycompany https://github.com/mycompany/flutter.git

# Install from fork
fvm install mycompany/stable
fvm install mycompany/3.19.0

# Use fork version in project
fvm use mycompany/stable

🔗 Melos Integration

First-class monorepo support with automatic sdkPath management in melos.yaml.

🏗️ Modular Workflow Architecture

9 new workflows for better separation of concerns and maintainability.

✨ What's New

Major Features

  • Fork repository management - Complete system for managing custom Flutter distributions
  • fvm fork commands - Add, remove, and list fork repositories
  • Fork version syntax - Install using <fork>/<version> format
  • Melos integration - Automatic monorepo configuration
  • Integration testing - Hidden fvm integration-test command for comprehensive testing

Developer Experience

  • Better error messages - Enhanced stack trace preservation and helpful error output
  • Fork-aware caching - Organized cache structure: ~/.fvm/versions/<fork>/<version>
  • Configuration option - New updateMelosSettings flag for Melos control
  • Runtime deprecation warnings - Clear warnings for unsupported environment variables
  • Legacy environment variable fallback - FVM_HOME works as fallback when FVM_CACHE_PATH is not set
  • Enhanced environment variable processing - Improved logic in AppConfigService for better reliability
  • Better environment variable precedence - Clear fallback behavior and error messaging

💔 Breaking Changes

  • Removed deprecated environment variable - FVM_GIT_CACHE (deprecated since v3.0.0) is no longer supported
    • Use FVM_FLUTTER_URL instead of FVM_GIT_CACHE
    • Note: FVM_HOME is still supported as a fallback for FVM_CACHE_PATH but shows a deprecation warning

📦 Installation

macOS/Linux

# Homebrew (recommended)
brew tap leoafarias/fvm
brew install fvm

# Dart pub
dart pub global activate fvm

# Standalone script
curl -fsSL https://fvm.app/install.sh | bash

Windows

# Chocolatey
choco install fvm

# Dart pub
dart pub global activate fvm

🚀 Migration Guide

From v3.x to v4.0

  1. Update FVM:

    brew upgrade fvm  # or your package manager
  2. Update environment variables (if used):

    • Replace FVM_GIT_CACHE with FVM_FLUTTER_URL (required - FVM_GIT_CACHE no longer works)
    • Consider replacing FVM_HOME with FVM_CACHE_PATH (optional - FVM_HOME still works as fallback)
  3. For enterprise users - Set up your forks:

    fvm fork add company https://github.com/company/flutter.git
    fvm use company/stable

📊 By the Numbers

  • 9 new workflows added
  • 3 new services implemented
  • 4 breaking changes
  • 1 major new feature system (forks)
  • 100% backward compatible with existing projects

🙏 Acknowledgments

This release was made possible by contributions from the Flutter community. Special thanks to everyone who reported issues, submitted PRs, and provided feedback.

📚 Documentation

🐛 Bug Reports

Found an issue? Please report it on our issue tracker.


Full Changelog: 3.2.1...4.0.0
See the full changelog for changes in earlier releases.

fvm 3.2.1

26 Aug 13:17

Choose a tag to compare

  • fix: --fvm-skip-input flag not applying to context
  • add: fvm list now displays the cache path even if no version is installed

See the full changelog for changes in earlier releases.

fvm 3.2.0

25 Aug 21:39

Choose a tag to compare

  • add: support for skipping input requests by @Rexios80. Input requests are skipped when the --fvm-skip-input flag is passed.
  • add: documentation for command rerouting by @humblerookie
  • fix(cosmetics): fvm has one newline too much by @jonasbadstuebner
  • fix: unsupported architecture on arm64 by @MrCyjaneK
  • add: tags for Docker deployment by @CodeRedDev
  • add: Validate if git is installed by @leoafarias
  • add: Disable local mirror on exception by @leoafarias

See the full changelog for changes in earlier releases.