Bump minimum PHP version to 8.2.0

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
This commit is contained in:
Maurício Meneghini Fauth 2024-07-31 15:14:12 -03:00
parent 238de3ab8b
commit b1ae10df76
No known key found for this signature in database
GPG Key ID: 6A16FD38AFC89CC8
16 changed files with 91 additions and 161 deletions

View File

@ -22,7 +22,7 @@ jobs:
matrix:
include:
- { version: '5.2', branch: 'QA_5_2', php-version: '7.2', node-version: '12', python-version: '3.7' }
- { version: '6.0', branch: 'master', php-version: '8.1', node-version: '16', python-version: '3.7' }
- { version: '6.0', branch: 'master', php-version: '8.2', node-version: '16', python-version: '3.7' }
steps:
- name: Check out code
uses: actions/checkout@v4

View File

@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php-version: ["8.1"]
php-version: ["8.2"]
steps:
- name: Checkout code
uses: actions/checkout@v4
@ -64,7 +64,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php-version: ["8.1"]
php-version: ["8.2"]
steps:
- name: Checkout code
uses: actions/checkout@v4

View File

@ -28,7 +28,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
php-version: ["8.1"]
php-version: ["8.2"]
steps:
- name: Checkout code
uses: actions/checkout@v4

View File

@ -12,7 +12,7 @@ permissions:
contents: read
env:
php-version: "8.1"
php-version: "8.2"
jobs:
selenium:

View File

