public function setVersion($version)
 {
     $result = strtolower($version);
     if (strtolower($version) === 'latest') {
         $result = $this->versions->getLatestRelease();
     } elseif ($version != 'none') {
         $length = strlen($version);
         $format = is_numeric($version) || preg_match('/^v?\\d(\\.\\d+)?$/im', $version);
         if (substr($version, 0, 1) == 'v') {
             $length--;
         }
         if (($length == 1 || $length == 3) && $format) {
             $result = $this->versions->getLatestRelease($version);
             if ($result == '0.0.0') {
                 $result = $version . ($length == 1 ? '.0.0' : '.0');
             }
         }
     }
     if (!$this->versions->isBranch($result)) {
         $isTag = $this->versions->isTag($result);
         if (!$isTag) {
             $original = $result;
             if (substr($original, 0, 1) == 'v') {
                 $result = substr($original, 1);
             } else {
                 $result = 'v' . $original;
             }
             if (!$this->versions->isTag($result)) {
                 throw new \RuntimeException(sprintf('Failed to find tag or branch "%s". Please refresh the version list first: `joomla versions --refresh`', $original));
             }
         }
     }
     $this->version = $result;
 }
 public function setVersion($version)
 {
     $result = strtolower($version);
     if (strtolower($version) === 'latest') {
         $result = $this->versions->getLatestRelease();
     } elseif ($version != 'none') {
         $length = strlen($version);
         $format = is_numeric($version) || preg_match('/^\\d\\.\\d+$/im', $version);
         if (($length == 1 || $length == 3) && $format) {
             $result = $this->versions->getLatestRelease($version);
             if ($result == '0.0.0') {
                 $result = $version . ($length == 1 ? '.0.0' : '.0');
             }
         }
     }
     $this->version = $result;
 }