fvm 3.1.3 copy "fvm: ^3.1.3" to clipboard
fvm: ^3.1.3 copied to clipboard

A simple cli to manage Flutter SDK versions per project. Support channels, releases, and local cache for fast switching between versions.

542
likes
130/ 140
pub points
91%
popularity

We analyzed this package 3 days ago, and awarded it 130 pub points (of a possible 140):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

278 out of 708 API elements (39.3 %) have documentation comments.

Some symbols that are missing documentation: fvm, fvm.AppConfig, fvm.AppConfig.empty, fvm.AppConfig.fromJson, fvm.AppConfig.fromMap.

10/10 points: Package has an example

OK
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 1 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Windows

These platforms are not supported:

Package does not support platform `Android`.

Because:

  • package:fvm/fvm.dart that imports:
  • package:fvm/src/services/releases_service/models/version_model.dart that imports:
  • package:fvm/src/services/releases_service/releases_client.dart that imports:
  • package:fvm/src/services/logger_service.dart that imports:
  • package:fvm/src/services/base_service.dart that imports:
  • package:fvm/src/utils/context.dart that imports:
  • package:fvm/src/services/flutter_service.dart that imports:
  • package:fvm/src/utils/parsers/git_clone_update_printer.dart that imports:
  • package:mason_logger/mason_logger.dart that imports:
  • package:mason_logger/src/mason_logger.dart that imports:
  • package:mason_logger/src/terminal_overrides.dart that imports:
  • package:mason_logger/src/ffi/terminal.dart that imports:
  • package:mason_logger/src/ffi/windows_terminal.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:fvm/fvm.dart that imports:
  • package:fvm/src/services/releases_service/models/version_model.dart that imports:
  • package:fvm/src/services/releases_service/releases_client.dart that imports:
  • package:fvm/src/services/logger_service.dart that imports:
  • package:fvm/src/services/base_service.dart that imports:
  • package:fvm/src/utils/context.dart that imports:
  • package:fvm/src/services/flutter_service.dart that imports:
  • package:fvm/src/utils/parsers/git_clone_update_printer.dart that imports:
  • package:mason_logger/mason_logger.dart that imports:
  • package:mason_logger/src/mason_logger.dart that imports:
  • package:mason_logger/src/terminal_overrides.dart that imports:
  • package:mason_logger/src/ffi/terminal.dart that imports:
  • package:mason_logger/src/ffi/windows_terminal.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `Linux`.

Because:

  • package:fvm/fvm.dart that imports:
  • package:fvm/src/services/releases_service/models/version_model.dart that imports:
  • package:fvm/src/services/releases_service/releases_client.dart that imports:
  • package:fvm/src/services/logger_service.dart that imports:
  • package:fvm/src/services/base_service.dart that imports:
  • package:fvm/src/utils/context.dart that imports:
  • package:fvm/src/services/flutter_service.dart that imports:
  • package:fvm/src/utils/parsers/git_clone_update_printer.dart that imports:
  • package:mason_logger/mason_logger.dart that imports:
  • package:mason_logger/src/mason_logger.dart that imports:
  • package:mason_logger/src/terminal_overrides.dart that imports:
  • package:mason_logger/src/ffi/terminal.dart that imports:
  • package:mason_logger/src/ffi/windows_terminal.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `macOS`.

Because:

  • package:fvm/fvm.dart that imports:
  • package:fvm/src/services/releases_service/models/version_model.dart that imports:
  • package:fvm/src/services/releases_service/releases_client.dart that imports:
  • package:fvm/src/services/logger_service.dart that imports:
  • package:fvm/src/services/base_service.dart that imports:
  • package:fvm/src/utils/context.dart that imports:
  • package:fvm/src/services/flutter_service.dart that imports:
  • package:fvm/src/utils/parsers/git_clone_update_printer.dart that imports:
  • package:mason_logger/mason_logger.dart that imports:
  • package:mason_logger/src/mason_logger.dart that imports:
  • package:mason_logger/src/terminal_overrides.dart that imports:
  • package:mason_logger/src/ffi/terminal.dart that imports:
  • package:mason_logger/src/ffi/windows_terminal.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `Web`.

