dvm 0.0.0-alpha

  • README.md
  • Installing
  • Versions
  • 47


Dart Version Manager: Manage multiple active Dart versions.

WORK IN PROGRESS: See "progress" below, not yet a stable package!

Loosely based on @cbracken's original dvm shell script. Thanks Chris!


$ pub global activate dvm


$ dvm

Manage multiple active Dart versions.

Usage: dvm <command> [arguments]

Global options:
-h, --help       Print this usage information.
-v, --version    Print out the latest released version of dvm.
-p, --path       Installation directory for the Dart SDK.
                 (defaults to "/Users/matanl/.dvm")

Available commands:
  help      Display help information for dvm.
  install   Download and install a <version/channel>.
  switch    Switches the `current` directory to <version/channel>.


This package is a work in progress, and pull requests are welcome!

  • [ ] Use SHA256 to validate the download.
  • [ ] Support installing from a local path.
  • [ ] Configure whether to keep archives or auto-unzip.
  • [ ] Use system installed unzip if available.

Why a Dart package and not X?

Dart is already a cross-platform language, and binaries can be easily installed using pub global activate. I'm also hoping that being in Dart makes it more likely to get contributions from other Dart users!

One potential issue that was pointed out is the possibility of using dvm to switch to a version of the SDK that in turn, breaks dvm. That's a valid concern, so when releasing dvm it will ship with its own version of the Dart VM, similar to dart-sass.


  • Initial pre-release.

1. Depend on it

Add this to your package's pubspec.yaml file:

  dvm: "^0.0.0-alpha"

2. Install it

You can install packages from the command line:

with pub:

$ pub get

with Flutter:

$ flutter packages get

Alternatively, your editor might support pub get or packages get. Check the docs for your editor to learn more.

Version Uploaded Documentation Archive
0.0.0-alpha May 27, 2017 Go to the documentation of dvm 0.0.0-alpha Download dvm 0.0.0-alpha archive


This feature is new.
We welcome feedback.
More details: scoring.

We analyzed this package, and provided a score, details, and suggestions below.

  • tool failures on Feb 15, 2018
  • Dart: 2.0.0-dev.20.0
  • pana: 0.10.1


Describes how popular the package is relative to other packages. [more]
0 / 100
Code health derived from static analysis. [more]
96 / 100
Reflects how tidy and up-to-date the package is. [more]
93 / 100
Overall score:
Weighted score of the above. [more]


Detected platforms: Flutter, web, other

No platform restriction found in libraries.


  • Fix lib/src/executable.dart.

    Strong-mode analysis of lib/src/executable.dart failed with the following error:

    line: 83 col: 9
    super call must be last in an initializer list (see https://goo.gl/EY6hDP): 'super('dvm', 'Manage multiple active Dart versions.')'.

  • Fix issues reported by dartanalyzer.

    dartanalyzer reported 1 error(s) and 0 warning(s).

  • Package is pre-release.

    Pre-release versions should be used with caution, their API may change in breaking ways.

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use dvm.dart.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.22.0 <2.0.0
archive ^1.0.20 1.0.33
args ^0.13.7 0.13.7 1.3.0
func ^1.0.0 1.0.0
logging ^0.11.0 0.11.3+1
meta ^1.0.5 1.1.2
path ^1.0.0 1.5.1
pub_semver ^1.3.2 1.3.2
stack_trace ^1.7.0 1.9.2
stream_transform ^0.0.4 0.0.10
Transitive dependencies
charcode 1.1.1
collection 1.14.5
convert 2.0.1
crypto 2.0.2+1
typed_data 1.1.5