diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b6e0e221..b0a81668 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,6 +73,11 @@ jobs: castor: bin: 'bin/castor' method: 'bin/castor' + # - php: "8.4" + # castor: + # bin: 'bin/castor' + # method: 'bin/castor' + # allow_failures: true steps: - name: Checkout diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b151dbc..004c88d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ * Add support for custom php.ini in compile command * Do not validate commande options/args as soon as `#[AsRawTokens] is used * Update all PHP vendor +* Add partial support for PHP 8.4 (`ssh_()` functions are not supported yet) ### Fixes diff --git a/src/Listener/ConfigureCastorListener.php b/src/Listener/ConfigureCastorListener.php index 43bc2f70..58a07d97 100644 --- a/src/Listener/ConfigureCastorListener.php +++ b/src/Listener/ConfigureCastorListener.php @@ -29,7 +29,7 @@ public function configureCastor(BeforeBootEvent $event): void $this->logger->pushHandler(new ConsoleHandler($this->output)); } - $this->errorHandler->setDefaultLogger($this->logger, [ + $map = [ \E_COMPILE_WARNING => LogLevel::WARNING, \E_CORE_WARNING => LogLevel::WARNING, \E_USER_WARNING => LogLevel::WARNING, @@ -44,8 +44,13 @@ public function configureCastor(BeforeBootEvent $event): void \E_ERROR => LogLevel::ERROR, \E_PARSE => LogLevel::ERROR, \E_RECOVERABLE_ERROR => LogLevel::ERROR, - \E_STRICT => LogLevel::ERROR, \E_USER_ERROR => LogLevel::ERROR, - ]); + ]; + + if (\PHP_VERSION_ID < 80400) { + $map[\E_STRICT] = LogLevel::ERROR; + } + + $this->errorHandler->setDefaultLogger($this->logger, $map); } }