array ( 'pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'aliases' => array ( ), 'reference' => 'bb9a56bcac19618e0ae14cef214c2b0c2d3b4441', '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.8', 'version' => '1.2.8.0', 'aliases' => array ( ), 'reference' => '8a7ecad675253e4654ea05505233285377405215', ), '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.2.1', 'version' => '1.2.1.0', 'aliases' => array ( ), 'reference' => 'e864bbf5904cb8f5bb334f99209b48018522f042', ), '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.5', 'version' => '6.5.5.0', 'aliases' => array ( ), 'reference' => '9d4290de1cfd701f38099ef7e183b64b4b7b0c5e', ), 'guzzlehttp/promises' => array ( 'pretty_version' => '1.4.0', 'version' => '1.4.0.0', 'aliases' => array ( ), 'reference' => '60d379c243457e073cff02bc323a2a86cb355631', ), 'guzzlehttp/psr7' => array ( 'pretty_version' => '1.7.0', 'version' => '1.7.0.0', 'aliases' => array ( ), 'reference' => '53330f47520498c0ae1f61f7e2c90f55690c06a3', ), '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.65', 'version' => '1.3.65.0', 'aliases' => array ( ), 'reference' => '227f19062451c55a797e0cc667ef983834e6580c', ), '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' => 'bb9a56bcac19618e0ae14cef214c2b0c2d3b4441', ), 'rmccue/requests' => array ( 'pretty_version' => 'v1.7.0', 'version' => '1.7.0.0', 'aliases' => array ( ), 'reference' => '87932f52ffad70504d93f04f15690cf16a089546', ), 'scssphp/scssphp' => array ( 'pretty_version' => 'v1.4.1', 'version' => '1.4.1.0', 'aliases' => array ( ), 'reference' => 'ba86c963b94ec7ebd6e19d90cdab90d89667dbf7', ), 'swiftmailer/swiftmailer' => array ( 'pretty_version' => 'v6.2.4', 'version' => '6.2.4.0', 'aliases' => array ( ), 'reference' => '56f0ab23f54c4ccbb0d5dcc67ff8552e0c98d59e', ), 'symfony/polyfill-iconv' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => 'c536646fdb4f29104dd26effc2fdcb9a5b085024', ), 'symfony/polyfill-intl-idn' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => '3b75acd829741c768bc8b1f84eb33265e7cc5117', ), 'symfony/polyfill-intl-normalizer' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => '727d1096295d807c309fb01a851577302394c897', ), 'symfony/polyfill-mbstring' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => '39d483bdf39be819deabf04ec872eb0b2410b531', ), 'symfony/polyfill-php72' => array ( 'pretty_version' => 'v1.20.0', 'version' => '1.20.0.0', 'aliases' => array ( ), 'reference' => 'cede45fcdfabdd6043b3592e83678e42ec69e930', ), '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; } }