+
+ <?php
+
+ $versions = [];
+ foreach (glob("phars/$package/*.ext.phar*") as $phar) {
+ list($name, $enc) = explode(".ext.phar", basename($phar));
+ $data = new Phar($phar);
+ $meta = $data->getMetadata();
+ if ($meta) {
+ $release = $meta["release"];
+ } else {
+ $release = substr($name, strlen($package)+1);
+ }
+ $versions[$release][$enc] = [$phar, $meta];
+ uksort($versions[$release], function($a, $b) {
+ $al = strlen($a);
+ $bl = strlen($b);
+ if ($al < $bl) return -1;
+ if ($al > $bl) return 1;
+ return 0;
+ });
+ }
+ uksort($versions, "version_compare");
+
+ ?>
+ <?php foreach (array_reverse($versions) as $version => $phars) : ?>