Because:

  • package:fvm/fvm.dart that imports:
  • package:fvm/src/services/releases_service/models/version_model.dart that imports:
  • package:fvm/src/services/releases_service/releases_client.dart that imports:
  • package:fvm/src/services/logger_service.dart that imports:
  • package:fvm/src/services/base_service.dart that imports:
  • package:fvm/src/utils/context.dart that imports:
  • package:fvm/src/services/flutter_service.dart that imports:
  • package:fvm/src/utils/parsers/git_clone_update_printer.dart that imports:
  • package:mason_logger/mason_logger.dart that imports:
  • package:mason_logger/src/mason_logger.dart that imports:
  • package:mason_logger/src/terminal_overrides.dart that imports:
  • package:mason_logger/src/ffi/terminal.dart that imports:
  • package:mason_logger/src/ffi/windows_terminal.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
partial
Pass static analysis
40 / 50trigger folding of the section

40/50 points: code has no errors, warnings, lints, or formatting issues

Found 16 issues. Showing the first 2:

INFO: 'isValueEqual' is deprecated and shouldn't be used. Upgrade to dart_mappable_builder >= 4.2.2.

lib/src/api/models/json_response.mapper.dart:133:18

    ╷
133 │                 .isValueEqual(this as GetCacheVersionsResponse, other));
    │                  ^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/api/models/json_response.mapper.dart

INFO: 'isValueEqual' is deprecated and shouldn't be used. Upgrade to dart_mappable_builder >= 4.2.2.

lib/src/api/models/json_response.mapper.dart:272:18

    ╷
272 │                 .isValueEqual(this as GetReleasesResponse, other));
    │                  ^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/api/models/json_response.mapper.dart

OK
Support up-to-date dependencies
20 / 20trigger folding of the section

10/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
args ^2.4.2 2.5.0 2.5.0
cli_completion ^0.5.0 0.5.0 0.5.0
dart_console ^1.2.0 1.2.0 4.0.2
dart_mappable ^4.2.0 4.2.2 4.2.2
date_format ^2.0.7 2.0.7 2.0.7
git ^2.2.1 2.2.1 2.2.1
interact ^2.2.0 2.2.0 2.2.0
io ^1.0.4 1.0.4 1.0.4
jsonc ^0.0.3 0.0.3 0.0.3
mason_logger ^0.2.9 0.2.15 0.2.15
meta ^1.10.0 1.14.0 1.14.0
path ^1.8.3 1.9.0 1.9.0
pub_semver ^2.1.4 2.1.4 2.1.4
pub_updater ^0.4.0 0.4.0 0.4.0
pubspec ^2.3.0 2.3.0 2.3.0
scope ^4.1.0 4.1.0 4.1.0
stack_trace ^1.11.1 1.11.1 1.11.1
tint ^2.0.1 2.0.1 2.0.1
yaml ^3.1.2 3.1.2 3.1.2
Transitive dependencies
Package Constraint Compatible Latest
async - 2.11.0 2.11.0
boolean_selector - 2.1.1 2.1.1
characters - 1.3.0 1.3.0
clock - 1.1.1 1.1.1
collection - 1.18.0 1.18.0
equatable - 2.0.5 2.0.5
ffi - 2.1.2 2.1.2
file - 7.0.0 7.0.0
http - 1.2.1 1.2.1
http_parser - 4.0.2 4.0.2
intl - 0.18.1 0.19.0
json_annotation - 4.8.1 4.8.1
matcher - 0.12.16+1 0.12.16+1
platform - 3.1.4 3.1.4
process - 5.0.2 5.0.2
quiver - 3.2.1 3.2.1
source_span - 1.10.0 1.10.0
stream_channel - 2.1.2 2.1.2
string_scanner - 1.2.0 1.2.0
term_glyph - 1.2.1 1.2.1
test_api - 0.7.1 0.7.1
type_plus - 2.1.1 2.1.1
typed_data - 1.3.2 1.3.2
uri - 1.0.0 1.0.0
web - 0.5.1 0.5.1
win32 - 5.4.0 5.4.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^1.2.0` on dart_console does not support the stable version `4.0.0`, that was published 11 days ago.

When dart_console is 30 days old, this package will no longer be awarded points in this category.

Try running dart pub upgrade --major-versions dart_console to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

Analyzed with Pana 0.22.3, Dart 3.3.3.

Check the analysis log for details.

542
likes
130
pub points
91%
popularity

Publisher

verified publisherleoafarias.com

A simple cli to manage Flutter SDK versions per project. Support channels, releases, and local cache for fast switching between versions.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

args, cli_completion, dart_console, dart_mappable, date_format, git, interact, io, jsonc, mason_logger, meta, path, pub_semver, pub_updater, pubspec, scope, stack_trace, tint, yaml

More

Packages that depend on fvm