1
0
mirror of https://github.com/php/web-php.git synced 2026-03-23 23:02:13 +01:00
Files
archived-web-php/bin/bumpRelease
Peter Kokot dd8d8bf863 Sync final and leading newlines
This patch adds some missing newlines, trims some multiple redundant
final newlines into a single one, and trims few redundant leading
newlines.

According to POSIX, a line is a sequence of zero or more non-'<newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
2018-10-17 12:37:26 +02:00

45 lines
1.3 KiB
PHP
Executable File

#!/usr/local/bin/php
<?php
PHP_SAPI == 'cli' or die("Please run this script using the cli sapi");
require "include/version.inc";
require "include/releases.inc";
if ($_SERVER['argc'] < 1) {
fwrite(STDERR, "Usgae: {$_SERVER['argv'][0]} major_version [ minor_version ]\n");
exit(1);
}
$major = intval($_SERVER['argv'][1]);
isset($RELEASES[$major]) or die("Unkown major version $major");
if (isset($_SERVER['argv'][2])) {
$minor = intval($_SERVER['argv'][2]);
$version_varname = "PHP_{$major}_{$minor}_VERSION";
isset($$version_varname) or die("Unknown minor version $major.$minor");
$version = $$version_varname;
$info = $RELEASES[$major][$version];
} else {
// Calling without a minor will just grab the most recent minor.
list($version, $info) = each($RELEASES[$major]);
}
$info["date"] = ${"PHP_{$major}_DATE"};
$info["museum"] = false;
if (is_bool($info["announcement"]) && $info["announcement"]) {
$info["announcement"] = array("English" => "/releases/" . str_replace(".", "_", $version) . ".php");
}
$OLDRELEASES[$major] = array_merge(
array($version => $info),
$OLDRELEASES[$major]
);
file_put_contents("include/releases.inc", [
"<?php\n\$OLDRELEASES = ",
var_export($OLDRELEASES, true),
";\n",
]);
echo "This was fun \o/\nI hope you remembered to run this script *before* updating include/version.inc... :)\n";