@ -20,12 +20,12 @@ jobs:
fail-fast: false
matrix:
include:
- { php-version: '81', experimental: false, arch: 'amd64', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '81', experimental: false, arch: 'arm64v8', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '81', experimental: false, arch: 'arm32v7', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- { php-version: '81', experimental: false, arch: 'i386', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- { php-version: '81', experimental: true, arch: 'ppc64le', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '81', experimental: false, arch: 's390x', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- { php-version: '82', experimental: false, arch: 'amd64', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '82', experimental: false, arch: 'arm64v8', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '82', experimental: false, arch: 'arm32v7', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- { php-version: '82', experimental: false, arch: 'i386', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- { php-version: '82', experimental: true, arch: 'ppc64le', exclude-phpunit-groups: 'extension-iconv' }
- { php-version: '82', experimental: false, arch: 's390x', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
steps:
- name: Checkout code
uses: actions/checkout@v4
@ -55,10 +55,10 @@ jobs:
run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
- name: Print arch
run: docker run --rm ${{ matrix.arch }}/alpine:3.18 uname -a
run: docker run --rm ${{ matrix.arch }}/alpine:3.19 uname -a
- name: Run tests on php ${{ matrix.php-version }}
run: docker run -v $PWD:/app --workdir /app --rm ${{ matrix.arch }}/alpine:3.18 sh /app/do-tests.sh
run: docker run -v $PWD:/app --workdir /app --rm ${{ matrix.arch }}/alpine:3.19 sh /app/do-tests.sh
test-php:
name: Test on PHP ${{ matrix.php-version }}, ${{ matrix.composer-dependency }} and ${{ matrix.os }}
@ -66,7 +66,7 @@ jobs:
continue-on-error: ${{ matrix.php-version == '8.4' }}
strategy:
matrix:
php-version: ['8.1', '8.2', '8.3']
php-version: ['8.2', '8.3']
os: [ubuntu-latest]
composer-dependency: [locked, highest]
php-extensions: ['mbstring, iconv, mysqli, zip, gd, bz2']
@ -133,7 +133,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
php-version: ["8.1"]
php-version: ["8.2"]
os: [ubuntu-latest]
extension: ["dbase"]
steps:

View File

@ -18,7 +18,7 @@ jobs:
if: (github.event_name == 'schedule' && github.repository == 'phpmyadmin/phpmyadmin') || (github.event_name != 'schedule')
strategy:
matrix:
php-version: ["8.1"]
php-version: ["8.2"]
steps:
- name: Checkout code
uses: actions/checkout@v4

View File

@ -21,7 +21,7 @@ build:
nodes:
analysis:
environment:
php: 8.1
php: 8.2
node: 16
dependencies:
before:

View File

@ -2,7 +2,7 @@ phpMyAdmin - ChangeLog
======================
6.0.0 (not yet released)
- issue Bump minimum PHP version to 8.1.2
- issue Bump minimum PHP version to 8.2.0
- issue #17842 Change js.cookie.js to js.cookie.min.js
- issue #17632 Improve tab keypress to text fields on the login form
- issue Make database and web server info separately configurable on `$cfg['ShowServerInfo']`

View File

@ -47,7 +47,7 @@
}
],
"require": {
"php": "^8.1.2",
"php": "^8.2",
"ext-hash": "*",
"ext-iconv": "*",
"ext-json": "*",
@ -75,7 +75,6 @@
"symfony/expression-language": "^6.2",
"symfony/polyfill-ctype": "^1.24",
"symfony/polyfill-mbstring": "^1.24",
"symfony/polyfill-php82": "^1.29",
"twig/twig": "^3.9",
"webmozart/assert": "^1.10",
"williamdes/mariadb-mysql-kbs": "^1.2"
@ -154,7 +153,7 @@
"composer/package-versions-deprecated": true
},
"platform": {
"php": "8.1.99"
"php": "8.2.99"
}
}
}

189
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "333f7a52cfc201152db244875eb49b7f",
"content-hash": "7a5beedce02b5791dce2d21c1c06c703",
"packages": [
{
"name": "composer/ca-bundle",
@ -1041,31 +1041,32 @@
},
{
"name": "symfony/cache",
"version": "v6.4.10",
"version": "v7.1.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
"reference": "6702d2d777260e6ff3451fee2d7d78ab5f715cdc"
"reference": "8ac37acee794372f9732fe8a61a8221f6762148e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/cache/zipball/6702d2d777260e6ff3451fee2d7d78ab5f715cdc",
"reference": "6702d2d777260e6ff3451fee2d7d78ab5f715cdc",
"url": "https://api.github.com/repos/symfony/cache/zipball/8ac37acee794372f9732fe8a61a8221f6762148e",
"reference": "8ac37acee794372f9732fe8a61a8221f6762148e",
"shasum": ""
},
"require": {
"php": ">=8.1",
"php": ">=8.2",
"psr/cache": "^2.0|^3.0",
"psr/log": "^1.1|^2|^3",
"symfony/cache-contracts": "^2.5|^3",
"symfony/deprecation-contracts": "^2.5|^3.0",
"symfony/service-contracts": "^2.5|^3",
"symfony/var-exporter": "^6.3.6|^7.0"
"symfony/var-exporter": "^6.4|^7.0"
},
"conflict": {
"doctrine/dbal": "<2.13.1",
"symfony/dependency-injection": "<5.4",
"symfony/http-kernel": "<5.4",
"symfony/var-dumper": "<5.4"
"doctrine/dbal": "<3.6",
"symfony/dependency-injection": "<6.4",
"symfony/http-kernel": "<6.4",
"symfony/var-dumper": "<6.4"
},
"provide": {
"psr/cache-implementation": "2.0|3.0",
@ -1074,15 +1075,15 @@
},
"require-dev": {
"cache/integration-tests": "dev-master",
"doctrine/dbal": "^2.13.1|^3|^4",
"doctrine/dbal": "^3.6|^4",
"predis/predis": "^1.1|^2.0",
"psr/simple-cache": "^1.0|^2.0|^3.0",
"symfony/config": "^5.4|^6.0|^7.0",
"symfony/dependency-injection": "^5.4|^6.0|^7.0",
"symfony/filesystem": "^5.4|^6.0|^7.0",
"symfony/http-kernel": "^5.4|^6.0|^7.0",
"symfony/messenger": "^5.4|^6.0|^7.0",
"symfony/var-dumper": "^5.4|^6.0|^7.0"
"symfony/config": "^6.4|^7.0",
"symfony/dependency-injection": "^6.4|^7.0",
"symfony/filesystem": "^6.4|^7.0",
"symfony/http-kernel": "^6.4|^7.0",
"symfony/messenger": "^6.4|^7.0",
"symfony/var-dumper": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@ -1117,7 +1118,7 @@
"psr6"
],
"support": {
"source": "https://github.com/symfony/cache/tree/v6.4.10"
"source": "https://github.com/symfony/cache/tree/v7.1.3"
},
"funding": [
{
@ -1133,7 +1134,7 @@
"type": "tidelift"
}
],
"time": "2024-07-17T06:05:49+00:00"
"time": "2024-07-17T06:10:24+00:00"
},
{
"name": "symfony/cache-contracts",
@ -1500,25 +1501,25 @@
},
{
"name": "symfony/filesystem",
"version": "v6.4.9",
"version": "v7.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
"reference": "b51ef8059159330b74a4d52f68e671033c0fe463"
"reference": "92a91985250c251de9b947a14bb2c9390b1a562c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/b51ef8059159330b74a4d52f68e671033c0fe463",
"reference": "b51ef8059159330b74a4d52f68e671033c0fe463",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/92a91985250c251de9b947a14bb2c9390b1a562c",
"reference": "92a91985250c251de9b947a14bb2c9390b1a562c",
"shasum": ""
},
"require": {
"php": ">=8.1",
"php": ">=8.2",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.8"
},
"require-dev": {
"symfony/process": "^5.4|^6.4|^7.0"
"symfony/process": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@ -1546,7 +1547,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/filesystem/tree/v6.4.9"
"source": "https://github.com/symfony/filesystem/tree/v7.1.2"
},
"funding": [
{
@ -1562,7 +1563,7 @@
"type": "tidelift"
}
],
"time": "2024-06-28T09:49:33+00:00"
"time": "2024-06-28T10:03:55+00:00"
},
{
"name": "symfony/polyfill-ctype",
@ -1803,82 +1804,6 @@
],
"time": "2024-05-31T15:07:36+00:00"
},
{
"name": "symfony/polyfill-php82",
"version": "v1.30.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php82.git",
"reference": "77ff49780f56906788a88974867ed68bc49fae5b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php82/zipball/77ff49780f56906788a88974867ed68bc49fae5b",
"reference": "77ff49780f56906788a88974867ed68bc49fae5b",
"shasum": ""
},
"require": {
"php": ">=7.1"
},
"type": "library",
"extra": {
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Php82\\": ""
},
"classmap": [
"Resources/stubs"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Nicolas Grekas",
"email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill backporting some PHP 8.2+ features to lower PHP versions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"polyfill",
"portable",
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php82/tree/v1.30.0"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2024-06-19T12:30:46+00:00"
},
{
"name": "symfony/service-contracts",
"version": "v3.5.0",
@ -1964,26 +1889,25 @@
},
{
"name": "symfony/var-exporter",
"version": "v6.4.9",
"version": "v7.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-exporter.git",
"reference": "f9a060622e0d93777b7f8687ec4860191e16802e"
"reference": "b80a669a2264609f07f1667f891dbfca25eba44c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/var-exporter/zipball/f9a060622e0d93777b7f8687ec4860191e16802e",
"reference": "f9a060622e0d93777b7f8687ec4860191e16802e",
"url": "https://api.github.com/repos/symfony/var-exporter/zipball/b80a669a2264609f07f1667f891dbfca25eba44c",
"reference": "b80a669a2264609f07f1667f891dbfca25eba44c",
"shasum": ""
},
"require": {
"php": ">=8.1",
"symfony/deprecation-contracts": "^2.5|^3"
"php": ">=8.2"
},
"require-dev": {
"symfony/property-access": "^6.4|^7.0",
"symfony/serializer": "^6.4|^7.0",
"symfony/var-dumper": "^5.4|^6.0|^7.0"
"symfony/var-dumper": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@ -2021,7 +1945,7 @@
"serialize"
],
"support": {
"source": "https://github.com/symfony/var-exporter/tree/v6.4.9"
"source": "https://github.com/symfony/var-exporter/tree/v7.1.2"
},
"funding": [
{
@ -2037,7 +1961,7 @@
"type": "tidelift"
}
],
"time": "2024-06-24T15:53:56+00:00"
"time": "2024-06-28T08:00:31+00:00"
},
{
"name": "twig/twig",
@ -5737,12 +5661,12 @@
"source": {
"type": "git",
"url": "https://github.com/Roave/SecurityAdvisories.git",
"reference": "a7df4da9cd5ab8ad109e6ce0f18327790efbe8a3"
"reference": "0cc79cfabcebf66307fe5a686367bc425a7b96b6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/a7df4da9cd5ab8ad109e6ce0f18327790efbe8a3",
"reference": "a7df4da9cd5ab8ad109e6ce0f18327790efbe8a3",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/0cc79cfabcebf66307fe5a686367bc425a7b96b6",
"reference": "0cc79cfabcebf66307fe5a686367bc425a7b96b6",
"shasum": ""
},
"conflict": {
@ -5903,7 +5827,7 @@
"ezsystems/ezdemo-ls-extension": ">=5.4,<5.4.2.1-dev",
"ezsystems/ezfind-ls": ">=5.3,<5.3.6.1-dev|>=5.4,<5.4.11.1-dev|>=2017.12,<2017.12.0.1-dev",
"ezsystems/ezplatform": "<=1.13.6|>=2,<=2.5.24",
"ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26",
"ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26|>=3.3,<3.3.39",
"ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1",
"ezsystems/ezplatform-graphql": ">=1.0.0.0-RC1-dev,<1.0.13|>=2.0.0.0-beta1,<2.3.12",
"ezsystems/ezplatform-kernel": "<1.2.5.1-dev|>=1.3,<1.3.35",
@ -5986,7 +5910,7 @@
"hov/jobfair": "<1.0.13|>=2,<2.0.2",
"httpsoft/http-message": "<1.0.12",
"hyn/multi-tenant": ">=5.6,<5.7.2",
"ibexa/admin-ui": ">=4.2,<4.2.3",
"ibexa/admin-ui": ">=4.2,<4.2.3|>=4.6.0.0-beta1,<4.6.9",
"ibexa/core": ">=4,<4.0.7|>=4.1,<4.1.4|>=4.2,<4.2.3|>=4.5,<4.5.6|>=4.6,<4.6.2",
"ibexa/graphql": ">=2.5,<2.5.31|>=3.3,<3.3.28|>=4.2,<4.2.3",
"ibexa/post-install": "<=1.0.4",
@ -6541,7 +6465,7 @@
"type": "tidelift"
}
],
"time": "2024-07-30T18:05:16+00:00"
"time": "2024-07-31T17:04:31+00:00"
},
{
"name": "sebastian/cli-parser",
@ -8134,20 +8058,20 @@
},
{
"name": "symfony/string",
"version": "v6.4.10",
"version": "v7.1.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "ccf9b30251719567bfd46494138327522b9a9446"
"reference": "ea272a882be7f20cad58d5d78c215001617b7f07"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/ccf9b30251719567bfd46494138327522b9a9446",
"reference": "ccf9b30251719567bfd46494138327522b9a9446",
"url": "https://api.github.com/repos/symfony/string/zipball/ea272a882be7f20cad58d5d78c215001617b7f07",
"reference": "ea272a882be7f20cad58d5d78c215001617b7f07",
"shasum": ""
},
"require": {
"php": ">=8.1",
"php": ">=8.2",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-intl-grapheme": "~1.0",
"symfony/polyfill-intl-normalizer": "~1.0",
@ -8157,11 +8081,12 @@
"symfony/translation-contracts": "<2.5"
},
"require-dev": {
"symfony/error-handler": "^5.4|^6.0|^7.0",
"symfony/http-client": "^5.4|^6.0|^7.0",
"symfony/intl": "^6.2|^7.0",
"symfony/emoji": "^7.1",
"symfony/error-handler": "^6.4|^7.0",
"symfony/http-client": "^6.4|^7.0",
"symfony/intl": "^6.4|^7.0",
"symfony/translation-contracts": "^2.5|^3.0",
"symfony/var-exporter": "^5.4|^6.0|^7.0"
"symfony/var-exporter": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@ -8200,7 +8125,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v6.4.10"
"source": "https://github.com/symfony/string/tree/v7.1.3"
},
"funding": [
{
@ -8216,7 +8141,7 @@
"type": "tidelift"
}
],
"time": "2024-07-22T10:21:14+00:00"
"time": "2024-07-22T10:25:37+00:00"
},
{
"name": "tecnickcom/tcpdf",
@ -8816,7 +8741,7 @@
"prefer-stable": false,
"prefer-lowest": false,
"platform": {
"php": "^8.1.2",
"php": "^8.2",
"ext-hash": "*",
"ext-iconv": "*",
"ext-json": "*",
@ -8828,7 +8753,7 @@
},
"platform-dev": [],
"platform-overrides": {
"php": "8.1.99"
"php": "8.2.99"
},
"plugin-api-version": "2.6.0"
}

