checkOrActivateHostedPackage method

Future<void> checkOrActivateHostedPackage(
  1. PubGlobalHostedPackageInstall package, {
  2. bool? verbose,
})

Check package version

Implementation

Future<void> checkOrActivateHostedPackage(
  PubGlobalHostedPackageInstall package, {
  bool? verbose,
}) async {
  var name = package.name;
  var existing = await getActivatedPackage(name, verbose: verbose);
  var versionBoundaries = package.versionBoundaries;
  if (existing != null) {
    if (versionBoundaries != null) {
      var version = existing.version;
      if (version != null) {
        if (versionBoundaries.matches(version)) {
          return;
        }
      }
    } else {
      return;
    }
  }
  await activateGlobalPackage(package, verbose: verbose);
}