Nextcloud 13 is not compatible with newer than php 7.2

Just to avoid users from trying this with a to new (untested) php version

* Moved the check logic to 1 place
* All directly callable scripts just require this on top
* exit hard (-1) so we know scripts won't continue
* Return status 500 so no sync clients will try fancy stuff

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
Roeland Jago Douma 2017-10-13 21:30:29 +02:00
parent 115e7e29cf
commit b8af7ee9bc
No known key found for this signature in database
GPG Key ID: F941078878347C0C
9 changed files with 31 additions and 21 deletions

View File

@ -29,20 +29,14 @@
* *
*/ */
require_once __DIR__ . '/lib/versioncheck.php';
use OC\Console\Application; use OC\Console\Application;
use Symfony\Component\Console\Input\ArgvInput; use Symfony\Component\Console\Input\ArgvInput;
use Symfony\Component\Console\Output\ConsoleOutput; use Symfony\Component\Console\Output\ConsoleOutput;
define('OC_CONSOLE', 1); define('OC_CONSOLE', 1);
// Show warning if a PHP version below 5.6.0 is used, this has to happen here
// because base.php will already use 5.6 syntax.
if (version_compare(PHP_VERSION, '5.6.0') === -1) {
echo 'This version of Nextcloud requires at least PHP 5.6.0'.PHP_EOL;
echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'.PHP_EOL;
return;
}
function exceptionHandler($exception) { function exceptionHandler($exception) {
echo "An unhandled exception has been thrown:" . PHP_EOL; echo "An unhandled exception has been thrown:" . PHP_EOL;
echo $exception; echo $exception;

View File

@ -34,12 +34,7 @@
* *
*/ */
// Show warning if a PHP version below 5.6.0 is used require_once __DIR__ . '/lib/versioncheck.php';
if (version_compare(PHP_VERSION, '5.6.0') === -1) {
echo 'This version of Nextcloud requires at least PHP 5.6.0<br/>';
echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.';
return;
}
try { try {

View File

@ -28,13 +28,7 @@
* *
*/ */
// Show warning if a PHP version below 5.6.0 is used, this has to happen here require_once __DIR__ . '/lib/versioncheck.php';
// because base.php will already use 5.6 syntax.
if (version_compare(PHP_VERSION, '5.6.0') === -1) {
echo 'This version of Nextcloud requires at least PHP 5.6.0<br/>';
echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.';
return;
}
try { try {

18
lib/versioncheck.php Normal file
View File

@ -0,0 +1,18 @@
<?php
// Show warning if a PHP version below 5.6.0 is used, this has to happen here
// because base.php will already use 5.6 syntax.
if (version_compare(PHP_VERSION, '5.6.0') === -1) {
http_response_code(500);
echo 'This version of Nextcloud requires at least PHP 5.6.0<br/>';
echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.';
exit(-1);
}
// Show warning if > PHP 7.2 is used as Nextcloud is not compatible with > PHP 7.2 for now
if (version_compare(PHP_VERSION, '7.3.0') !== -1) {
http_response_code(500);
echo 'This version of Nextcloud is not compatible with > PHP 7.2.<br/>';
echo 'You are currently running ' . PHP_VERSION . '.';
exit(-1);
}

View File

@ -23,6 +23,7 @@
* *
*/ */
require_once __DIR__ . '/../lib/versioncheck.php';
require_once __DIR__ . '/../lib/base.php'; require_once __DIR__ . '/../lib/base.php';
header('Content-type: application/xml'); header('Content-type: application/xml');

View File

@ -29,6 +29,7 @@
* *
*/ */
require_once __DIR__ . '/../lib/versioncheck.php';
require_once __DIR__ . '/../lib/base.php'; require_once __DIR__ . '/../lib/base.php';
if (\OCP\Util::needUpgrade() if (\OCP\Util::needUpgrade()

View File

@ -27,6 +27,9 @@
* along with this program. If not, see <http://www.gnu.org/licenses/> * along with this program. If not, see <http://www.gnu.org/licenses/>
* *
*/ */
require_once __DIR__ . '/lib/versioncheck.php';
try { try {
require_once __DIR__ . '/lib/base.php'; require_once __DIR__ . '/lib/base.php';

View File

@ -28,6 +28,8 @@
* *
*/ */
require_once __DIR__ . '/lib/versioncheck.php';
use OCA\DAV\Connector\Sabre\ExceptionLoggerPlugin; use OCA\DAV\Connector\Sabre\ExceptionLoggerPlugin;
use Sabre\DAV\Exception\ServiceUnavailable; use Sabre\DAV\Exception\ServiceUnavailable;
use Sabre\DAV\Server; use Sabre\DAV\Server;

View File

@ -29,6 +29,8 @@
* *
*/ */
require_once __DIR__ . '/lib/versioncheck.php';
try { try {
require_once __DIR__ . '/lib/base.php'; require_once __DIR__ . '/lib/base.php';