Return to package.xml CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / phar |
1.1 ! misho 1: <?xml version="1.0" encoding="UTF-8"?> ! 2: <package packagerversion="1.8.2" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd"> ! 3: <name>phar</name> ! 4: <channel>pecl.php.net</channel> ! 5: <summary>allows running of complete applications out of .phar files (like Java .jar files)</summary> ! 6: <description>This is the extension version of PEAR's PHP_Archive package. Support for ! 7: zlib, bz2 and crc32 is achieved without any dependency other than the external ! 8: zlib or bz2 extension. ! 9: ! 10: .phar files can be read using the phar stream, or with the Phar class. If the SPL extension ! 11: is available, a Phar object can be used as an array to iterate over a phar's contents ! 12: or to read files directly from the phar. ! 13: ! 14: Phar supports tar and zip file formats as well as the native phar file format, and can also be ! 15: used to create data-only tar and zip archives with the PharData class, even if ! 16: write access is disabled by the phar.readonly ini variable. ! 17: ! 18: Executable phar archives can be created using the streams API or with the Phar class, if ! 19: the phar.readonly ini variable is set to false. ! 20: ! 21: Full support for MD5 and SHA1 signatures is possible. Signatures can be required ! 22: if the ini variable phar.require_hash is set to true. When PECL extension hash is ! 23: available then SHA-256 and SHA-512 signatures are supported as well. ! 24: ! 25: Phar is APC-compatible, the latest APC will cache files within a phar archive, resulting in ! 26: a 6x speedup measured running phpMyAdmin as a phar archive.</description> ! 27: <lead> ! 28: <name>Greg Beaver</name> ! 29: <user>cellog</user> ! 30: <email>cellog@php.net</email> ! 31: <active>yes</active> ! 32: </lead> ! 33: <lead> ! 34: <name>Marcus Boerger</name> ! 35: <user>helly</user> ! 36: <email>helly@php.net</email> ! 37: <active>yes</active> ! 38: </lead> ! 39: <developer> ! 40: <name>Steph Fox</name> ! 41: <user>sfox</user> ! 42: <email>sfox@php.net</email> ! 43: <active>yes</active> ! 44: </developer> ! 45: <date>2009-07-26</date> ! 46: <time>15:41:33</time> ! 47: <version> ! 48: <release>2.0.0</release> ! 49: <api>1.1.1</api> ! 50: </version> ! 51: <stability> ! 52: <release>stable</release> ! 53: <api>stable</api> ! 54: </stability> ! 55: <license uri="http://www.php.net/license">PHP License</license> ! 56: <notes> ! 57: BC BREAKING RELEASE ! 58: BC breaks: ! 59: * Phar object Compression API is rewritten. Use Phar::compress() and decompress(), ! 60: Phar::compressFiles()/decompressFiles() and PharFileInfo->compress()/decompress(). ! 61: * phar.extract_list and Phar::getExtractList() are removed ! 62: ! 63: Major feature functionality release ! 64: * phar.cache_list allows web-based phar applications to run at equal or faster than ! 65: their on-disk equivalent [Greg] ! 66: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 67: * add support for tar-based and zip-based phar archives [Greg] ! 68: * add support for OpenSSL-based true signatures [Greg] ! 69: * add support for signatures to tar-based phar archives [Greg] ! 70: * add Phar::isFileFormat() [Greg] ! 71: * add Phar::convertToExecutable(), Phar::convertToData() [Greg] ! 72: * add Phar::compress() [Greg] ! 73: * rename Phar::compressAllFiles() to compressFiles(), uncompressAllFiles() to ! 74: decompressFiles() [Greg] ! 75: * conversion to compressed or to other file formats automatically copies the archive ! 76: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 77: * add Phar::webPhar() for running a web-based application unmodified ! 78: directly from a phar archive [Greg] ! 79: * file functions (fopen-based and stat-based) can be instructed to only look for ! 80: relative paths within a phar via Phar::interceptFileFuncs() ! 81: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 82: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 83: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 84: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 85: * add option to compress the entire phar file for phar/tar file format [Greg] ! 86: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 87: * implement Phar::copy(string $from, string $to) [Greg] ! 88: * implement Phar::running(), returns path or URL to currently executed phar ! 89: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 90: * implement Phar::buildFromDirectory(string $base_directory[, string $regex]) [Steph] ! 91: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 92: * add Phar::delete() [Greg] ! 93: * implement Phar::unlinkArchive() [Greg] ! 94: ! 95: Security addition ! 96: * aliases are validated so that they contain no directory separators as intended ! 97: * on conversion to other formats, user-supplied aliases are validated ! 98: ! 99: Changes since 2.0.0RC2: ! 100: fixed PHP Bug #49021: phar tar signature algorithm reports as Unknown (0) in ! 101: getSignature() call ! 102: fixed PHP Bug #49020: phar misinterprets ustar long filename standard ! 103: fixed PHP Bug #49018: phar tar stores long filenames with prefix/name reversed ! 104: fixed PHP Bug #48791: open office files always reported as corrupted ! 105: fixed PHP Bug #48783: make install will fail saying phar file exists ! 106: fixed PHP Bug #48740: PHAR install fails when INSTALL_ROOT is not the final install location ! 107: fixed PHP Bug #48681: openssl signature verification for tar archives broken ! 108: fixed PHP Bug #48377: error message unclear on converting phar with existing file ! 109: fixed isset() on sub-directories (isset("blah") if file "blah/foo.php" exists) ! 110: ! 111: make phar work in PHP 6 ! 112: Changes since 2.0.0RC1: ! 113: security vulnerability in handling of long tar filenames fixed ! 114: fixed PECL Bug #14646: phar error message unclear with php stream wrappers ! 115: fixed PECL Bug #16338: php_stream_copy_to_stream{,_ex}() ! 116: fixed PHP Bug #48257: PharData throws an exception with non-phar tar ! 117: fixed PHP Bug #47085: rename() returns true even if the file in PHAR does not exist ! 118: fixed PHP Bug #46032: PharData::__construct() - wrong memory read ! 119: fixed PHP Bug #46060: Phar::addEmptyDir() breaks ! 120: fixed PHP Bug #45907: undefined reference to 'PHP_SHA512Init' ! 121: fixed PHP Bug #45726: PHP_Archive / Archive.php missing ! 122: Changes since 2.0.0a2: many bugfixes, removal of phar.extract_list, compression API refactored, ! 123: conversion API refactored ! 124: Changes since 2.0.0b1: addition of phar.cache_list, many performance improvements and bugfixes ! 125: implement OpenSSL asynchronous true package signing ! 126: add support for package signing to tar-based archives ! 127: require PHP 5.2.1+ ! 128: </notes> ! 129: <contents> ! 130: <dir baseinstalldir="/" name="/"> ! 131: <dir name="phar"> ! 132: <file name="clicommand.inc" role="src" /> ! 133: <file name="directorygraphiterator.inc" role="src" /> ! 134: <file name="directorytreeiterator.inc" role="src" /> ! 135: <file name="invertedregexiterator.inc" role="src" /> ! 136: <file name="phar.inc" role="src" /> ! 137: <file name="phar.php" role="src" /> ! 138: <file name="pharcommand.inc" role="src" /> ! 139: </dir> <!-- /phar --> ! 140: <dir name="tests"> ! 141: <dir name="cache_list"> ! 142: <dir name="files"> ! 143: <file name="blog.phar" role="test" /> ! 144: <file name="blog.phar.inc" role="test" /> ! 145: <file name="config.xml" role="test" /> ! 146: <file name="extracted.inc" role="test" /> ! 147: <file name="frontcontroller.phar" role="test" /> ! 148: <file name="frontcontroller.phar.inc" role="test" /> ! 149: <file name="frontcontroller2.phar" role="test" /> ! 150: <file name="frontcontroller2.phar.inc" role="test" /> ! 151: <file name="frontcontroller3.phar" role="test" /> ! 152: <file name="frontcontroller3.phar.inc" role="test" /> ! 153: <file name="frontcontroller4.phar" role="test" /> ! 154: <file name="frontcontroller4.phar.inc" role="test" /> ! 155: <file name="frontcontroller5.phar" role="test" /> ! 156: <file name="frontcontroller5.phar.inc" role="test" /> ! 157: <file name="frontcontroller6.phar" role="test" /> ! 158: <file name="frontcontroller6.phar.inc" role="test" /> ! 159: <file name="frontcontroller7.phar" role="test" /> ! 160: <file name="frontcontroller7.phar.inc" role="test" /> ! 161: <file name="frontcontroller8.phar" role="test" /> ! 162: <file name="frontcontroller8.phar.inc" role="test" /> ! 163: <file name="frontcontroller9.phar" role="test" /> ! 164: <file name="frontcontroller9.phar.inc" role="test" /> ! 165: <file name="frontcontroller10.phar" role="test" /> ! 166: <file name="frontcontroller10.phar.inc" role="test" /> ! 167: <file name="frontcontroller11.phar" role="test" /> ! 168: <file name="frontcontroller11.phar.inc" role="test" /> ! 169: <file name="frontcontroller12.phar" role="test" /> ! 170: <file name="frontcontroller12.phar.inc" role="test" /> ! 171: <file name="frontcontroller13.phar" role="test" /> ! 172: <file name="frontcontroller13.phar.inc" role="test" /> ! 173: <file name="frontcontroller14.phar" role="test" /> ! 174: <file name="frontcontroller14.phar.inc" role="test" /> ! 175: <file name="frontcontroller16.phar" role="test" /> ! 176: <file name="frontcontroller16.phar.inc" role="test" /> ! 177: <file name="frontcontroller17.phar" role="test" /> ! 178: <file name="frontcontroller17.phar.inc" role="test" /> ! 179: <file name="frontcontroller18.phar" role="test" /> ! 180: <file name="frontcontroller18.phar.inc" role="test" /> ! 181: <file name="frontcontroller19.phar" role="test" /> ! 182: <file name="frontcontroller19.phar.inc" role="test" /> ! 183: <file name="md5.phar" role="test" /> ! 184: <file name="nophar.phar" role="test" /> ! 185: <file name="nophar.phar.inc" role="test" /> ! 186: <file name="openssl.phar" role="test" /> ! 187: <file name="openssl.phar.pubkey" role="test" /> ! 188: <file name="phar_oo_test.inc" role="test" /> ! 189: <file name="phar_test.inc" role="test" /> ! 190: <file name="private.pem" role="test" /> ! 191: <file name="sha1.phar" role="test" /> ! 192: <file name="sha256.phar" role="test" /> ! 193: <file name="sha512.phar" role="test" /> ! 194: <file name="write.phar" role="test" /> ! 195: <file name="write.phar.inc" role="test" /> ! 196: <file name="write2.phar" role="test" /> ! 197: <file name="write2.phar.inc" role="test" /> ! 198: <file name="write3.phar" role="test" /> ! 199: <file name="write3.phar.inc" role="test" /> ! 200: <file name="write4.phar" role="test" /> ! 201: <file name="write4.phar.inc" role="test" /> ! 202: <file name="write5.phar" role="test" /> ! 203: <file name="write5.phar.inc" role="test" /> ! 204: <file name="write6.phar" role="test" /> ! 205: <file name="write6.phar.inc" role="test" /> ! 206: <file name="write7.phar" role="test" /> ! 207: <file name="write7.phar.inc" role="test" /> ! 208: <file name="write8.phar" role="test" /> ! 209: <file name="write8.phar.inc" role="test" /> ! 210: <file name="write9.phar" role="test" /> ! 211: <file name="write9.phar.inc" role="test" /> ! 212: <file name="write10.phar" role="test" /> ! 213: <file name="write10.phar.inc" role="test" /> ! 214: <file name="write11.phar" role="test" /> ! 215: <file name="write11.phar.inc" role="test" /> ! 216: <file name="write12.phar" role="test" /> ! 217: <file name="write12.phar.inc" role="test" /> ! 218: <file name="write13.phar" role="test" /> ! 219: <file name="write13.phar.inc" role="test" /> ! 220: <file name="write14.phar" role="test" /> ! 221: <file name="write14.phar.inc" role="test" /> ! 222: <file name="write15.phar" role="test" /> ! 223: <file name="write15.phar.inc" role="test" /> ! 224: <file name="write16.phar" role="test" /> ! 225: <file name="write16.phar.inc" role="test" /> ! 226: <file name="write17.phar" role="test" /> ! 227: <file name="write17.phar.inc" role="test" /> ! 228: <file name="write18.phar" role="test" /> ! 229: <file name="write18.phar.inc" role="test" /> ! 230: <file name="write19.phar" role="test" /> ! 231: <file name="write19.phar.inc" role="test" /> ! 232: <file name="write20.phar" role="test" /> ! 233: <file name="write20.phar.inc" role="test" /> ! 234: <file name="write21.phar" role="test" /> ! 235: <file name="write21.phar.inc" role="test" /> ! 236: <file name="write22.phar" role="test" /> ! 237: <file name="write22.phar.inc" role="test" /> ! 238: <file name="write23.phar" role="test" /> ! 239: <file name="write23.phar.inc" role="test" /> ! 240: <file name="write24.phar" role="test" /> ! 241: <file name="write24.phar.inc" role="test" /> ! 242: <file name="write25.phar" role="test" /> ! 243: <file name="write25.phar.inc" role="test" /> ! 244: <file name="zfapp.tgz" role="test" /> ! 245: </dir> <!-- /tests/cache_list/files --> ! 246: <file name="copyonwrite1.phar.phpt" role="test" /> ! 247: <file name="copyonwrite2.phar.phpt" role="test" /> ! 248: <file name="copyonwrite3.phar.phpt" role="test" /> ! 249: <file name="copyonwrite4.phar.phpt" role="test" /> ! 250: <file name="copyonwrite4a.phpt" role="test" /> ! 251: <file name="copyonwrite5.phar.phpt" role="test" /> ! 252: <file name="copyonwrite6.phar.phpt" role="test" /> ! 253: <file name="copyonwrite7.phar.phpt" role="test" /> ! 254: <file name="copyonwrite8.phar.phpt" role="test" /> ! 255: <file name="copyonwrite9.phar.phpt" role="test" /> ! 256: <file name="copyonwrite10.phar.phpt" role="test" /> ! 257: <file name="copyonwrite11.phar.phpt" role="test" /> ! 258: <file name="copyonwrite12.phar.phpt" role="test" /> ! 259: <file name="copyonwrite13.phar.phpt" role="test" /> ! 260: <file name="copyonwrite14.phar.phpt" role="test" /> ! 261: <file name="copyonwrite15.phar.phpt" role="test" /> ! 262: <file name="copyonwrite16.phar.phpt" role="test" /> ! 263: <file name="copyonwrite17.phar.phpt" role="test" /> ! 264: <file name="copyonwrite18.phar.phpt" role="test" /> ! 265: <file name="copyonwrite19.phar.phpt" role="test" /> ! 266: <file name="copyonwrite20.phar.phpt" role="test" /> ! 267: <file name="copyonwrite21.phar.phpt" role="test" /> ! 268: <file name="copyonwrite22.phar.phpt" role="test" /> ! 269: <file name="copyonwrite23.phar.phpt" role="test" /> ! 270: <file name="copyonwrite24.phar.phpt" role="test" /> ! 271: <file name="copyonwrite25.phar.phpt" role="test" /> ! 272: <file name="frontcontroller1.phpt" role="test" /> ! 273: <file name="frontcontroller2.phpt" role="test" /> ! 274: <file name="frontcontroller3.phpt" role="test" /> ! 275: <file name="frontcontroller4.phpt" role="test" /> ! 276: <file name="frontcontroller5.phpt" role="test" /> ! 277: <file name="frontcontroller6.phpt" role="test" /> ! 278: <file name="frontcontroller7.phpt" role="test" /> ! 279: <file name="frontcontroller8.phpt" role="test" /> ! 280: <file name="frontcontroller9.phpt" role="test" /> ! 281: <file name="frontcontroller10.phpt" role="test" /> ! 282: <file name="frontcontroller11.phpt" role="test" /> ! 283: <file name="frontcontroller12.phpt" role="test" /> ! 284: <file name="frontcontroller13.phpt" role="test" /> ! 285: <file name="frontcontroller14.phpt" role="test" /> ! 286: <file name="frontcontroller15.phpt" role="test" /> ! 287: <file name="frontcontroller16.phpt" role="test" /> ! 288: <file name="frontcontroller17.phpt" role="test" /> ! 289: <file name="frontcontroller18.phpt" role="test" /> ! 290: <file name="frontcontroller19.phpt" role="test" /> ! 291: <file name="frontcontroller20.phpt" role="test" /> ! 292: <file name="frontcontroller21.phpt" role="test" /> ! 293: <file name="frontcontroller22.phpt" role="test" /> ! 294: <file name="frontcontroller23.phpt" role="test" /> ! 295: <file name="frontcontroller24.phpt" role="test" /> ! 296: <file name="frontcontroller25.phpt" role="test" /> ! 297: <file name="frontcontroller26.phpt" role="test" /> ! 298: <file name="frontcontroller27.phpt" role="test" /> ! 299: <file name="frontcontroller28.phpt" role="test" /> ! 300: <file name="frontcontroller29.phpt" role="test" /> ! 301: <file name="frontcontroller30.phpt" role="test" /> ! 302: <file name="frontcontroller31.phpt" role="test" /> ! 303: <file name="frontcontroller32.phpt" role="test" /> ! 304: <file name="frontcontroller33.phpt" role="test" /> ! 305: <file name="frontcontroller34.phpt" role="test" /> ! 306: </dir> <!-- /tests/cache_list --> ! 307: <dir name="files"> ! 308: <file name="blog.phar" role="test" /> ! 309: <file name="blog.phar.inc" role="test" /> ! 310: <file name="config.xml" role="test" /> ! 311: <file name="extracted.inc" role="test" /> ! 312: <file name="frontcontroller.phar" role="test" /> ! 313: <file name="frontcontroller.phar.inc" role="test" /> ! 314: <file name="frontcontroller2.phar" role="test" /> ! 315: <file name="frontcontroller2.phar.inc" role="test" /> ! 316: <file name="frontcontroller3.phar" role="test" /> ! 317: <file name="frontcontroller3.phar.inc" role="test" /> ! 318: <file name="frontcontroller4.phar" role="test" /> ! 319: <file name="frontcontroller4.phar.inc" role="test" /> ! 320: <file name="frontcontroller5.phar" role="test" /> ! 321: <file name="frontcontroller5.phar.inc" role="test" /> ! 322: <file name="frontcontroller6.phar" role="test" /> ! 323: <file name="frontcontroller6.phar.inc" role="test" /> ! 324: <file name="frontcontroller7.phar" role="test" /> ! 325: <file name="frontcontroller7.phar.inc" role="test" /> ! 326: <file name="frontcontroller8.phar" role="test" /> ! 327: <file name="frontcontroller8.phar.inc" role="test" /> ! 328: <file name="frontcontroller9.phar" role="test" /> ! 329: <file name="frontcontroller9.phar.inc" role="test" /> ! 330: <file name="frontcontroller10.phar" role="test" /> ! 331: <file name="frontcontroller10.phar.inc" role="test" /> ! 332: <file name="frontcontroller11.phar" role="test" /> ! 333: <file name="frontcontroller11.phar.inc" role="test" /> ! 334: <file name="frontcontroller12.phar" role="test" /> ! 335: <file name="frontcontroller12.phar.inc" role="test" /> ! 336: <file name="frontcontroller13.phar" role="test" /> ! 337: <file name="frontcontroller13.phar.inc" role="test" /> ! 338: <file name="frontcontroller14.phar" role="test" /> ! 339: <file name="frontcontroller14.phar.inc" role="test" /> ! 340: <file name="frontcontroller16.phar" role="test" /> ! 341: <file name="frontcontroller16.phar.inc" role="test" /> ! 342: <file name="frontcontroller17.phar" role="test" /> ! 343: <file name="frontcontroller17.phar.inc" role="test" /> ! 344: <file name="frontcontroller18.phar" role="test" /> ! 345: <file name="frontcontroller18.phar.inc" role="test" /> ! 346: <file name="frontcontroller19.phar" role="test" /> ! 347: <file name="frontcontroller19.phar.inc" role="test" /> ! 348: <file name="include_path.phar" role="test" /> ! 349: <file name="include_path.phar.inc" role="test" /> ! 350: <file name="include_path2.phar" role="test" /> ! 351: <file name="md5.phar" role="test" /> ! 352: <file name="nophar.phar" role="test" /> ! 353: <file name="nophar.phar.inc" role="test" /> ! 354: <file name="notbogus.zip" role="test" /> ! 355: <file name="openssl.phar" role="test" /> ! 356: <file name="openssl.phar.pubkey" role="test" /> ! 357: <file name="phar_oo_test.inc" role="test" /> ! 358: <file name="phar_test.inc" role="test" /> ! 359: <file name="private.pem" role="test" /> ! 360: <file name="sha1.phar" role="test" /> ! 361: <file name="sha256.phar" role="test" /> ! 362: <file name="sha512.phar" role="test" /> ! 363: <file name="zfapp.tgz" role="test" /> ! 364: </dir> <!-- /tests/files --> ! 365: <dir name="tar"> ! 366: <dir name="files"> ! 367: <file name="badalias1.phar.tar" role="test" /> ! 368: <file name="badalias2.phar.tar" role="test" /> ! 369: <file name="badalias3.phar.tar" role="test" /> ! 370: <file name="badalias4.phar.tar" role="test" /> ! 371: <file name="badalias5.phar.tar" role="test" /> ! 372: <file name="biglink.tar" role="test" /> ! 373: <file name="corrupt_tarmaker.php.inc" role="test" /> ! 374: <file name="frontcontroller.phar.inc" role="test" /> ! 375: <file name="frontcontroller.phar.tar" role="test" /> ! 376: <file name="frontcontroller2.phar.inc" role="test" /> ! 377: <file name="frontcontroller2.phar.tar" role="test" /> ! 378: <file name="frontcontroller3.phar.inc" role="test" /> ! 379: <file name="frontcontroller3.phar.tar" role="test" /> ! 380: <file name="frontcontroller4.phar.inc" role="test" /> ! 381: <file name="frontcontroller4.phar.tar" role="test" /> ! 382: <file name="frontcontroller5.phar.inc" role="test" /> ! 383: <file name="frontcontroller5.phar.tar" role="test" /> ! 384: <file name="frontcontroller6.phar.inc" role="test" /> ! 385: <file name="frontcontroller6.phar.tar" role="test" /> ! 386: <file name="frontcontroller7.phar.inc" role="test" /> ! 387: <file name="frontcontroller7.phar.tar" role="test" /> ! 388: <file name="frontcontroller8.phar.inc" role="test" /> ! 389: <file name="frontcontroller8.phar.tar" role="test" /> ! 390: <file name="frontcontroller9.phar.inc" role="test" /> ! 391: <file name="frontcontroller9.phar.tar" role="test" /> ! 392: <file name="frontcontroller10.phar.inc" role="test" /> ! 393: <file name="frontcontroller10.phar.tar" role="test" /> ! 394: <file name="frontcontroller11.phar.inc" role="test" /> ! 395: <file name="frontcontroller11.phar.tar" role="test" /> ! 396: <file name="frontcontroller12.phar.inc" role="test" /> ! 397: <file name="frontcontroller12.phar.tar" role="test" /> ! 398: <file name="links.phar.tar" role="test" /> ! 399: <file name="links.tar" role="test" /> ! 400: <file name="make.dangerous.tar.php.inc" role="test" /> ! 401: <file name="make_invalid_tar.php.inc" role="test" /> ! 402: <file name="Net_URL-1.0.15.tgz" role="test" /> ! 403: <file name="P1-1.0.0.tgz" role="test" /> ! 404: <file name="P1-1.0.0.tgz.pubkey" role="test" /> ! 405: <file name="subdirlink.tar" role="test" /> ! 406: <file name="tarmaker.php.inc" role="test" /> ! 407: <file name="tinylink.tar" role="test" /> ! 408: <file name="trunc.tar" role="test" /> ! 409: </dir> <!-- /tests/tar/files --> ! 410: <file name="033.phpt" role="test" /> ! 411: <file name="033a.phpt" role="test" /> ! 412: <file name="alias_acrobatics.phpt" role="test" /> ! 413: <file name="all.phpt" role="test" /> ! 414: <file name="allU.phpt" role="test" /> ! 415: <file name="badalias.phpt" role="test" /> ! 416: <file name="badchecksum.phpt" role="test" /> ! 417: <file name="bignames.phpt" role="test" /> ! 418: <file name="bignames_overflow.phpt" role="test" /> ! 419: <file name="create_new_and_modify.phpt" role="test" /> ! 420: <file name="create_new_phar_b.phpt" role="test" /> ! 421: <file name="delete.phpt" role="test" /> ! 422: <file name="delete_in_phar.phpt" role="test" /> ! 423: <file name="delete_in_phar_b.phpt" role="test" /> ! 424: <file name="delete_in_phar_confirm.phpt" role="test" /> ! 425: <file name="dir.phpt" role="test" /> ! 426: <file name="exists_as_phar.phpt" role="test" /> ! 427: <file name="frontcontroller1.phar.phpt" role="test" /> ! 428: <file name="frontcontroller2.phar.phpt" role="test" /> ! 429: <file name="frontcontroller3.phar.phpt" role="test" /> ! 430: <file name="frontcontroller4.phar.phpt" role="test" /> ! 431: <file name="frontcontroller5.phar.phpt" role="test" /> ! 432: <file name="frontcontroller6.phar.phpt" role="test" /> ! 433: <file name="frontcontroller7.phar.phpt" role="test" /> ! 434: <file name="frontcontroller8.phar.phpt" role="test" /> ! 435: <file name="frontcontroller9.phar.phpt" role="test" /> ! 436: <file name="frontcontroller10.phar.phpt" role="test" /> ! 437: <file name="frontcontroller11.phar.phpt" role="test" /> ! 438: <file name="frontcontroller12.phar.phpt" role="test" /> ! 439: <file name="frontcontroller13.phar.phpt" role="test" /> ! 440: <file name="frontcontroller14.phar.phpt" role="test" /> ! 441: <file name="frontcontroller15.phar.phpt" role="test" /> ! 442: <file name="frontcontroller16.phar.phpt" role="test" /> ! 443: <file name="frontcontroller17.phar.phpt" role="test" /> ! 444: <file name="frontcontroller18.phar.phpt" role="test" /> ! 445: <file name="frontcontroller19.phar.phpt" role="test" /> ! 446: <file name="frontcontroller20.phar.phpt" role="test" /> ! 447: <file name="frontcontroller21.phar.phpt" role="test" /> ! 448: <file name="links.phpt" role="test" /> ! 449: <file name="links2.phpt" role="test" /> ! 450: <file name="links3.phpt" role="test" /> ! 451: <file name="links4.phpt" role="test" /> ! 452: <file name="links5.phpt" role="test" /> ! 453: <file name="links6.phpt" role="test" /> ! 454: <file name="open_for_write_existing.phpt" role="test" /> ! 455: <file name="open_for_write_existing_b.phpt" role="test" /> ! 456: <file name="open_for_write_existing_b_5_2.phpt" role="test" /> ! 457: <file name="open_for_write_existing_c.phpt" role="test" /> ! 458: <file name="open_for_write_existing_c_5_2.phpt" role="test" /> ! 459: <file name="open_for_write_newfile.phpt" role="test" /> ! 460: <file name="open_for_write_newfile_b.phpt" role="test" /> ! 461: <file name="open_for_write_newfile_b_5_2.phpt" role="test" /> ! 462: <file name="open_for_write_newfile_c.phpt" role="test" /> ! 463: <file name="open_for_write_newfile_c_5_2.phpt" role="test" /> ! 464: <file name="phar_begin_setstub_commit.phpt" role="test" /> ! 465: <file name="phar_begin_setstub_commitU.phpt" role="test" /> ! 466: <file name="phar_buildfromiterator4.phpt" role="test" /> ! 467: <file name="phar_buildfromiterator5.phpt" role="test" /> ! 468: <file name="phar_buildfromiterator6.phpt" role="test" /> ! 469: <file name="phar_buildfromiterator7.phpt" role="test" /> ! 470: <file name="phar_buildfromiterator8.phpt" role="test" /> ! 471: <file name="phar_buildfromiterator9.phpt" role="test" /> ! 472: <file name="phar_commitwrite.phpt" role="test" /> ! 473: <file name="phar_convert_phar.phpt" role="test" /> ! 474: <file name="phar_convert_phar2.phpt" role="test" /> ! 475: <file name="phar_convert_phar3.phpt" role="test" /> ! 476: <file name="phar_convert_phar4.phpt" role="test" /> ! 477: <file name="phar_copy.phpt" role="test" /> ! 478: <file name="phar_magic.phpt" role="test" /> ! 479: <file name="phar_setalias.phpt" role="test" /> ! 480: <file name="phar_setalias2.phpt" role="test" /> ! 481: <file name="phar_setdefaultstub.phpt" role="test" /> ! 482: <file name="phar_setsignaturealgo2.phpt" role="test" /> ! 483: <file name="phar_stub.phpt" role="test" /> ! 484: <file name="phar_stub_error.phpt" role="test" /> ! 485: <file name="refcount1.phpt" role="test" /> ! 486: <file name="refcount1_5_2.phpt" role="test" /> ! 487: <file name="rename.phpt" role="test" /> ! 488: <file name="rename_dir.phpt" role="test" /> ! 489: <file name="require_hash.phpt" role="test" /> ! 490: <file name="rmdir.phpt" role="test" /> ! 491: <file name="tar_001.phpt" role="test" /> ! 492: <file name="tar_002.phpt" role="test" /> ! 493: <file name="tar_003.phpt" role="test" /> ! 494: <file name="tar_004.phpt" role="test" /> ! 495: <file name="tar_004U.phpt" role="test" /> ! 496: <file name="tar_bz2.phpt" role="test" /> ! 497: <file name="tar_bz2U.phpt" role="test" /> ! 498: <file name="tar_gzip.phpt" role="test" /> ! 499: <file name="tar_gzipU.phpt" role="test" /> ! 500: <file name="tar_makebz2.phpt" role="test" /> ! 501: <file name="tar_makegz.phpt" role="test" /> ! 502: <file name="tar_nohash.phpt" role="test" /> ! 503: <file name="tar_nostub.phpt" role="test" /> ! 504: <file name="tar_openssl_hash.phpt" role="test" /> ! 505: <file name="truncated.phpt" role="test" /> ! 506: </dir> <!-- /tests/tar --> ! 507: <dir name="zip"> ! 508: <dir name="files"> ! 509: <file name="badalias1.phar.zip" role="test" /> ! 510: <file name="badalias2.phar.zip" role="test" /> ! 511: <file name="badalias3.phar.zip" role="test" /> ! 512: <file name="badalias4.phar.zip" role="test" /> ! 513: <file name="badalias5.phar.zip" role="test" /> ! 514: <file name="bz2_alias.phar.zip" role="test" /> ! 515: <file name="bzip2.zip" role="test" /> ! 516: <file name="cdir_offset.zip" role="test" /> ! 517: <file name="compress_unsup1.zip" role="test" /> ! 518: <file name="compress_unsup2.zip" role="test" /> ! 519: <file name="compress_unsup3.zip" role="test" /> ! 520: <file name="compress_unsup4.zip" role="test" /> ! 521: <file name="compress_unsup5.zip" role="test" /> ! 522: <file name="compress_unsup6.zip" role="test" /> ! 523: <file name="compress_unsup7.zip" role="test" /> ! 524: <file name="compress_unsup9.zip" role="test" /> ! 525: <file name="compress_unsup10.zip" role="test" /> ! 526: <file name="compress_unsup14.zip" role="test" /> ! 527: <file name="compress_unsup18.zip" role="test" /> ! 528: <file name="compress_unsup19.zip" role="test" /> ! 529: <file name="compress_unsup97.zip" role="test" /> ! 530: <file name="compress_unsup98.zip" role="test" /> ! 531: <file name="compress_unsupunknown.zip" role="test" /> ! 532: <file name="corrupt2.php.inc" role="test" /> ! 533: <file name="corrupt3.php.inc" role="test" /> ! 534: <file name="corrupt_count1.php.inc" role="test" /> ! 535: <file name="corrupt_zipmaker.php.inc" role="test" /> ! 536: <file name="count1.zip" role="test" /> ! 537: <file name="count2.zip" role="test" /> ! 538: <file name="disknumber.zip" role="test" /> ! 539: <file name="encrypted.zip" role="test" /> ! 540: <file name="extralen_toolong.zip" role="test" /> ! 541: <file name="filecomment.zip" role="test" /> ! 542: <file name="frontcontroller.phar.inc" role="test" /> ! 543: <file name="frontcontroller.phar.zip" role="test" /> ! 544: <file name="frontcontroller2.phar.inc" role="test" /> ! 545: <file name="frontcontroller2.phar.zip" role="test" /> ! 546: <file name="frontcontroller3.phar.inc" role="test" /> ! 547: <file name="frontcontroller3.phar.zip" role="test" /> ! 548: <file name="frontcontroller4.phar.inc" role="test" /> ! 549: <file name="frontcontroller4.phar.zip" role="test" /> ! 550: <file name="frontcontroller5.phar.inc" role="test" /> ! 551: <file name="frontcontroller5.phar.zip" role="test" /> ! 552: <file name="frontcontroller6.phar.inc" role="test" /> ! 553: <file name="frontcontroller6.phar.zip" role="test" /> ! 554: <file name="frontcontroller7.phar.inc" role="test" /> ! 555: <file name="frontcontroller7.phar.zip" role="test" /> ! 556: <file name="frontcontroller8.phar.inc" role="test" /> ! 557: <file name="frontcontroller8.phar.zip" role="test" /> ! 558: <file name="frontcontroller9.phar.inc" role="test" /> ! 559: <file name="frontcontroller9.phar.zip" role="test" /> ! 560: <file name="frontcontroller10.phar.inc" role="test" /> ! 561: <file name="frontcontroller10.phar.zip" role="test" /> ! 562: <file name="frontcontroller11.phar.inc" role="test" /> ! 563: <file name="frontcontroller11.phar.zip" role="test" /> ! 564: <file name="frontcontroller12.phar.inc" role="test" /> ! 565: <file name="frontcontroller12.phar.zip" role="test" /> ! 566: <file name="make_invalid_tar.php.inc" role="test" /> ! 567: <file name="metadata.phar.inc" role="test" /> ! 568: <file name="metadata.phar.zip" role="test" /> ! 569: <file name="nozipend.zip" role="test" /> ! 570: <file name="odt.odt" role="test" /> ! 571: <file name="stdin.zip" role="test" /> ! 572: <file name="test.odt" role="test" /> ! 573: <file name="truncfilename.zip" role="test" /> ! 574: <file name="zip.zip" role="test" /> ! 575: <file name="zipmaker.php.inc" role="test" /> ! 576: <file name="zlib_alias.phar.zip" role="test" /> ! 577: </dir> <!-- /tests/zip/files --> ! 578: <file name="033.phpt" role="test" /> ! 579: <file name="033a.phpt" role="test" /> ! 580: <file name="alias_acrobatics.phpt" role="test" /> ! 581: <file name="all.phpt" role="test" /> ! 582: <file name="allU.phpt" role="test" /> ! 583: <file name="badalias.phpt" role="test" /> ! 584: <file name="bug48791.phpt" role="test" /> ! 585: <file name="bzip2.phpt" role="test" /> ! 586: <file name="corrupt_001.phpt" role="test" /> ! 587: <file name="corrupt_002.phpt" role="test" /> ! 588: <file name="corrupt_003.phpt" role="test" /> ! 589: <file name="corrupt_004.phpt" role="test" /> ! 590: <file name="corrupt_005.phpt" role="test" /> ! 591: <file name="corrupt_006.phpt" role="test" /> ! 592: <file name="corrupt_007.phpt" role="test" /> ! 593: <file name="corrupt_008.phpt" role="test" /> ! 594: <file name="corrupt_009.phpt" role="test" /> ! 595: <file name="corrupt_010.phpt" role="test" /> ! 596: <file name="create_new_and_modify.phpt" role="test" /> ! 597: <file name="create_new_phar_b.phpt" role="test" /> ! 598: <file name="delete.phpt" role="test" /> ! 599: <file name="delete_in_phar.phpt" role="test" /> ! 600: <file name="delete_in_phar_b.phpt" role="test" /> ! 601: <file name="delete_in_phar_confirm.phpt" role="test" /> ! 602: <file name="dir.phpt" role="test" /> ! 603: <file name="exists_as_phar.phpt" role="test" /> ! 604: <file name="frontcontroller1.phar.phpt" role="test" /> ! 605: <file name="frontcontroller2.phar.phpt" role="test" /> ! 606: <file name="frontcontroller3.phar.phpt" role="test" /> ! 607: <file name="frontcontroller4.phar.phpt" role="test" /> ! 608: <file name="frontcontroller5.phar.phpt" role="test" /> ! 609: <file name="frontcontroller6.phar.phpt" role="test" /> ! 610: <file name="frontcontroller7.phar.phpt" role="test" /> ! 611: <file name="frontcontroller8.phar.phpt" role="test" /> ! 612: <file name="frontcontroller9.phar.phpt" role="test" /> ! 613: <file name="frontcontroller10.phar.phpt" role="test" /> ! 614: <file name="frontcontroller11.phar.phpt" role="test" /> ! 615: <file name="frontcontroller12.phar.phpt" role="test" /> ! 616: <file name="frontcontroller13.phar.phpt" role="test" /> ! 617: <file name="frontcontroller14.phar.phpt" role="test" /> ! 618: <file name="frontcontroller15.phar.phpt" role="test" /> ! 619: <file name="frontcontroller16.phar.phpt" role="test" /> ! 620: <file name="frontcontroller17.phar.phpt" role="test" /> ! 621: <file name="frontcontroller18.phar.phpt" role="test" /> ! 622: <file name="frontcontroller19.phar.phpt" role="test" /> ! 623: <file name="frontcontroller20.phar.phpt" role="test" /> ! 624: <file name="frontcontroller21.phar.phpt" role="test" /> ! 625: <file name="getalias.phpt" role="test" /> ! 626: <file name="largezip.phpt" role="test" /> ! 627: <file name="metadata_write_commit.phpt" role="test" /> ! 628: <file name="metadata_write_commitU.phpt" role="test" /> ! 629: <file name="notphar.phpt" role="test" /> ! 630: <file name="odt.phpt" role="test" /> ! 631: <file name="open_for_write_existing.phpt" role="test" /> ! 632: <file name="open_for_write_existing_b.phpt" role="test" /> ! 633: <file name="open_for_write_existing_b_5_2.phpt" role="test" /> ! 634: <file name="open_for_write_existing_c.phpt" role="test" /> ! 635: <file name="open_for_write_existing_c_5_2.phpt" role="test" /> ! 636: <file name="open_for_write_newfile.phpt" role="test" /> ! 637: <file name="open_for_write_newfile_b.phpt" role="test" /> ! 638: <file name="open_for_write_newfile_b_5_2.phpt" role="test" /> ! 639: <file name="open_for_write_newfile_c.phpt" role="test" /> ! 640: <file name="open_for_write_newfile_c_5_2.phpt" role="test" /> ! 641: <file name="phar_begin_setstub_commit.phpt" role="test" /> ! 642: <file name="phar_begin_setstub_commitU.phpt" role="test" /> ! 643: <file name="phar_buildfromiterator4.phpt" role="test" /> ! 644: <file name="phar_buildfromiterator5.phpt" role="test" /> ! 645: <file name="phar_buildfromiterator6.phpt" role="test" /> ! 646: <file name="phar_buildfromiterator7.phpt" role="test" /> ! 647: <file name="phar_buildfromiterator8.phpt" role="test" /> ! 648: <file name="phar_buildfromiterator9.phpt" role="test" /> ! 649: <file name="phar_commitwrite.phpt" role="test" /> ! 650: <file name="phar_convert_phar.phpt" role="test" /> ! 651: <file name="phar_copy.phpt" role="test" /> ! 652: <file name="phar_magic.phpt" role="test" /> ! 653: <file name="phar_magicU.phpt" role="test" /> ! 654: <file name="phar_oo_compressallbz2.phpt" role="test" /> ! 655: <file name="phar_oo_compressallgz.phpt" role="test" /> ! 656: <file name="phar_setalias.phpt" role="test" /> ! 657: <file name="phar_setalias2.phpt" role="test" /> ! 658: <file name="phar_setdefaultstub.phpt" role="test" /> ! 659: <file name="phar_setsignaturealgo2.phpt" role="test" /> ! 660: <file name="phar_stub.phpt" role="test" /> ! 661: <file name="phar_stub_error.phpt" role="test" /> ! 662: <file name="refcount1.phpt" role="test" /> ! 663: <file name="refcount1_5_2.phpt" role="test" /> ! 664: <file name="rename.phpt" role="test" /> ! 665: <file name="rename_dir.phpt" role="test" /> ! 666: <file name="rmdir.phpt" role="test" /> ! 667: <file name="unixzip.phpt" role="test" /> ! 668: <file name="zlib.phpt" role="test" /> ! 669: </dir> <!-- /tests/zip --> ! 670: <file name="001.phpt" role="test" /> ! 671: <file name="002.phpt" role="test" /> ! 672: <file name="003.phpt" role="test" /> ! 673: <file name="003a.phpt" role="test" /> ! 674: <file name="004.phpt" role="test" /> ! 675: <file name="005.phpt" role="test" /> ! 676: <file name="006.phpt" role="test" /> ! 677: <file name="007.phpt" role="test" /> ! 678: <file name="008.phpt" role="test" /> ! 679: <file name="009.phpt" role="test" /> ! 680: <file name="010.phpt" role="test" /> ! 681: <file name="011.phpt" role="test" /> ! 682: <file name="012.phpt" role="test" /> ! 683: <file name="013.phpt" role="test" /> ! 684: <file name="014.phpt" role="test" /> ! 685: <file name="015.phpt" role="test" /> ! 686: <file name="015b.phpt" role="test" /> ! 687: <file name="016.phpt" role="test" /> ! 688: <file name="016b.phpt" role="test" /> ! 689: <file name="017.phpt" role="test" /> ! 690: <file name="017U.phpt" role="test" /> ! 691: <file name="018.phpt" role="test" /> ! 692: <file name="018U.phpt" role="test" /> ! 693: <file name="019.phpt" role="test" /> ! 694: <file name="019b.phpt" role="test" /> ! 695: <file name="019bU.phpt" role="test" /> ! 696: <file name="019c.phpt" role="test" /> ! 697: <file name="019cU.phpt" role="test" /> ! 698: <file name="020.phpt" role="test" /> ! 699: <file name="021.phpt" role="test" /> ! 700: <file name="022.phpt" role="test" /> ! 701: <file name="023.phpt" role="test" /> ! 702: <file name="024.phpt" role="test" /> ! 703: <file name="025.phpt" role="test" /> ! 704: <file name="026.phpt" role="test" /> ! 705: <file name="027.phpt" role="test" /> ! 706: <file name="027U.phpt" role="test" /> ! 707: <file name="028.phpt" role="test" /> ! 708: <file name="029.phpt" role="test" /> ! 709: <file name="030.phpt" role="test" /> ! 710: <file name="031.phpt" role="test" /> ! 711: <file name="032.phpt" role="test" /> ! 712: <file name="033.phpt" role="test" /> ! 713: <file name="033a.phpt" role="test" /> ! 714: <file name="addfuncs.phpt" role="test" /> ! 715: <file name="alias_acrobatics.phpt" role="test" /> ! 716: <file name="badparameters.phpt" role="test" /> ! 717: <file name="bug13727.phpt" role="test" /> ! 718: <file name="bug13786.phpt" role="test" /> ! 719: <file name="bug45218_SLOWTEST.phpt" role="test" /> ! 720: <file name="bug45218_SLOWTESTU.phpt" role="test" /> ! 721: <file name="bug46032.phpt" role="test" /> ! 722: <file name="bug46060.phpt" role="test" /> ! 723: <file name="bug46178.phpt" role="test" /> ! 724: <file name="bug47085.phpt" role="test" /> ! 725: <file name="bug48377.2.phpt" role="test" /> ! 726: <file name="bug48377.phpt" role="test" /> ! 727: <file name="cached_manifest_1.phpt" role="test" /> ! 728: <file name="cached_manifest_1U.phpt" role="test" /> ! 729: <file name="create_new_and_modify.phpt" role="test" /> ! 730: <file name="create_new_phar.phpt" role="test" /> ! 731: <file name="create_new_phar_b.phpt" role="test" /> ! 732: <file name="create_new_phar_c.phpt" role="test" /> ! 733: <file name="create_path_error.phpt" role="test" /> ! 734: <file name="delete.phpt" role="test" /> ! 735: <file name="delete_in_phar.phpt" role="test" /> ! 736: <file name="delete_in_phar_b.phpt" role="test" /> ! 737: <file name="delete_in_phar_confirm.phpt" role="test" /> ! 738: <file name="dir.phpt" role="test" /> ! 739: <file name="fgc_edgecases.phpt" role="test" /> ! 740: <file name="file_get_contents.phpt" role="test" /> ! 741: <file name="fopen.phpt" role="test" /> ! 742: <file name="fopen5.2.phpt" role="test" /> ! 743: <file name="fopen_edgecases.phpt" role="test" /> ! 744: <file name="fopen_edgecases2.phpt" role="test" /> ! 745: <file name="fopen_edgecases2U.phpt" role="test" /> ! 746: <file name="front.phar.phpt" role="test" /> ! 747: <file name="frontcontroller1.phpt" role="test" /> ! 748: <file name="frontcontroller2.phpt" role="test" /> ! 749: <file name="frontcontroller3.phpt" role="test" /> ! 750: <file name="frontcontroller4.phpt" role="test" /> ! 751: <file name="frontcontroller5.phpt" role="test" /> ! 752: <file name="frontcontroller6.phpt" role="test" /> ! 753: <file name="frontcontroller7.phpt" role="test" /> ! 754: <file name="frontcontroller8.phpt" role="test" /> ! 755: <file name="frontcontroller9.phpt" role="test" /> ! 756: <file name="frontcontroller10.phpt" role="test" /> ! 757: <file name="frontcontroller11.phpt" role="test" /> ! 758: <file name="frontcontroller12.phpt" role="test" /> ! 759: <file name="frontcontroller13.phpt" role="test" /> ! 760: <file name="frontcontroller14.phpt" role="test" /> ! 761: <file name="frontcontroller15.phpt" role="test" /> ! 762: <file name="frontcontroller16.phpt" role="test" /> ! 763: <file name="frontcontroller17.phpt" role="test" /> ! 764: <file name="frontcontroller18.phpt" role="test" /> ! 765: <file name="frontcontroller19.phpt" role="test" /> ! 766: <file name="frontcontroller20.phpt" role="test" /> ! 767: <file name="frontcontroller21.phpt" role="test" /> ! 768: <file name="frontcontroller22.phpt" role="test" /> ! 769: <file name="frontcontroller23.phpt" role="test" /> ! 770: <file name="frontcontroller24.phpt" role="test" /> ! 771: <file name="frontcontroller25.phpt" role="test" /> ! 772: <file name="frontcontroller26.phpt" role="test" /> ! 773: <file name="frontcontroller27.phpt" role="test" /> ! 774: <file name="frontcontroller28.phpt" role="test" /> ! 775: <file name="frontcontroller29.phpt" role="test" /> ! 776: <file name="frontcontroller30.phpt" role="test" /> ! 777: <file name="frontcontroller31.phpt" role="test" /> ! 778: <file name="frontcontroller32.phpt" role="test" /> ! 779: <file name="frontcontroller33.phpt" role="test" /> ! 780: <file name="frontcontroller34.phpt" role="test" /> ! 781: <file name="include_path.phpt" role="test" /> ! 782: <file name="include_path_advanced.phpt" role="test" /> ! 783: <file name="ini_set.phpt" role="test" /> ! 784: <file name="ini_set_off.phpt" role="test" /> ! 785: <file name="ini_set_offU.phpt" role="test" /> ! 786: <file name="invalid_alias.phpt" role="test" /> ! 787: <file name="invalid_setstubalias.phpt" role="test" /> ! 788: <file name="metadata_read.phpt" role="test" /> ! 789: <file name="metadata_readU.phpt" role="test" /> ! 790: <file name="metadata_write.phpt" role="test" /> ! 791: <file name="metadata_writeU.phpt" role="test" /> ! 792: <file name="metadata_write_commit.phpt" role="test" /> ! 793: <file name="metadata_write_commitU.phpt" role="test" /> ! 794: <file name="mkdir.phpt" role="test" /> ! 795: <file name="mounteddir.phpt" role="test" /> ! 796: <file name="mounteddirU.phpt" role="test" /> ! 797: <file name="nophar.phpt" role="test" /> ! 798: <file name="nophar_web.phpt" role="test" /> ! 799: <file name="opendir.phpt" role="test" /> ! 800: <file name="opendir_edgecases.phpt" role="test" /> ! 801: <file name="open_for_write_existing.phpt" role="test" /> ! 802: <file name="open_for_write_existing_b.phpt" role="test" /> ! 803: <file name="open_for_write_existing_b_5_2.phpt" role="test" /> ! 804: <file name="open_for_write_existing_c.phpt" role="test" /> ! 805: <file name="open_for_write_existing_c_5_2.phpt" role="test" /> ! 806: <file name="open_for_write_newfile.phpt" role="test" /> ! 807: <file name="open_for_write_newfile_b.phpt" role="test" /> ! 808: <file name="open_for_write_newfile_b_5_2.phpt" role="test" /> ! 809: <file name="open_for_write_newfile_c.phpt" role="test" /> ! 810: <file name="open_for_write_newfile_c_5_2.phpt" role="test" /> ! 811: <file name="pharfileinfo_chmod.phpt" role="test" /> ! 812: <file name="pharfileinfo_compression.phpt" role="test" /> ! 813: <file name="pharfileinfo_construct.phpt" role="test" /> ! 814: <file name="pharfileinfo_destruct.phpt" role="test" /> ! 815: <file name="pharfileinfo_getcrc32.phpt" role="test" /> ! 816: <file name="pharfileinfo_setmetadata.phpt" role="test" /> ! 817: <file name="phar_begin_setstub_commit.phpt" role="test" /> ! 818: <file name="phar_begin_setstub_commitU.phpt" role="test" /> ! 819: <file name="phar_buildfromdirectory1.phpt" role="test" /> ! 820: <file name="phar_buildfromdirectory2.phpt" role="test" /> ! 821: <file name="phar_buildfromdirectory3.phpt" role="test" /> ! 822: <file name="phar_buildfromdirectory4.phpt" role="test" /> ! 823: <file name="phar_buildfromdirectory5.phpt" role="test" /> ! 824: <file name="phar_buildfromdirectory6.phpt" role="test" /> ! 825: <file name="phar_buildfromiterator1.phpt" role="test" /> ! 826: <file name="phar_buildfromiterator2.phpt" role="test" /> ! 827: <file name="phar_buildfromiterator3.phpt" role="test" /> ! 828: <file name="phar_buildfromiterator4.phpt" role="test" /> ! 829: <file name="phar_buildfromiterator5.phpt" role="test" /> ! 830: <file name="phar_buildfromiterator6.phpt" role="test" /> ! 831: <file name="phar_buildfromiterator7.phpt" role="test" /> ! 832: <file name="phar_buildfromiterator8.phpt" role="test" /> ! 833: <file name="phar_buildfromiterator9.phpt" role="test" /> ! 834: <file name="phar_buildfromiterator10.phpt" role="test" /> ! 835: <file name="phar_bz2.phpt" role="test" /> ! 836: <file name="phar_commitwrite.phpt" role="test" /> ! 837: <file name="phar_construct_invalidurl.phpt" role="test" /> ! 838: <file name="phar_convert_again.phpt" role="test" /> ! 839: <file name="phar_convert_repeated.phpt" role="test" /> ! 840: <file name="phar_convert_repeated_b.phpt" role="test" /> ! 841: <file name="phar_convert_tar.phpt" role="test" /> ! 842: <file name="phar_convert_tar2.phpt" role="test" /> ! 843: <file name="phar_convert_tar3.phpt" role="test" /> ! 844: <file name="phar_convert_zip.phpt" role="test" /> ! 845: <file name="phar_copy.phpt" role="test" /> ! 846: <file name="phar_createdefaultstub.phpt" role="test" /> ! 847: <file name="phar_create_in_cwd.phpt" role="test" /> ! 848: <file name="phar_ctx_001.phpt" role="test" /> ! 849: <file name="phar_decompress.phpt" role="test" /> ! 850: <file name="phar_dir_iterate.phpt" role="test" /> ! 851: <file name="phar_dotted_path.phpt" role="test" /> ! 852: <file name="phar_extract.phpt" role="test" /> ! 853: <file name="phar_extract2.phpt" role="test" /> ! 854: <file name="phar_extract3.phpt" role="test" /> ! 855: <file name="phar_get_supportedcomp1.phpt" role="test" /> ! 856: <file name="phar_get_supportedcomp2.phpt" role="test" /> ! 857: <file name="phar_get_supportedcomp3.phpt" role="test" /> ! 858: <file name="phar_get_supportedcomp4.phpt" role="test" /> ! 859: <file name="phar_get_supported_signatures_001.phpt" role="test" /> ! 860: <file name="phar_get_supported_signatures_001a.phpt" role="test" /> ! 861: <file name="phar_get_supported_signatures_002.phpt" role="test" /> ! 862: <file name="phar_get_supported_signatures_002a.phpt" role="test" /> ! 863: <file name="phar_gobyebye.phpt" role="test" /> ! 864: <file name="phar_gzip.phpt" role="test" /> ! 865: <file name="phar_gzipU.phpt" role="test" /> ! 866: <file name="phar_isvalidpharfilename.phpt" role="test" /> ! 867: <file name="phar_magic.phpt" role="test" /> ! 868: <file name="phar_metadata_read.phpt" role="test" /> ! 869: <file name="phar_metadata_readU.phpt" role="test" /> ! 870: <file name="phar_metadata_write.phpt" role="test" /> ! 871: <file name="phar_metadata_writeU.phpt" role="test" /> ! 872: <file name="phar_mount.phpt" role="test" /> ! 873: <file name="phar_offset_check.phpt" role="test" /> ! 874: <file name="phar_offset_get_error.phpt" role="test" /> ! 875: <file name="phar_oo_001.phpt" role="test" /> ! 876: <file name="phar_oo_001U.phpt" role="test" /> ! 877: <file name="phar_oo_002.phpt" role="test" /> ! 878: <file name="phar_oo_002U.phpt" role="test" /> ! 879: <file name="phar_oo_003.phpt" role="test" /> ! 880: <file name="phar_oo_004.phpt" role="test" /> ! 881: <file name="phar_oo_004U.phpt" role="test" /> ! 882: <file name="phar_oo_005.phpt" role="test" /> ! 883: <file name="phar_oo_005U.phpt" role="test" /> ! 884: <file name="phar_oo_005_5.2.phpt" role="test" /> ! 885: <file name="phar_oo_006.phpt" role="test" /> ! 886: <file name="phar_oo_007.phpt" role="test" /> ! 887: <file name="phar_oo_008.phpt" role="test" /> ! 888: <file name="phar_oo_009.phpt" role="test" /> ! 889: <file name="phar_oo_010.phpt" role="test" /> ! 890: <file name="phar_oo_011.phpt" role="test" /> ! 891: <file name="phar_oo_011b.phpt" role="test" /> ! 892: <file name="phar_oo_012.phpt" role="test" /> ! 893: <file name="phar_oo_012b.phpt" role="test" /> ! 894: <file name="phar_oo_012_confirm.phpt" role="test" /> ! 895: <file name="phar_oo_compressallbz2.phpt" role="test" /> ! 896: <file name="phar_oo_compressallgz.phpt" role="test" /> ! 897: <file name="phar_oo_compressed_001.phpt" role="test" /> ! 898: <file name="phar_oo_compressed_001b.phpt" role="test" /> ! 899: <file name="phar_oo_compressed_002.phpt" role="test" /> ! 900: <file name="phar_oo_compressed_002b.phpt" role="test" /> ! 901: <file name="phar_oo_getcontents.phpt" role="test" /> ! 902: <file name="phar_oo_getcontentsgz.phpt" role="test" /> ! 903: <file name="phar_oo_getmodified.phpt" role="test" /> ! 904: <file name="phar_oo_iswriteable.phpt" role="test" /> ! 905: <file name="phar_oo_nosig.phpt" role="test" /> ! 906: <file name="phar_oo_uncompressall.phpt" role="test" /> ! 907: <file name="phar_running.phpt" role="test" /> ! 908: <file name="phar_setalias.phpt" role="test" /> ! 909: <file name="phar_setalias2.phpt" role="test" /> ! 910: <file name="phar_setdefaultstub.phpt" role="test" /> ! 911: <file name="phar_setsignaturealgo1.phpt" role="test" /> ! 912: <file name="phar_setsignaturealgo2.phpt" role="test" /> ! 913: <file name="phar_stub.phpt" role="test" /> ! 914: <file name="phar_stub_error.phpt" role="test" /> ! 915: <file name="phar_stub_write.phpt" role="test" /> ! 916: <file name="phar_stub_write_file.phpt" role="test" /> ! 917: <file name="phar_unlinkarchive.phpt" role="test" /> ! 918: <file name="phpinfo_001.phpt" role="test" /> ! 919: <file name="phpinfo_002.phpt" role="test" /> ! 920: <file name="phpinfo_003.phpt" role="test" /> ! 921: <file name="phpinfo_004.phpt" role="test" /> ! 922: <file name="readfile.phpt" role="test" /> ! 923: <file name="readfile_edgecases.phpt" role="test" /> ! 924: <file name="readfile_edgecasesU.phpt" role="test" /> ! 925: <file name="refcount1.phpt" role="test" /> ! 926: <file name="refcount1_5_2.phpt" role="test" /> ! 927: <file name="rename.phpt" role="test" /> ! 928: <file name="rename_dir.phpt" role="test" /> ! 929: <file name="rename_dir_and_mount.phpt" role="test" /> ! 930: <file name="rmdir.phpt" role="test" /> ! 931: <file name="security.phpt" role="test" /> ! 932: <file name="stat.phpt" role="test" /> ! 933: <file name="stat2.phpt" role="test" /> ! 934: <file name="stat2_5.3.phpt" role="test" /> ! 935: <file name="test_alias_unset.phpt" role="test" /> ! 936: <file name="test_signaturealgos.phpt" role="test" /> ! 937: <file name="test_unset.phpt" role="test" /> ! 938: <file name="webphar_compilefail.phpt" role="test" /> ! 939: <file name="withphar.phpt" role="test" /> ! 940: <file name="withphar_web.phpt" role="test" /> ! 941: <file name="zf_test.phpt" role="test" /> ! 942: </dir> <!-- /tests --> ! 943: <file name="build_precommand.php" role="php" /> ! 944: <file name="cgidebug" role="data" /> ! 945: <file name="config.m4" role="src" /> ! 946: <file name="config.w32" role="src" /> ! 947: <file name="CREDITS" role="doc" /> ! 948: <file name="dirstream.c" role="src" /> ! 949: <file name="dirstream.h" role="src" /> ! 950: <file name="func_interceptors.c" role="src" /> ! 951: <file name="func_interceptors.h" role="src" /> ! 952: <file name="gdbhelp" role="data" /> ! 953: <file name="LICENSE" role="doc" /> ! 954: <file name="Makefile.frag" role="src" /> ! 955: <file name="makestub.php" role="php" /> ! 956: <file name="phar.c" role="src" /> ! 957: <file name="pharzip.h" role="src" /> ! 958: <file name="phar_internal.h" role="src" /> ! 959: <file name="phar_object.c" role="src" /> ! 960: <file name="phar_path_check.c" role="src" /> ! 961: <file name="phar_path_check.re" role="src" /> ! 962: <file name="php_phar.h" role="src" /> ! 963: <file name="shortarc.php" role="php" /> ! 964: <file name="stream.c" role="src" /> ! 965: <file name="stream.h" role="src" /> ! 966: <file name="stub.h" role="src" /> ! 967: <file name="tar.c" role="src" /> ! 968: <file name="tar.h" role="src" /> ! 969: <file name="TODO" role="doc" /> ! 970: <file name="util.c" role="src" /> ! 971: <file name="zip.c" role="src" /> ! 972: </dir> <!-- / --> ! 973: </contents> ! 974: <dependencies> ! 975: <required> ! 976: <php> ! 977: <min>5.2.1</min> ! 978: </php> ! 979: <pearinstaller> ! 980: <min>1.4.3</min> ! 981: </pearinstaller> ! 982: </required> ! 983: <optional> ! 984: <package> ! 985: <name>bz2</name> ! 986: <channel>pecl.php.net</channel> ! 987: <providesextension>bz2</providesextension> ! 988: </package> ! 989: <package> ! 990: <name>hash</name> ! 991: <channel>pecl.php.net</channel> ! 992: <providesextension>hash</providesextension> ! 993: </package> ! 994: <extension> ! 995: <name>spl</name> ! 996: </extension> ! 997: <extension> ! 998: <name>zlib</name> ! 999: </extension> ! 1000: </optional> ! 1001: </dependencies> ! 1002: <providesextension>phar</providesextension> ! 1003: <extsrcrelease /> ! 1004: <changelog> ! 1005: <release> ! 1006: <version> ! 1007: <release>2.0.0</release> ! 1008: <api>1.1.1</api> ! 1009: </version> ! 1010: <stability> ! 1011: <release>beta</release> ! 1012: <api>beta</api> ! 1013: </stability> ! 1014: <date>2009-07-26</date> ! 1015: <license uri="http://www.php.net/license">PHP License</license> ! 1016: <notes> ! 1017: BC BREAKING RELEASE ! 1018: BC breaks: ! 1019: * Phar object Compression API is rewritten. Use Phar::compress() and decompress(), ! 1020: Phar::compressFiles()/decompressFiles() and PharFileInfo->compress()/decompress(). ! 1021: * phar.extract_list and Phar::getExtractList() are removed ! 1022: ! 1023: Major feature functionality release ! 1024: * phar.cache_list allows web-based phar applications to run at equal or faster than ! 1025: their on-disk equivalent [Greg] ! 1026: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1027: * add support for tar-based and zip-based phar archives [Greg] ! 1028: * add support for OpenSSL-based true signatures [Greg] ! 1029: * add support for signatures to tar-based phar archives [Greg] ! 1030: * add Phar::isFileFormat() [Greg] ! 1031: * add Phar::convertToExecutable(), Phar::convertToData() [Greg] ! 1032: * add Phar::compress() [Greg] ! 1033: * rename Phar::compressAllFiles() to compressFiles(), uncompressAllFiles() to ! 1034: decompressFiles() [Greg] ! 1035: * conversion to compressed or to other file formats automatically copies the archive ! 1036: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1037: * add Phar::webPhar() for running a web-based application unmodified ! 1038: directly from a phar archive [Greg] ! 1039: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1040: relative paths within a phar via Phar::interceptFileFuncs() ! 1041: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1042: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1043: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1044: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1045: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1046: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1047: * implement Phar::copy(string $from, string $to) [Greg] ! 1048: * implement Phar::running(), returns path or URL to currently executed phar ! 1049: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1050: * implement Phar::buildFromDirectory(string $base_directory[, string $regex]) [Steph] ! 1051: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1052: * add Phar::delete() [Greg] ! 1053: * implement Phar::unlinkArchive() [Greg] ! 1054: ! 1055: Security addition ! 1056: * aliases are validated so that they contain no directory separators as intended ! 1057: * on conversion to other formats, user-supplied aliases are validated ! 1058: ! 1059: Changes since 2.0.0RC2: ! 1060: fixed PHP Bug #49021: phar tar signature algorithm reports as Unknown (0) in ! 1061: getSignature() call ! 1062: fixed PHP Bug #49020: phar misinterprets ustar long filename standard ! 1063: fixed PHP Bug #49018: phar tar stores long filenames with prefix/name reversed ! 1064: fixed PHP Bug #48791: open office files always reported as corrupted ! 1065: fixed PHP Bug #48783: make install will fail saying phar file exists ! 1066: fixed PHP Bug #48740: PHAR install fails when INSTALL_ROOT is not the final install location ! 1067: fixed PHP Bug #48681: openssl signature verification for tar archives broken ! 1068: fixed PHP Bug #48377: error message unclear on converting phar with existing file ! 1069: fixed isset() on sub-directories (isset("blah") if file "blah/foo.php" exists) ! 1070: ! 1071: make phar work in PHP 6 ! 1072: Changes since 2.0.0RC1: ! 1073: security vulnerability in handling of long tar filenames fixed ! 1074: fixed PECL Bug #14646: phar error message unclear with php stream wrappers ! 1075: fixed PECL Bug #16338: php_stream_copy_to_stream{,_ex}() ! 1076: fixed PHP Bug #48257: PharData throws an exception with non-phar tar ! 1077: fixed PHP Bug #47085: rename() returns true even if the file in PHAR does not exist ! 1078: fixed PHP Bug #46032: PharData::__construct() - wrong memory read ! 1079: fixed PHP Bug #46060: Phar::addEmptyDir() breaks ! 1080: fixed PHP Bug #45907: undefined reference to 'PHP_SHA512Init' ! 1081: fixed PHP Bug #45726: PHP_Archive / Archive.php missing ! 1082: Changes since 2.0.0a2: many bugfixes, removal of phar.extract_list, compression API refactored, ! 1083: conversion API refactored ! 1084: Changes since 2.0.0b1: addition of phar.cache_list, many performance improvements and bugfixes ! 1085: implement OpenSSL asynchronous true package signing ! 1086: add support for package signing to tar-based archives ! 1087: require PHP 5.2.1+ ! 1088: </notes> ! 1089: </release> ! 1090: <release> ! 1091: <version> ! 1092: <release>2.0.0RC2</release> ! 1093: <api>1.1.1</api> ! 1094: </version> ! 1095: <stability> ! 1096: <release>beta</release> ! 1097: <api>beta</api> ! 1098: </stability> ! 1099: <date>2009-06-04</date> ! 1100: <license uri="http://www.php.net/license">PHP License</license> ! 1101: <notes> ! 1102: BC BREAKING RELEASE ! 1103: BC breaks: ! 1104: * Phar object Compression API is rewritten. Use Phar::compress() and decompress(), ! 1105: Phar::compressFiles()/decompressFiles() and PharFileInfo->compress()/decompress(). ! 1106: * phar.extract_list and Phar::getExtractList() are removed ! 1107: ! 1108: Major feature functionality release ! 1109: * phar.cache_list allows web-based phar applications to run at equal or faster than ! 1110: their on-disk equivalent [Greg] ! 1111: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1112: * add support for tar-based and zip-based phar archives [Greg] ! 1113: * add support for OpenSSL-based true signatures [Greg] ! 1114: * add support for signatures to tar-based phar archives [Greg] ! 1115: * add Phar::isFileFormat() [Greg] ! 1116: * add Phar::convertToExecutable(), Phar::convertToData() [Greg] ! 1117: * add Phar::compress() [Greg] ! 1118: * rename Phar::compressAllFiles() to compressFiles(), uncompressAllFiles() to ! 1119: decompressFiles() [Greg] ! 1120: * conversion to compressed or to other file formats automatically copies the archive ! 1121: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1122: * add Phar::webPhar() for running a web-based application unmodified ! 1123: directly from a phar archive [Greg] ! 1124: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1125: relative paths within a phar via Phar::interceptFileFuncs() ! 1126: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1127: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1128: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1129: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1130: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1131: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1132: * implement Phar::copy(string $from, string $to) [Greg] ! 1133: * implement Phar::running(), returns path or URL to currently executed phar ! 1134: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1135: * implement Phar::buildFromDirectory(string $base_directory[, string $regex]) [Steph] ! 1136: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1137: * add Phar::delete() [Greg] ! 1138: * implement Phar::unlinkArchive() [Greg] ! 1139: ! 1140: Security addition ! 1141: * aliases are validated so that they contain no directory separators as intended ! 1142: * on conversion to other formats, user-supplied aliases are validated ! 1143: ! 1144: Changes since 2.0.0RC1: ! 1145: security vulnerability in handling of long tar filenames fixed ! 1146: fixed PECL Bug #14646: phar error message unclear with php stream wrappers ! 1147: fixed PECL Bug #16338: php_stream_copy_to_stream{,_ex}() ! 1148: fixed PHP Bug #48257: PharData throws an exception with non-phar tar ! 1149: fixed PHP Bug #47085: rename() returns true even if the file in PHAR does not exist ! 1150: fixed PHP Bug #46032: PharData::__construct() - wrong memory read ! 1151: fixed PHP Bug #46060: Phar::addEmptyDir() breaks ! 1152: fixed PHP Bug #45907: undefined reference to 'PHP_SHA512Init' ! 1153: fixed PHP Bug #45726: PHP_Archive / Archive.php missing ! 1154: Changes since 2.0.0a2: many bugfixes, removal of phar.extract_list, compression API refactored, ! 1155: conversion API refactored ! 1156: Changes since 2.0.0b1: addition of phar.cache_list, many performance improvements and bugfixes ! 1157: implement OpenSSL asynchronous true package signing ! 1158: add support for package signing to tar-based archives ! 1159: require PHP 5.2.1+ ! 1160: </notes> ! 1161: </release> ! 1162: <release> ! 1163: <version> ! 1164: <release>2.0.0RC1</release> ! 1165: <api>1.1.1</api> ! 1166: </version> ! 1167: <stability> ! 1168: <release>beta</release> ! 1169: <api>beta</api> ! 1170: </stability> ! 1171: <date>2008-08-31</date> ! 1172: <license uri="http://www.php.net/license">PHP License</license> ! 1173: <notes> ! 1174: BC BREAKING RELEASE ! 1175: BC breaks: ! 1176: * Phar object Compression API is rewritten. Use Phar::compress() and decompress(), ! 1177: Phar::compressFiles()/decompressFiles() and PharFileInfo->compress()/decompress(). ! 1178: * phar.extract_list and Phar::getExtractList() are removed ! 1179: ! 1180: Major feature functionality release ! 1181: * phar.cache_list allows web-based phar applications to run at equal or faster than ! 1182: their on-disk equivalent [Greg] ! 1183: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1184: * add support for tar-based and zip-based phar archives [Greg] ! 1185: * add support for OpenSSL-based true signatures [Greg] ! 1186: * add support for signatures to tar-based phar archives [Greg] ! 1187: * add Phar::isFileFormat() [Greg] ! 1188: * add Phar::convertToExecutable(), Phar::convertToData() [Greg] ! 1189: * add Phar::compress() [Greg] ! 1190: * rename Phar::compressAllFiles() to compressFiles(), uncompressAllFiles() to ! 1191: decompressFiles() [Greg] ! 1192: * conversion to compressed or to other file formats automatically copies the archive ! 1193: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1194: * add Phar::webPhar() for running a web-based application unmodified ! 1195: directly from a phar archive [Greg] ! 1196: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1197: relative paths within a phar via Phar::interceptFileFuncs() ! 1198: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1199: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1200: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1201: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1202: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1203: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1204: * implement Phar::copy(string $from, string $to) [Greg] ! 1205: * implement Phar::running(), returns path or URL to currently executed phar ! 1206: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1207: * implement Phar::buildFromDirectory(string $base_directory[, string $regex]) [Steph] ! 1208: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1209: * add Phar::delete() [Greg] ! 1210: * implement Phar::unlinkArchive() [Greg] ! 1211: ! 1212: Security addition ! 1213: * aliases are validated so that they contain no directory separators as intended ! 1214: * on conversion to other formats, user-supplied aliases are validated ! 1215: ! 1216: Changes since 2.0.0a2: many bugfixes, removal of phar.extract_list, compression API refactored, ! 1217: conversion API refactored ! 1218: Changes since 2.0.0b1: addition of phar.cache_list, many performance improvements and bugfixes ! 1219: implement OpenSSL asynchronous true package signing ! 1220: add support for package signing to tar-based archives ! 1221: require PHP 5.2.1+ ! 1222: </notes> ! 1223: </release> ! 1224: <release> ! 1225: <version> ! 1226: <release>2.0.0b1</release> ! 1227: <api>1.1.1</api> ! 1228: </version> ! 1229: <stability> ! 1230: <release>beta</release> ! 1231: <api>beta</api> ! 1232: </stability> ! 1233: <date>2008-05-12</date> ! 1234: <license uri="http://www.php.net/license">PHP License</license> ! 1235: <notes> ! 1236: BC BREAKING RELEASE ! 1237: BC breaks: ! 1238: * Phar object Compression API is rewritten. Use Phar::compress() and decompress(), ! 1239: Phar::compressFiles()/decompressFiles() and PharFileInfo->compress()/decompress(). ! 1240: * phar.extract_list and Phar::getExtractList() are removed ! 1241: ! 1242: Major feature functionality release ! 1243: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1244: * add support for tar-based and zip-based phar archives [Greg] ! 1245: * add Phar::isFileFormat() [Greg] ! 1246: * add Phar::convertToExecutable(), Phar::convertToData() [Greg] ! 1247: * add Phar::compress() [Greg] ! 1248: * rename Phar::compressAllFiles() to compressFiles(), uncompressAllFiles() to ! 1249: decompressFiles() [Greg] ! 1250: * conversion to compressed or to other file formats automatically copies the archive ! 1251: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1252: * add Phar::webPhar() for running a web-based application unmodified ! 1253: directly from a phar archive [Greg] ! 1254: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1255: relative paths within a phar via Phar::interceptFileFuncs() ! 1256: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1257: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1258: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1259: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1260: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1261: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1262: * implement Phar::copy(string $from, string $to) [Greg] ! 1263: * implement Phar::running(), returns path or URL to currently executed phar ! 1264: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1265: * implement Phar::buildFromDirectory(string $base_directory[, string $regex]) [Steph] ! 1266: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1267: * add Phar::delete() [Greg] ! 1268: * implement Phar::unlinkArchive() [Greg] ! 1269: ! 1270: Security addition ! 1271: * aliases are validated so that they contain no directory separators as intended ! 1272: * on conversion to other formats, user-supplied aliases are validated ! 1273: ! 1274: Changes since 2.0.0a2: many bugfixes, removal of phar.extract_list, compression API refactored, ! 1275: conversion API refactored ! 1276: </notes> ! 1277: </release> ! 1278: <release> ! 1279: <version> ! 1280: <release>2.0.0a2</release> ! 1281: <api>1.1.1</api> ! 1282: </version> ! 1283: <stability> ! 1284: <release>alpha</release> ! 1285: <api>alpha</api> ! 1286: </stability> ! 1287: <date>2008-03-27</date> ! 1288: <license uri="http://www.php.net/license">PHP License</license> ! 1289: <notes> ! 1290: Major feature functionality release ! 1291: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1292: * add support for tar-based and zip-based phar archives [Greg] ! 1293: * add Phar::isTar(), Phar::isZip(), and Phar::isPhar() [Greg] ! 1294: * add Phar::convertToTar(), Phar::convertToZip(), and Phar::convertToPhar() [Greg] ! 1295: * add Phar::compress() [Greg] ! 1296: * conversion to compressed or to other file formats automatically copies the archive ! 1297: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1298: * add Phar::webPhar() for running a web-based application unmodified ! 1299: directly from a phar archive [Greg] ! 1300: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1301: relative paths within a phar via Phar::interceptFileFuncs() ! 1302: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1303: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1304: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1305: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1306: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1307: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1308: * implement Phar::copy(string $from, string $to) [Greg] ! 1309: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1310: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1311: * add Phar::delete() [Greg] ! 1312: ! 1313: Changes since 2.0.0a1: fix build in PHP 5.2 ! 1314: </notes> ! 1315: </release> ! 1316: <release> ! 1317: <version> ! 1318: <release>2.0.0a1</release> ! 1319: <api>1.1.1</api> ! 1320: </version> ! 1321: <stability> ! 1322: <release>alpha</release> ! 1323: <api>alpha</api> ! 1324: </stability> ! 1325: <date>2008-03-26</date> ! 1326: <license uri="http://www.php.net/license">PHP License</license> ! 1327: <notes> ! 1328: Major feature functionality release ! 1329: * new default stub allows running of phar-based phars without phar extension [Greg/Steph] ! 1330: * add support for tar-based and zip-based phar archives [Greg] ! 1331: * add Phar::isTar(), Phar::isZip(), and Phar::isPhar() [Greg] ! 1332: * add Phar::convertToTar(), Phar::convertToZip(), and Phar::convertToPhar() [Greg] ! 1333: * add Phar::compress() [Greg] ! 1334: * conversion to compressed or to other file formats automatically copies the archive ! 1335: to a new extension (i.e. ".phar" to ".phar.tar" or ".tar" to ".tar.gz") [Steph] ! 1336: * add Phar::webPhar() for running a web-based application unmodified ! 1337: directly from a phar archive [Greg] ! 1338: * file functions (fopen-based and stat-based) can be instructed to only look for ! 1339: relative paths within a phar via Phar::interceptFileFuncs() ! 1340: * add PharData class to allow manipulation/creation of non-executable tar and zip archives. [Steph] ! 1341: non-executable tar/zip manipulation is allowed even when phar.readonly=1 [Greg] ! 1342: * paths with . and .. work (phar://blah.phar/a/../b.php => phar://blah.phar/b.php) [Greg] ! 1343: * add support for mkdir()/rmdir() and support for empty directories to phar file format [Greg] ! 1344: * add option to compress the entire phar file for phar/tar file format [Greg] ! 1345: * implement Phar::isCompressed() returning 0, Phar::GZ or Phar::BZ2 [Greg] ! 1346: * implement Phar::copy(string $from, string $to) [Greg] ! 1347: * implement Phar::buildFromIterator(Iterator $it[, string $base_directory]) [Greg] ! 1348: * implement Phar::mount() for mounting external paths or files to locations inside a phar [Greg] ! 1349: * add Phar::delete() [Greg] ! 1350: </notes> ! 1351: </release> ! 1352: <release> ! 1353: <version> ! 1354: <release>1.2.1</release> ! 1355: <api>1.1.0</api> ! 1356: </version> ! 1357: <stability> ! 1358: <release>stable</release> ! 1359: <api>stable</api> ! 1360: </stability> ! 1361: <date>2007-08-24</date> ! 1362: <license uri="http://www.php.net/license">PHP License</license> ! 1363: <notes> ! 1364: * add Phar::setAlias() [Greg] ! 1365: * fix too many open file handles issue [Greg] ! 1366: * fix rename [Greg] ! 1367: * add Phar::getAlias() [Marcus] ! 1368: * Made -a optional in pack subcommand of phar.phar [Marcus] ! 1369: * Fix issue with apache module and extracted archives [Marcus] ! 1370: * Send all error messages to stderr in phar.phar [Marcus] ! 1371: * Added new subcommands add and delete to phar.phar [Marcus] ! 1372: * Made Phar::loadPhar() and Phar::mapPhar() ignore extracted archives [Marcus] ! 1373: * Fix issue with compressed entries and uncompressing entries [Marcus] ! 1374: * Verify stubs before writing [Marcus] ! 1375: * Always use longest stub end to avoid issues with length field [Marcus] ! 1376: </notes> ! 1377: </release> ! 1378: <release> ! 1379: <version> ! 1380: <release>1.2.0</release> ! 1381: <api>1.1.0</api> ! 1382: </version> ! 1383: <stability> ! 1384: <release>stable</release> ! 1385: <api>stable</api> ! 1386: </stability> ! 1387: <date>2007-05-18</date> ! 1388: <license uri="http://www.php.net/license">PHP License</license> ! 1389: <notes> ! 1390: * add PharFileInfo::hasMetadata(), PharFileInfo::delMetadata() [Marcus] ! 1391: * add Phar::hasMetadata(), Phar::delMetadata() [Marcus] ! 1392: * fix Phar::CanWrite() [Marcus] ! 1393: * add preliminary phar command (phar.php) [Marcus] ! 1394: * add phar command (phar.phar) [Marcus] ! 1395: * list all available compression methods using Phar::getSupportedCompression() [Marcus] ! 1396: * remove RINIT [Marcus] ! 1397: </notes> ! 1398: </release> ! 1399: <release> ! 1400: <version> ! 1401: <release>1.1.0</release> ! 1402: <api>1.1.0</api> ! 1403: </version> ! 1404: <stability> ! 1405: <release>stable</release> ! 1406: <api>stable</api> ! 1407: </stability> ! 1408: <date>2007-04-12</date> ! 1409: <license uri="http://www.php.net/license">PHP License</license> ! 1410: <notes> ! 1411: * implement ability connect a phar file 'phar://whatever' to a directory. That way all ! 1412: access to that phar archive are directed to the extracted directory. This ! 1413: allows to have the installed files and the archive keep the same includes. ! 1414: [Marcus] ! 1415: * implement SHA-2 (256, 512) support [Marcus] ! 1416: * implement setSignatureAlgorithm() and Phar::MD5 Phar::SHA1 Phar::SHA256 Phar::SHA512 Phar::PGP to ! 1417: choose the kind of signature to use (PGP falls back to SHA1) [Greg] ! 1418: </notes> ! 1419: </release> ! 1420: <release> ! 1421: <version> ! 1422: <release>1.0.1</release> ! 1423: <api>1.0.1</api> ! 1424: </version> ! 1425: <stability> ! 1426: <release>stable</release> ! 1427: <api>stable</api> ! 1428: </stability> ! 1429: <date>2007-03-28</date> ! 1430: <license uri="http://www.php.net/license">PHP License</license> ! 1431: <notes> ! 1432: * Fix return value of unlink() and rename() when used for phar archievs. [Marcus] ! 1433: </notes> ! 1434: </release> ! 1435: <release> ! 1436: <version> ! 1437: <release>1.0.0</release> ! 1438: <api>1.0.0</api> ! 1439: </version> ! 1440: <stability> ! 1441: <release>stable</release> ! 1442: <api>stable</api> ! 1443: </stability> ! 1444: <date>2007-03-26</date> ! 1445: <license uri="http://www.php.net/license">PHP License</license> ! 1446: <notes> ! 1447: *BACKWARDS COMPATIBILITY BREAK* ! 1448: Rename Phar->begin/isFlushingToPhar/commit to startBuffering/isBuffering/stopBuffering ! 1449: Note that isBuffering() returns the opposite value to isFlushingToPhar() ! 1450: </notes> ! 1451: </release> ! 1452: </changelog> ! 1453: </package>