1
0
mirror of https://github.com/php/web-php.git synced 2026-03-23 23:02:13 +01:00

Cleanup version.inc

With this diff, version.inc will ONLY export one "variable" named
$RELEASES which will continue to have the same format as previous.

It will also export a helper method named release_get_latest()
for quickly accessing the most recent version published.

All other globals previously exported by this function are
no longer used on web-php.
This commit is contained in:
Sara Golemon
2019-06-05 17:39:48 -04:00
parent bd535899a5
commit 8311184380
4 changed files with 125 additions and 116 deletions

View File

@@ -137,7 +137,8 @@ if (preg_match("!^get/([^/]+)/from/([^/]+)(/mirror)?$!", $URI, $dlinfo)) {
$df = $dlinfo[1];
if(strpos($df, "7-LATEST") !== false) {
include_once __DIR__ . "/include/version.inc";
$df = str_replace("7-LATEST", $PHP_7_VERSION, $df);
[ $latest ] = release_get_latest();
$df = str_replace("7-LATEST", $latest, $df);
}
$mr = "https://www.php.net/";

View File

@@ -2,7 +2,6 @@
$_SERVER['BASE_PAGE'] = 'gpg-keys.php';
include_once __DIR__ . '/include/prepend.inc';
include_once __DIR__ . '/include/gpg-keys.inc';
include_once __DIR__ . '/include/version.inc';
site_header('GPG Keys');
?>

View File

@@ -15,122 +15,129 @@
* ),
* );
*/
/* PHP 7.3 Release */
$PHP_7_3_RC = false; // Current RC version (e.g., '7.3.1RC1') or false
$PHP_7_3_RC_DATE = "16 May 2019";
$RELEASES = (function() {
/* PHP 7.3 Release */
$PHP_7_3_VERSION = "7.3.6";
$PHP_7_3_DATE = "30 May 2019";
$PHP_7_3_TAGS = ['security']; // Set to ['security'] for security releases.
$PHP_7_3_SHA256 = array(
"tar.bz2" => "1e5ac8700154835c0910e3a814517da9b87bb4a82cc7011fea1a82096b6f6f77",
"tar.gz" => "72fbf223ff8659a61eed08eebffb4ede0256e7a69d2151ae24affa5377b70bb8",
"tar.xz" => "fefc8967daa30ebc375b2ab2857f97da94ca81921b722ddac86b29e15c54a164",
);
$PHP_7_3_VERSION = "7.3.6";
$PHP_7_3_DATE = "30 May 2019";
$PHP_7_3_TAGS = ['security']; // Set to ['security'] for security releases.
$PHP_7_3_SHA256 = array(
"tar.bz2" => "1e5ac8700154835c0910e3a814517da9b87bb4a82cc7011fea1a82096b6f6f77",
"tar.gz" => "72fbf223ff8659a61eed08eebffb4ede0256e7a69d2151ae24affa5377b70bb8",
"tar.xz" => "fefc8967daa30ebc375b2ab2857f97da94ca81921b722ddac86b29e15c54a164",
);
/* PHP 7.2 Release */
$PHP_7_2_VERSION = "7.2.19";
$PHP_7_2_DATE = "30 May 2019";
$PHP_7_2_TAGS = ['security']; // Set to ['security'] for security releases.
$PHP_7_2_SHA256 = array(
"tar.bz2" => "ebd0b1f375fe07ed4925acc213d2f5ef76a61bd5de174e7b666b98421a90a099",
"tar.gz" => "1cd2266a058f3224d3cba594540045542606996f026eeef96747f27f6b3d22b6",
"tar.xz" => "4ffa2404a88d60e993a9fe69f829ebec3eb1e006de41b6048ce5e91bbeaa9282",
);
/* PHP 7.2 Release */
$PHP_7_2_RC = false; // Current RC version (e.g., '7.2.1RC1') or false
$PHP_7_2_RC_DATE = "18 Apr 2019";
/* PHP 7.1 Release */
$PHP_7_1_VERSION = "7.1.30";
$PHP_7_1_DATE = "30 May 2019";
$PHP_7_1_TAGS = ['security'];
$PHP_7_1_SHA256 = array(
'tar.bz2' => '664850774fca19d2710b9aa35e9ae91214babbde9cd8d27fd3479cc97171ecb3',
'tar.gz' => 'a604edf85d5dfc28e6ff3016dad3954c50b93db69afc42295178b4fdf42e026c',
'tar.xz' => '6310599811536dbe87e4bcf212bf93196bdfaff519d0c821e4c0068efd096a7c',
);
$PHP_7_2_VERSION = "7.2.19";
$PHP_7_2_DATE = "30 May 2019";
$PHP_7_2_TAGS = ['security']; // Set to ['security'] for security releases.
$PHP_7_2_SHA256 = array(
"tar.bz2" => "ebd0b1f375fe07ed4925acc213d2f5ef76a61bd5de174e7b666b98421a90a099",
"tar.gz" => "1cd2266a058f3224d3cba594540045542606996f026eeef96747f27f6b3d22b6",
"tar.xz" => "4ffa2404a88d60e993a9fe69f829ebec3eb1e006de41b6048ce5e91bbeaa9282",
);
/* PHP 7.1 Release */
$PHP_7_1_RC = false; // Current RC version (e.g., '5.6.7RC1') or false
$PHP_7_1_RC_DATE = "25 Oct 2018";
$PHP_7_1_VERSION = "7.1.30";
$PHP_7_1_DATE = "30 May 2019";
$PHP_7_1_TAGS = ['security'];
$PHP_7_1_SHA256 = array(
'tar.bz2' => '664850774fca19d2710b9aa35e9ae91214babbde9cd8d27fd3479cc97171ecb3',
'tar.gz' => 'a604edf85d5dfc28e6ff3016dad3954c50b93db69afc42295178b4fdf42e026c',
'tar.xz' => '6310599811536dbe87e4bcf212bf93196bdfaff519d0c821e4c0068efd096a7c',
);
$RELEASES = array(
7 => array(
$PHP_7_3_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_3_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_3_VERSION.tar.bz2",
"name" => "PHP $PHP_7_3_VERSION (tar.bz2)",
"sha256" => $PHP_7_3_SHA256["tar.bz2"],
"date" => $PHP_7_3_DATE,
return array(
7 => array(
$PHP_7_3_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_3_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_3_VERSION.tar.bz2",
"name" => "PHP $PHP_7_3_VERSION (tar.bz2)",
"sha256" => $PHP_7_3_SHA256["tar.bz2"],
"date" => $PHP_7_3_DATE,
),
array(
"filename" => "php-$PHP_7_3_VERSION.tar.gz",
"name" => "PHP $PHP_7_3_VERSION (tar.gz)",
"sha256" => $PHP_7_3_SHA256["tar.gz"],
"date" => $PHP_7_3_DATE,
),
array(
"filename" => "php-$PHP_7_3_VERSION.tar.xz",
"name" => "PHP $PHP_7_3_VERSION (tar.xz)",
"sha256" => $PHP_7_3_SHA256["tar.xz"],
"date" => $PHP_7_3_DATE,
),
),
array(
"filename" => "php-$PHP_7_3_VERSION.tar.gz",
"name" => "PHP $PHP_7_3_VERSION (tar.gz)",
"sha256" => $PHP_7_3_SHA256["tar.gz"],
"date" => $PHP_7_3_DATE,
),
$PHP_7_2_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_2_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_2_VERSION.tar.bz2",
"name" => "PHP $PHP_7_2_VERSION (tar.bz2)",
"sha256" => $PHP_7_2_SHA256["tar.bz2"],
"date" => $PHP_7_2_DATE,
),
array(
"filename" => "php-$PHP_7_2_VERSION.tar.gz",
"name" => "PHP $PHP_7_2_VERSION (tar.gz)",
"sha256" => $PHP_7_2_SHA256["tar.gz"],
"date" => $PHP_7_2_DATE,
),
array(
"filename" => "php-$PHP_7_2_VERSION.tar.xz",
"name" => "PHP $PHP_7_2_VERSION (tar.xz)",
"sha256" => $PHP_7_2_SHA256["tar.xz"],
"date" => $PHP_7_2_DATE,
),
),
array(
"filename" => "php-$PHP_7_3_VERSION.tar.xz",
"name" => "PHP $PHP_7_3_VERSION (tar.xz)",
"sha256" => $PHP_7_3_SHA256["tar.xz"],
"date" => $PHP_7_3_DATE,
),
$PHP_7_1_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_1_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_1_VERSION.tar.bz2",
"name" => "PHP $PHP_7_1_VERSION (tar.bz2)",
"sha256" => $PHP_7_1_SHA256["tar.bz2"],
"date" => $PHP_7_1_DATE,
),
array(
"filename" => "php-$PHP_7_1_VERSION.tar.gz",
"name" => "PHP $PHP_7_1_VERSION (tar.gz)",
"sha256" => $PHP_7_1_SHA256["tar.gz"],
"date" => $PHP_7_1_DATE,
),
array(
"filename" => "php-$PHP_7_1_VERSION.tar.xz",
"name" => "PHP $PHP_7_1_VERSION (tar.xz)",
"sha256" => $PHP_7_1_SHA256["tar.xz"],
"date" => $PHP_7_1_DATE,
),
),
),
),
$PHP_7_2_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_2_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_2_VERSION.tar.bz2",
"name" => "PHP $PHP_7_2_VERSION (tar.bz2)",
"sha256" => $PHP_7_2_SHA256["tar.bz2"],
"date" => $PHP_7_2_DATE,
),
array(
"filename" => "php-$PHP_7_2_VERSION.tar.gz",
"name" => "PHP $PHP_7_2_VERSION (tar.gz)",
"sha256" => $PHP_7_2_SHA256["tar.gz"],
"date" => $PHP_7_2_DATE,
),
array(
"filename" => "php-$PHP_7_2_VERSION.tar.xz",
"name" => "PHP $PHP_7_2_VERSION (tar.xz)",
"sha256" => $PHP_7_2_SHA256["tar.xz"],
"date" => $PHP_7_2_DATE,
),
),
),
$PHP_7_1_VERSION => array(
"announcement" => true,
"tags" => $PHP_7_1_TAGS,
"source" => array(
array(
"filename" => "php-$PHP_7_1_VERSION.tar.bz2",
"name" => "PHP $PHP_7_1_VERSION (tar.bz2)",
"sha256" => $PHP_7_1_SHA256["tar.bz2"],
"date" => $PHP_7_1_DATE,
),
array(
"filename" => "php-$PHP_7_1_VERSION.tar.gz",
"name" => "PHP $PHP_7_1_VERSION (tar.gz)",
"sha256" => $PHP_7_1_SHA256["tar.gz"],
"date" => $PHP_7_1_DATE,
),
array(
"filename" => "php-$PHP_7_1_VERSION.tar.xz",
"name" => "PHP $PHP_7_1_VERSION (tar.xz)",
"sha256" => $PHP_7_1_SHA256["tar.xz"],
"date" => $PHP_7_1_DATE,
),
),
),
),
);
);
})();
$PHP_7_VERSION = $PHP_7_3_VERSION; // Some scripts require this set
$PHP_7_DATE = $PHP_7_3_DATE; // Used by bumpRelease script
$PHP_7_RC_DATE = $PHP_7_3_RC_DATE; // Used by master
// Get latest release version and info.
function release_get_latest() {
global $RELEASES;
$version = null;
$current = null;
foreach ($RELEASES as $versions) {
foreach ($versions as $ver => $info) {
if (version_compare($ver, $version) > 0) {
$version = $ver;
$current = $info;
}
}
}
return [ $version, $current ];
}

