Browse Source

Merge pull request #17740 from cakephp/ci-php-8.4

Run testsuite on PHP 8.4
ADmad 1 year ago
parent
commit
c677e67428

+ 5 - 1
.github/workflows/ci.yml

@@ -34,6 +34,8 @@ jobs:
             db-type: 'mysql'
           - php-version: '8.3'
             db-type: 'mysql'
+          - php-version: '8.4'
+            db-type: 'mysql'
 
     services:
       redis:
@@ -68,7 +70,7 @@ jobs:
       uses: shivammathur/setup-php@v2
       with:
         php-version: ${{ matrix.php-version }}
-        extensions: mbstring, intl-72.1, apcu, memcached, redis, pdo_${{ matrix.db-type }}
+        extensions: mbstring, intl, apcu, memcached, redis, pdo_${{ matrix.db-type }}
         ini-values: apc.enable_cli = 1, zend.assertions = 1
         coverage: pcov
 
@@ -95,6 +97,8 @@ jobs:
       run: |
         if ${{ matrix.prefer-lowest == 'prefer-lowest' }}; then
           composer update --prefer-lowest --prefer-stable
+        elif ${{ matrix.php-version == '8.4' }}; then
+          composer update --ignore-platform-req=php
         else
           composer update
         fi

+ 2 - 2
composer.json

@@ -27,13 +27,13 @@
         "ext-json": "*",
         "ext-mbstring": "*",
         "cakephp/chronos": "^3.1.0",
-        "composer/ca-bundle": "^1.2",
+        "composer/ca-bundle": "^1.5",
         "laminas/laminas-diactoros": "^3.0",
         "laminas/laminas-httphandlerrunner": "^2.6",
         "league/container": "^4.2",
         "psr/container": "^1.1 || ^2.0",
         "psr/http-client": "^1.0.2",
-        "psr/http-factory": "^1.0.2",
+        "psr/http-factory": "^1.1",
         "psr/http-message": "^1.1 || ^2.0",
         "psr/http-server-handler": "^1.0.2",
         "psr/http-server-middleware": "^1.0.2",

+ 3 - 3
src/Http/composer.json

@@ -29,9 +29,9 @@
         "cakephp/core": "^5.0",
         "cakephp/event": "^5.0",
         "cakephp/utility": "^5.0",
-        "composer/ca-bundle": "^1.2",
+        "composer/ca-bundle": "^1.5",
         "psr/http-client": "^1.0.2",
-        "psr/http-factory": "^1.0.2",
+        "psr/http-factory": "^1.1",
         "psr/http-message": "^1.1 || ^2.0",
         "psr/http-server-handler": "^1.0.2",
         "psr/http-server-middleware": "^1.0.2",
@@ -40,7 +40,7 @@
     },
     "provide": {
         "psr/http-client-implementation": "^1.0",
-        "psr/http-factory-implementation": "^1.0",
+        "psr/http-factory-implementation": "^1.1",
         "psr/http-server-handler-implementation": "^1.0",
         "psr/http-server-middleware-implementation": "^1.0"
     },

+ 1 - 0
tests/TestCase/Cache/Engine/RedisEngineTest.php

@@ -40,6 +40,7 @@ class RedisEngineTest extends TestCase
     {
         parent::setUp();
         $this->skipIf(!class_exists('Redis'), 'Redis extension is not installed or configured properly.');
+        $this->skipIf(PHP_VERSION_ID >= 80400, 'redis.io currrently generates an error on PHP 8.4');
 
         $this->port = env('REDIS_PORT', $this->port);