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 ( 'php maintenance/flush.php' ); 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