View File

@@ -2,7 +2,7 @@
// Define $MYSITE and $LAST_UPDATED variables
include_once __DIR__ . '/include/prepend.inc';
// Define $PHP_7_3_VERSION, $PHP_7_3_SHA256 & $RELEASES variables
// Define release_get_latest() function.
include_once __DIR__ . '/include/version.inc';
// Text/plain content type for better readability in browsers
@@ -12,13 +12,15 @@ header("Content-type: text/plain; charset=utf-8");
$mirror_stats = (int) (isset($_SERVER['MIRROR_STATS']) && $_SERVER['MIRROR_STATS'] == '1');
// SHA256 check last release file (identifies rsync setup problems)
$filename = $_SERVER['DOCUMENT_ROOT'] . '/distributions/' . $RELEASES[7][$PHP_7_3_VERSION]["source"][0]["filename"];
[ , $latest ] = release_get_latest();
$dist = $latest['source'][0];
$filename = __DIR__ . "/distributions/{$dist['filename']}";
if (!file_exists($filename)) {
$hash_ok = 0;
} elseif (isset($PHP_7_3_SHA256["tar.bz2"]) &&
} elseif (isset($dist['sha256']) &&
function_exists('hash_file') &&
in_array('sha256', hash_algos(), true)) {
$hash_ok = (int)(hash_file('sha256', $filename) === $PHP_7_3_SHA256["tar.bz2"]);
$hash_ok = (int)(hash_file('sha256', $filename) === $dist['sha256']);
} else {
$hash_ok = 0;
}