View File

@ -436,7 +436,7 @@ HHVM is supported up to phpMyAdmin 4.8.
Since release 5.0, phpMyAdmin supports only PHP 7.1 and newer.
Since release 5.2, phpMyAdmin supports only PHP 7.2 and newer.
Since release 6.0, phpMyAdmin supports only PHP 8.1 and newer.
Since release 6.0, phpMyAdmin supports only PHP 8.2 and newer.
.. _faq1_32:

View File

@ -12,7 +12,7 @@ web server (such as Apache, nginx, :term:`IIS`) to install phpMyAdmin's files in
PHP
---
* You need PHP 8.1.2 or newer, with ``session`` support, the Standard PHP Library
* You need PHP 8.2.0 or newer, with ``session`` support, the Standard PHP Library
(SPL) extension, hash, ctype, and JSON support.
* The ``mbstring`` extension (see :term:`mbstring`) is strongly recommended

View File

@ -1967,6 +1967,9 @@
</UnusedVariable>
</file>
<file src="src/Controllers/Import/ImportController.php">
<ArgumentTypeCoercion>
<code><![CDATA[$memoryLimit]]></code>
</ArgumentTypeCoercion>
<DeprecatedMethod>
<code><![CDATA[Config::getInstance()]]></code>
</DeprecatedMethod>
@ -5704,6 +5707,9 @@
</RiskyTruthyFalsyComparison>
</file>
<file src="src/Export/Export.php">
<ArgumentTypeCoercion>
<code><![CDATA[(string) ini_get('memory_limit')]]></code>
</ArgumentTypeCoercion>
<DeprecatedMethod>
<code><![CDATA[Config::getInstance()]]></code>
<code><![CDATA[Config::getInstance()]]></code>

