| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 | 
							- <?php
 
- // release script
 
- // PHP 5.0 only
 
- if (php_sapi_name() != 'cli') {
 
-     echo 'Release script cannot be called from web-browser.';
 
-     exit;
 
- }
 
- if (!isset($argv[1])) {
 
-     echo
 
- 'php release.php [version]
 
-     HTML Purifier release script
 
- ';
 
-     exit;
 
- }
 
- $version = trim($argv[1]);
 
- // Bump version numbers:
 
- // ...in VERSION
 
- file_put_contents('VERSION', $version);
 
- // ...in NEWS
 
- if ($is_dev = (strpos($version, 'dev') === false)) {
 
-   $date = date('Y-m-d');
 
-   $news_c = str_replace(
 
-       $l = "$version, unknown release date",
 
-       "$version, released $date",
 
-       file_get_contents('NEWS'),
 
-       $c
 
-   );
 
-   if (!$c) {
 
-       echo 'Could not update NEWS, missing ' . $l . PHP_EOL;
 
-       exit;
 
-   } elseif ($c > 1) {
 
-       echo 'More than one release declaration in NEWS replaced' . PHP_EOL;
 
-       exit;
 
-   }
 
-   file_put_contents('NEWS', $news_c);
 
- }
 
- // ...in Doxyfile
 
- $doxyfile_c = preg_replace(
 
-     '/(?<=PROJECT_NUMBER {9}= )[^\s]+/m', // brittle
 
-     $version,
 
-     file_get_contents('Doxyfile'),
 
-     1, $c
 
- );
 
- if (!$c) {
 
-     echo 'Could not update Doxyfile, missing PROJECT_NUMBER.' . PHP_EOL;
 
-     exit;
 
- }
 
- file_put_contents('Doxyfile', $doxyfile_c);
 
- // ...in HTMLPurifier.php
 
- $htmlpurifier_c = file_get_contents('library/HTMLPurifier.php');
 
- $htmlpurifier_c = preg_replace(
 
-     '/HTML Purifier .+? - /',
 
-     "HTML Purifier $version - ",
 
-     $htmlpurifier_c,
 
-     1, $c
 
- );
 
- if (!$c) {
 
-     echo 'Could not update HTMLPurifier.php, missing HTML Purifier [version] header.' . PHP_EOL;
 
-     exit;
 
- }
 
- $htmlpurifier_c = preg_replace(
 
-     '/public \$version = \'.+?\';/',
 
-     "public \$version = '$version';",
 
-     $htmlpurifier_c,
 
-     1, $c
 
- );
 
- if (!$c) {
 
-     echo 'Could not update HTMLPurifier.php, missing public $version.' . PHP_EOL;
 
-     exit;
 
- }
 
- $htmlpurifier_c = preg_replace(
 
-     '/const VERSION = \'.+?\';/',
 
-     "const VERSION = '$version';",
 
-     $htmlpurifier_c,
 
-     1, $c
 
- );
 
- if (!$c) {
 
-     echo 'Could not update HTMLPurifier.php, missing const $version.' . PHP_EOL;
 
-     exit;
 
- }
 
- file_put_contents('library/HTMLPurifier.php', $htmlpurifier_c);
 
- $config_c = file_get_contents('library/HTMLPurifier/Config.php');
 
- $config_c = preg_replace(
 
-     '/public \$version = \'.+?\';/',
 
-     "public \$version = '$version';",
 
-     $config_c,
 
-     1, $c
 
- );
 
- if (!$c) {
 
-     echo 'Could not update Config.php, missing public $version.' . PHP_EOL;
 
-     exit;
 
- }
 
- file_put_contents('library/HTMLPurifier/Config.php', $config_c);
 
- passthru('maintenance/flush.sh');
 
- if ($is_dev) echo "Review changes, write something in WHATSNEW and FOCUS, and then commit with log 'Release $version.'" . PHP_EOL;
 
- else echo "Numbers updated to dev, no other modifications necessary!";
 
- // vim: et sw=4 sts=4
 
 
  |