From 9ef70f0c4e94bd32d6b7732d4735c561901cb3df Mon Sep 17 00:00:00 2001 From: Richard Steinmetz Date: Mon, 1 Apr 2024 17:31:57 +0200 Subject: [PATCH] feat: drop support for php 8.0 Signed-off-by: Richard Steinmetz --- .github/workflows/files-external-ftp.yml | 4 ++-- .github/workflows/files-external-s3.yml | 4 ++-- .github/workflows/files-external-sftp.yml | 6 +++--- .github/workflows/files-external-smb.yml | 4 ++-- .github/workflows/files-external-webdav.yml | 2 +- .github/workflows/files-external.yml | 2 +- .github/workflows/integration-s3-primary.yml | 2 +- .github/workflows/lint-php.yml | 2 +- .github/workflows/object-storage-azure.yml | 2 +- .github/workflows/object-storage-s3.yml | 2 +- .github/workflows/object-storage-swift.yml | 2 +- .github/workflows/performance.yml | 2 +- .github/workflows/phpunit-32bits.yml | 2 +- .github/workflows/phpunit-mariadb.yml | 2 +- .github/workflows/phpunit-memcached.yml | 2 +- .github/workflows/phpunit-mysql.yml | 2 +- .github/workflows/phpunit-nodb.yml | 2 +- .github/workflows/phpunit-oci.yml | 2 +- .github/workflows/phpunit-pgsql.yml | 2 +- .github/workflows/phpunit-sqlite.yml | 2 +- .github/workflows/static-code-analysis.yml | 6 +++--- .github/workflows/update-psalm-baseline.yml | 2 +- apps/settings/lib/SetupChecks/PhpOutdated.php | 4 ++-- composer.json | 4 ++-- lib/composer/composer/platform_check.php | 4 ++-- lib/versioncheck.php | 6 +++--- 26 files changed, 38 insertions(+), 38 deletions(-) diff --git a/.github/workflows/files-external-ftp.yml b/.github/workflows/files-external-ftp.yml index 2ce6f549992..ad6fe717362 100644 --- a/.github/workflows/files-external-ftp.yml +++ b/.github/workflows/files-external-ftp.yml @@ -41,10 +41,10 @@ jobs: # do not stop on another job's failure fail-fast: false matrix: - php-versions: ['8.0', '8.3'] + php-versions: ['8.1', '8.3'] ftpd: ['proftpd', 'vsftpd', 'pure-ftpd'] include: - - php-versions: '8.0' + - php-versions: '8.1' coverage: ${{ github.event_name != 'pull_request' }} name: php${{ matrix.php-versions }}-${{ matrix.ftpd }} diff --git a/.github/workflows/files-external-s3.yml b/.github/workflows/files-external-s3.yml index 3bfcf3458fe..9ea2600432b 100644 --- a/.github/workflows/files-external-s3.yml +++ b/.github/workflows/files-external-s3.yml @@ -39,7 +39,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.2' coverage: ${{ github.event_name != 'pull_request' }} @@ -115,7 +115,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.3' coverage: true diff --git a/.github/workflows/files-external-sftp.yml b/.github/workflows/files-external-sftp.yml index efdf8d690ed..32ab022be28 100644 --- a/.github/workflows/files-external-sftp.yml +++ b/.github/workflows/files-external-sftp.yml @@ -3,7 +3,7 @@ on: pull_request: schedule: - cron: "5 2 * * *" - + concurrency: group: files-external-sftp-${{ github.head_ref || github.run_id }} cancel-in-progress: true @@ -41,10 +41,10 @@ jobs: # do not stop on another job's failure fail-fast: false matrix: - php-versions: ['8.0', '8.3'] + php-versions: ['8.1', '8.3'] sftpd: ['openssh'] include: - - php-versions: '8.0' + - php-versions: '8.1' coverage: ${{ github.event_name != 'pull_request' }} name: php${{ matrix.php-versions }}-${{ matrix.sftpd }} diff --git a/.github/workflows/files-external-smb.yml b/.github/workflows/files-external-smb.yml index 2ec1be1ff47..669437c549e 100644 --- a/.github/workflows/files-external-smb.yml +++ b/.github/workflows/files-external-smb.yml @@ -39,9 +39,9 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.3'] + php-versions: ['8.1', '8.3'] include: - - php-versions: '8.0' + - php-versions: '8.1' coverage: ${{ github.event_name != 'pull_request' }} name: php${{ matrix.php-versions }}-smb diff --git a/.github/workflows/files-external-webdav.yml b/.github/workflows/files-external-webdav.yml index bb107ef8c5d..bf14f6319a7 100644 --- a/.github/workflows/files-external-webdav.yml +++ b/.github/workflows/files-external-webdav.yml @@ -39,7 +39,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.2' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/files-external.yml b/.github/workflows/files-external.yml index 838925b85b9..1a2e24ca20b 100644 --- a/.github/workflows/files-external.yml +++ b/.github/workflows/files-external.yml @@ -38,7 +38,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.2' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/integration-s3-primary.yml b/.github/workflows/integration-s3-primary.yml index 814c0d3e15d..f7a38c0ece7 100644 --- a/.github/workflows/integration-s3-primary.yml +++ b/.github/workflows/integration-s3-primary.yml @@ -41,7 +41,7 @@ jobs: # do not stop on another job's failure fail-fast: false matrix: - php-versions: ['8.0'] + php-versions: ['8.1'] key: ['objectstore', 'objectstore_multibucket'] name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio diff --git a/.github/workflows/lint-php.yml b/.github/workflows/lint-php.yml index 8ea65f648ee..52b5fa62711 100644 --- a/.github/workflows/lint-php.yml +++ b/.github/workflows/lint-php.yml @@ -47,7 +47,7 @@ jobs: strategy: matrix: - php-versions: [ "8.0", "8.1", "8.2", "8.3" ] + php-versions: [ "8.1", "8.2", "8.3" ] name: php-lint diff --git a/.github/workflows/object-storage-azure.yml b/.github/workflows/object-storage-azure.yml index a46b3abafde..9233ed0b87e 100644 --- a/.github/workflows/object-storage-azure.yml +++ b/.github/workflows/object-storage-azure.yml @@ -43,7 +43,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.3' coverage: true diff --git a/.github/workflows/object-storage-s3.yml b/.github/workflows/object-storage-s3.yml index e1a68e3b3d7..ef6df8901d5 100644 --- a/.github/workflows/object-storage-s3.yml +++ b/.github/workflows/object-storage-s3.yml @@ -43,7 +43,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.3' coverage: true diff --git a/.github/workflows/object-storage-swift.yml b/.github/workflows/object-storage-swift.yml index b7403e8e090..cb558f17f55 100644 --- a/.github/workflows/object-storage-swift.yml +++ b/.github/workflows/object-storage-swift.yml @@ -43,7 +43,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.3' coverage: true diff --git a/.github/workflows/performance.yml b/.github/workflows/performance.yml index af805916e7a..a90e3ba93ed 100644 --- a/.github/workflows/performance.yml +++ b/.github/workflows/performance.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - php-versions: ['8.0'] + php-versions: ['8.1'] name: performance-${{ matrix.php-versions }} diff --git a/.github/workflows/phpunit-32bits.yml b/.github/workflows/phpunit-32bits.yml index 88ce20bef37..21a02b6341f 100644 --- a/.github/workflows/phpunit-32bits.yml +++ b/.github/workflows/phpunit-32bits.yml @@ -26,7 +26,7 @@ jobs: strategy: matrix: - php-versions: ['8.0','8.3'] + php-versions: ['8.1','8.3'] steps: - name: Checkout server diff --git a/.github/workflows/phpunit-mariadb.yml b/.github/workflows/phpunit-mariadb.yml index da1b27a3152..02acb58f27b 100644 --- a/.github/workflows/phpunit-mariadb.yml +++ b/.github/workflows/phpunit-mariadb.yml @@ -52,7 +52,7 @@ jobs: strategy: matrix: - php-versions: ['8.0'] + php-versions: ['8.1'] mariadb-versions: ['10.3', '10.4', '10.5', '10.6', '10.11'] include: - php-versions: '8.3' diff --git a/.github/workflows/phpunit-memcached.yml b/.github/workflows/phpunit-memcached.yml index 2cdf5288fc0..5b5fc3b77a2 100644 --- a/.github/workflows/phpunit-memcached.yml +++ b/.github/workflows/phpunit-memcached.yml @@ -52,7 +52,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.2' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/phpunit-mysql.yml b/.github/workflows/phpunit-mysql.yml index 44fda846010..47329f92db0 100644 --- a/.github/workflows/phpunit-mysql.yml +++ b/.github/workflows/phpunit-mysql.yml @@ -52,7 +52,7 @@ jobs: strategy: matrix: - php-versions: ['8.0'] + php-versions: ['8.1'] mysql-versions: ['8.0', '8.3'] include: - mysql-versions: '8.0' diff --git a/.github/workflows/phpunit-nodb.yml b/.github/workflows/phpunit-nodb.yml index 0fba2a2c612..f9fbfdd2dff 100644 --- a/.github/workflows/phpunit-nodb.yml +++ b/.github/workflows/phpunit-nodb.yml @@ -53,7 +53,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.2' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/phpunit-oci.yml b/.github/workflows/phpunit-oci.yml index 505c24be0f0..38657883f62 100644 --- a/.github/workflows/phpunit-oci.yml +++ b/.github/workflows/phpunit-oci.yml @@ -48,7 +48,7 @@ jobs: strategy: matrix: oracle-versions: ['11'] - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.3' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/phpunit-pgsql.yml b/.github/workflows/phpunit-pgsql.yml index 34ba8d0af8a..b845765ca38 100644 --- a/.github/workflows/phpunit-pgsql.yml +++ b/.github/workflows/phpunit-pgsql.yml @@ -52,7 +52,7 @@ jobs: strategy: matrix: - php-versions: ['8.0'] + php-versions: ['8.1'] # To keep the matrix smaller we ignore PostgreSQL '11', '13', '14' as we already test 10 and 15 as lower and upper bound postgres-versions: ['10', '15', '16'] include: diff --git a/.github/workflows/phpunit-sqlite.yml b/.github/workflows/phpunit-sqlite.yml index 7a072d7404a..00b64b34038 100644 --- a/.github/workflows/phpunit-sqlite.yml +++ b/.github/workflows/phpunit-sqlite.yml @@ -52,7 +52,7 @@ jobs: strategy: matrix: - php-versions: ['8.0', '8.1', '8.2', '8.3'] + php-versions: ['8.1', '8.2', '8.3'] include: - php-versions: '8.1' coverage: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/static-code-analysis.yml b/.github/workflows/static-code-analysis.yml index 16cd27ee7ac..7aeb3f13f94 100644 --- a/.github/workflows/static-code-analysis.yml +++ b/.github/workflows/static-code-analysis.yml @@ -22,7 +22,7 @@ jobs: - name: Set up php uses: shivammathur/setup-php@v2 with: - php-version: '8.0' + php-version: '8.1' extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip coverage: none env: @@ -56,7 +56,7 @@ jobs: - name: Set up php uses: shivammathur/setup-php@master with: - php-version: '8.0' + php-version: '8.1' extensions: ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip coverage: none @@ -84,7 +84,7 @@ jobs: - name: Set up php uses: shivammathur/setup-php@v2 with: - php-version: '8.0' + php-version: '8.1' extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip coverage: none env: diff --git a/.github/workflows/update-psalm-baseline.yml b/.github/workflows/update-psalm-baseline.yml index 21b9d6aa7d8..377b7e24735 100644 --- a/.github/workflows/update-psalm-baseline.yml +++ b/.github/workflows/update-psalm-baseline.yml @@ -27,7 +27,7 @@ jobs: - name: Set up php uses: shivammathur/setup-php@v2 with: - php-version: '8.0' + php-version: '8.1' extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip coverage: none env: diff --git a/apps/settings/lib/SetupChecks/PhpOutdated.php b/apps/settings/lib/SetupChecks/PhpOutdated.php index 3c749765a0f..79e3abdd7ea 100644 --- a/apps/settings/lib/SetupChecks/PhpOutdated.php +++ b/apps/settings/lib/SetupChecks/PhpOutdated.php @@ -46,8 +46,8 @@ class PhpOutdated implements ISetupCheck { } public function run(): SetupResult { - if (PHP_VERSION_ID < 80100) { - return SetupResult::warning($this->l10n->t('You are currently running PHP %s. PHP 8.0 is now deprecated in Nextcloud 27. Nextcloud 28 may require at least PHP 8.1. Please upgrade to one of the officially supported PHP versions provided by the PHP Group as soon as possible.', [PHP_VERSION]), 'https://secure.php.net/supported-versions.php'); + if (PHP_VERSION_ID < 80200) { + return SetupResult::warning($this->l10n->t('You are currently running PHP %s. PHP 8.1 is now deprecated in Nextcloud 30. Nextcloud 31 may require at least PHP 8.2. Please upgrade to one of the officially supported PHP versions provided by the PHP Group as soon as possible.', [PHP_VERSION]), 'https://secure.php.net/supported-versions.php'); } return SetupResult::success($this->l10n->t('You are currently running PHP %s.', [PHP_VERSION])); } diff --git a/composer.json b/composer.json index 48598e0c5a4..6038b9d66ed 100644 --- a/composer.json +++ b/composer.json @@ -4,7 +4,7 @@ "optimize-autoloader": true, "sort-packages": true, "platform": { - "php": "8.0" + "php": "8.1" }, "allow-plugins": { "bamarni/composer-bin-plugin": true @@ -23,7 +23,7 @@ } }, "require": { - "php": "^8.0", + "php": "^8.1", "ext-ctype": "*", "ext-curl": "*", "ext-dom": "*", diff --git a/lib/composer/composer/platform_check.php b/lib/composer/composer/platform_check.php index adfb472fbdd..4c3a5d68f14 100644 --- a/lib/composer/composer/platform_check.php +++ b/lib/composer/composer/platform_check.php @@ -4,8 +4,8 @@ $issues = array(); -if (!(PHP_VERSION_ID >= 80000)) { - $issues[] = 'Your Composer dependencies require a PHP version ">= 8.0.0". You are running ' . PHP_VERSION . '.'; +if (!(PHP_VERSION_ID >= 80100)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 8.1.0". You are running ' . PHP_VERSION . '.'; } if ($issues) { diff --git a/lib/versioncheck.php b/lib/versioncheck.php index 29c278370cd..394433de29e 100644 --- a/lib/versioncheck.php +++ b/lib/versioncheck.php @@ -25,10 +25,10 @@ declare(strict_types=1); * along with this program. If not, see . * */ -// Show warning if a PHP version below 8.0 is used, -if (PHP_VERSION_ID < 80000) { +// Show warning if a PHP version below 8.1 is used, +if (PHP_VERSION_ID < 80100) { http_response_code(500); - echo 'This version of Nextcloud requires at least PHP 8.0
'; + echo 'This version of Nextcloud requires at least PHP 8.1
'; echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'; exit(1); }