View File

@ -11,8 +11,8 @@ if (! defined('ROOT_PATH')) {
// phpcs:enable
if (PHP_VERSION_ID < 80102) {
die('<p>PHP 8.1.2+ is required.</p><p>Currently installed version is: ' . PHP_VERSION . '</p>');
if (PHP_VERSION_ID < 80200) {
die('<p>PHP 8.2.0+ is required.</p><p>Currently installed version is: ' . PHP_VERSION . '</p>');
}
require_once ROOT_PATH . 'app/constants.php';

View File

@ -11,8 +11,8 @@ if (! defined('ROOT_PATH')) {
// phpcs:enable
if (PHP_VERSION_ID < 80102) {
die('<p>PHP 8.1.2+ is required.</p><p>Currently installed version is: ' . PHP_VERSION . '</p>');
if (PHP_VERSION_ID < 80200) {
die('<p>PHP 8.2.0+ is required.</p><p>Currently installed version is: ' . PHP_VERSION . '</p>');
}
require_once ROOT_PATH . 'app/constants.php';

View File

@ -19,8 +19,8 @@ class EnvironmentTest extends AbstractTestCase
public function testPhpVersion(): void
{
self::assertTrue(
version_compare('8.1.2', PHP_VERSION, '<='),
'phpMyAdmin requires PHP 8.1.2 or above',
version_compare('8.2.0', PHP_VERSION, '<='),
'phpMyAdmin requires PHP 8.2.0 or above',
);
}
}