3 namespace pharext\Task
;
10 * Clone a compressed copy of a phar
12 class PharCompress
implements Task
35 * @param string $file path to the original phar
36 * @param int $encoding Phar::GZ or Phar::BZ2
38 public function __construct($file, $encoding) {
40 $this->package
= new Phar($file);
41 $this->encoding
= $encoding;
45 $this->extension
= ".gz";
48 $this->extension
= ".bz2";
54 * @param bool $verbose
57 public function run($verbose = false) {
58 $phar = $this->package
->compress($this->encoding
);
59 $meta = $phar->getMetadata();
60 if (isset($meta["stub"])) {
62 $phar->setDefaultStub($meta["stub"]);
64 return $this->file
. $this->extension
;