array ( 'pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'aliases' => array ( ), 'reference' => 'd0cdcb5d2a4d741a4ba25512e9a9e5168b374729', 'name' => 'rhymix/rhymix', ), 'versions' => array ( 'abraham/twitteroauth' => array ( 'pretty_version' => '2.0.1', 'version' => '2.0.1.0', 'aliases' => array ( ), 'reference' => 'af6d0ba772731d4f83524fccb24281fe6149ef43', ), 'composer/ca-bundle' => array ( 'pretty_version' => '1.2.9', 'version' => '1.2.9.0', 'aliases' => array ( ), 'reference' => '78a0e288fdcebf92aa2318a8d3656168da6ac1a5', ), 'coolsms/php-sdk' => array ( 'pretty_version' => 'v2.0', 'version' => '2.0.0.0', 'aliases' => array ( ), 'reference' => 'ce00fea155169dcf2a3759abd41ad20ff80ca0b1', ), 'defuse/php-encryption' => array ( 'pretty_version' => 'v1.2.1', 'version' => '1.2.1.0', 'aliases' => array ( ), 'reference' => 'b87737b2eec06b13f025cabea847338fa203d1b4', ), 'doctrine/lexer' => array ( 'pretty_version' => '1.0.2', 'version' => '1.0.2.0', 'aliases' => array ( ), 'reference' => '1febd6c3ef84253d7c815bed85fc622ad207a9f8', ), 'egulias/email-validator' => array ( 'pretty_version' => '2.1.25', 'version' => '2.1.25.0', 'aliases' => array ( ), 'reference' => '0dbf5d78455d4d6a41d186da50adc1122ec066f4', ), 'ezyang/htmlpurifier' => array ( 'pretty_version' => 'v4.13.0', 'version' => '4.13.0.0', 'aliases' => array ( ), 'reference' => '08e27c97e4c6ed02f37c5b2b20488046c8d90d75', ), 'guzzlehttp/guzzle' => array ( 'pretty_version' => '6.5.6', 'version' => '6.5.6.0', 'aliases' => array ( ), 'reference' => 'f092dd734083473658de3ee4bef093ed77d2689c', ), 'guzzlehttp/promises' => array ( 'pretty_version' => '1.4.1', 'version' => '1.4.1.0', 'aliases' => array ( ), 'reference' => '8e7d04f1f6450fef59366c399cfad4b9383aa30d', ), 'guzzlehttp/psr7' => array ( 'pretty_version' => '1.8.5', 'version' => '1.8.5.0', 'aliases' => array ( ), 'reference' => '337e3ad8e5716c15f9657bd214d16cc5e69df268', ), 'hautelook/phpass' => array ( 'pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'aliases' => array ( ), 'reference' => 'b2daca28508000d1dd126e93ec472d771626a774', ), 'jbbcode/jbbcode' => array ( 'pretty_version' => 'v1.4.2', 'version' => '1.4.2.0', 'aliases' => array ( ), 'reference' => 'd9a132e7886a11cf997e3ec025a41bdf97899704', ), 'leafo/lessphp' => array ( 'pretty_version' => 'v0.5.0', 'version' => '0.5.0.0', 'aliases' => array ( ), 'reference' => '0f5a7f5545d2bcf4e9fad9a228c8ad89cc9aa283', ), 'league/html-to-markdown' => array ( 'pretty_version' => '4.10.0', 'version' => '4.10.0.0', 'aliases' => array ( ), 'reference' => '0868ae7a552e809e5cd8f93ba022071640408e88', ), 'matthiasmullie/minify' => array ( 'pretty_version' => '1.3.66', 'version' => '1.3.66.0', 'aliases' => array ( ), 'reference' => '45fd3b0f1dfa2c965857c6d4a470bea52adc31a6', ), 'matthiasmullie/path-converter' => array ( 'pretty_version' => '1.1.3', 'version' => '1.1.3.0', 'aliases' => array ( ), 'reference' => 'e7d13b2c7e2f2268e1424aaed02085518afa02d9', ), 'michelf/php-markdown' => array ( 'pretty_version' => '1.9.0', 'version' => '1.9.0.0', 'aliases' => array ( ), 'reference' => 'c83178d49e372ca967d1a8c77ae4e051b3a3c75c', ), 'michelf/php-smartypants' => array ( 'pretty_version' => '1.8.1', 'version' => '1.8.1.0', 'aliases' => array ( ), 'reference' => '47d17c90a4dfd0ccf1f87e25c65e6c8012415aad', ), 'psr/http-message' => array ( 'pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'aliases' => array ( ), 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', ), 'psr/http-message-implementation' => array ( 'provided' => array ( 0 => '1.0', ), ), 'ralouphie/getallheaders' => array ( 'pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'aliases' => array ( ), 'reference' => '120b605dfeb996808c31b6477290a714d356e822', ), 'rhymix/rhymix' => array ( 'pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'aliases' => array ( ), 'reference' => 'd0cdcb5d2a4d741a4ba25512e9a9e5168b374729', ), 'rmccue/requests' => array ( 'pretty_version' => 'v1.8.0', 'version' => '1.8.0.0', 'aliases' => array ( ), 'reference' => 'afbe4790e4def03581c4a0963a1e8aa01f6030f1', ), 'scssphp/scssphp' => array ( 'pretty_version' => 'v1.4.1', 'version' => '1.4.1.0', 'aliases' => array ( ), 'reference' => 'ba86c963b94ec7ebd6e19d90cdab90d89667dbf7', ), 'swiftmailer/swiftmailer' => array ( 'pretty_version' => 'v6.2.7', 'version' => '6.2.7.0', 'aliases' => array ( ), 'reference' => '15f7faf8508e04471f666633addacf54c0ab5933', ), 'symfony/polyfill-iconv' => array ( 'pretty_version' => 'v1.19.0', 'version' => '1.19.0.0', 'aliases' => array ( ), 'reference' => '085241787d52fa6f7a774fd034135fef0cfd5496', ), 'symfony/polyfill-intl-idn' => array ( 'pretty_version' => 'v1.19.0', 'version' => '1.19.0.0', 'aliases' => array ( ), 'reference' => '4ad5115c0f5d5172a9fe8147675ec6de266d8826', ), 'symfony/polyfill-intl-normalizer' => array ( 'pretty_version' => 'v1.19.0', 'version' => '1.19.0.0', 'aliases' => array ( ), 'reference' => '8db0ae7936b42feb370840cf24de1a144fb0ef27', ), 'symfony/polyfill-mbstring' => array ( 'pretty_version' => 'v1.19.0', 'version' => '1.19.0.0', 'aliases' => array ( ), 'reference' => 'b5f7b932ee6fa802fc792eabd77c4c88084517ce', ), 'symfony/polyfill-php70' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => '5f03a781d984aae42cebd18e7912fa80f02ee644', ), 'symfony/polyfill-php72' => array ( 'pretty_version' => 'v1.19.0', 'version' => '1.19.0.0', 'aliases' => array ( ), 'reference' => 'beecef6b463b06954638f02378f52496cb84bacc', ), 'true/punycode' => array ( 'pretty_version' => 'v2.1.1', 'version' => '2.1.1.0', 'aliases' => array ( ), 'reference' => 'a4d0c11a36dd7f4e7cd7096076cab6d3378a071e', ), ), ); public static function getInstalledPackages() { return array_keys(self::$installed['versions']); } public static function isInstalled($packageName) { return isset(self::$installed['versions'][$packageName]); } public static function satisfies(VersionParser $parser, $packageName, $constraint) { $constraint = $parser->parseConstraints($constraint); $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); return $provided->matches($constraint); } public static function getVersionRanges($packageName) { if (!isset(self::$installed['versions'][$packageName])) { throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } $ranges = array(); if (isset(self::$installed['versions'][$packageName]['pretty_version'])) { $ranges[] = self::$installed['versions'][$packageName]['pretty_version']; } if (array_key_exists('aliases', self::$installed['versions'][$packageName])) { $ranges = array_merge($ranges, self::$installed['versions'][$packageName]['aliases']); } if (array_key_exists('replaced', self::$installed['versions'][$packageName])) { $ranges = array_merge($ranges, self::$installed['versions'][$packageName]['replaced']); } if (array_key_exists('provided', self::$installed['versions'][$packageName])) { $ranges = array_merge($ranges, self::$installed['versions'][$packageName]['provided']); } return implode(' || ', $ranges); } public static function getVersion($packageName) { if (!isset(self::$installed['versions'][$packageName])) { throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } if (!isset(self::$installed['versions'][$packageName]['version'])) { return null; } return self::$installed['versions'][$packageName]['version']; } public static function getPrettyVersion($packageName) { if (!isset(self::$installed['versions'][$packageName])) { throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } if (!isset(self::$installed['versions'][$packageName]['pretty_version'])) { return null; } return self::$installed['versions'][$packageName]['pretty_version']; } public static function getReference($packageName) { if (!isset(self::$installed['versions'][$packageName])) { throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } if (!isset(self::$installed['versions'][$packageName]['reference'])) { return null; } return self::$installed['versions'][$packageName]['reference']; } public static function getRootPackage() { return self::$installed['root']; } public static function getRawData() { return self::$installed; } public static function reload($data) { self::$installed = $data; } }