Commit: 83111843804ca577a378fd1562f332cbf962bb96
Author: Sara Golemon <[email protected]> Wed, 5 Jun 2019 17:39:48 -0400
Parents: bd535899a504910ac62f576344b8dbaa3e2d5140
Branches: master
Link:
http://git.php.net/?p=web/php.git;a=commitdiff;h=83111843804ca577a378fd1562f332cbf962bb96
Log:
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.
Changed paths:
M error.php
M gpg-keys.php
M include/version.inc
M mirror-info.php
diff --git a/error.php b/error.php
index 5ec75cb..fe02cd8 100644
--- a/error.php
+++ b/error.php
@@ -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/";
diff --git a/gpg-keys.php b/gpg-keys.php
index a0729a4..9d75caf 100644
--- a/gpg-keys.php
+++ b/gpg-keys.php
@@ -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');
?>
diff --git a/include/version.inc b/include/version.inc
index a141da5..3400e77 100644
--- a/include/version.inc
+++ b/include/version.inc
@@ -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,
- ),
- 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,
+ 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,
+ ),
),
),
- ),
- $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_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_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,
+ ),
),
),
),
- ),
-);
+ );
+})();
+
+// 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;
+ }
+ }
+ }
-$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
+ return [ $version, $current ];
+}
diff --git a/mirror-info.php b/mirror-info.php
index d9fb5c4..1bb68bd 100644
--- a/mirror-info.php
+++ b/mirror-info.php
@@ -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;
}
--
PHP Webmaster List Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php