From cadc5f478f83190695a4bfd2e5458b61bd1ae740 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 23 Jan 2026 21:12:43 +0700 Subject: [PATCH 1/6] Fix deprecated PDO::MYSQL_ATTR_INIT_COMMAND --- README.md | 14 ++++++++++++-- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../error-hero-module.local.php | 6 +++++- .../config/autoload/error-hero-module.local.php | 6 +++++- spec/Listener/MvcSpec.php | 6 +++++- spec/Middleware/MezzioFactorySpec.php | 15 +++++++++++---- spec/Middleware/MezzioSpec.php | 13 +++++++++++-- spec/ModuleSpec.php | 6 +++++- 14 files changed, 89 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 1c3686ee..aa2610c8 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,11 @@ You can use 'db' (with _Laminas\Db_) config or 'doctrine' (with _DoctrineORMModu ```php [ 'username' => 'mysqluser', @@ -72,7 +77,7 @@ return [ 'database' => 'mysqldbname', 'host' => 'mysqlhost', 'driver_options' => [ - \PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', + $pdoMysqlInitCommandAttr => 'SET NAMES \'UTF8\'', ], ], ]; @@ -83,6 +88,11 @@ return [ ```php [ 'connection' => [ @@ -95,7 +105,7 @@ return [ 'host' => 'mysqlhost', 'port' => '3306', 'driverOptions' => [ - \PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', + $pdoMysqlInitCommandAttr => 'SET NAMES \'UTF8\'', ], ], ], diff --git a/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php b/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php index 844cffb0..3e86b591 100644 --- a/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php @@ -5,6 +5,10 @@ use Laminas\Mail\Transport\InMemory; use Laminas\ServiceManager\Factory\InvokableFactory; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'service_manager' => [ @@ -20,7 +24,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-for-enable-display-errors/error-hero-module.local.php b/spec/Fixture/config/autoload-for-enable-display-errors/error-hero-module.local.php index 9c4d1a3a..edd4810a 100644 --- a/spec/Fixture/config/autoload-for-enable-display-errors/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-enable-display-errors/error-hero-module.local.php @@ -5,6 +5,10 @@ use Laminas\Mail\Transport\InMemory; use Laminas\ServiceManager\Factory\InvokableFactory; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'service_manager' => [ @@ -20,7 +24,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-for-specific-error-and-exception/error-hero-module.local.php b/spec/Fixture/config/autoload-for-specific-error-and-exception/error-hero-module.local.php index 2ed167b6..3ffd0f05 100644 --- a/spec/Fixture/config/autoload-for-specific-error-and-exception/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-specific-error-and-exception/error-hero-module.local.php @@ -2,6 +2,10 @@ use Laminas\Db\Adapter\AdapterInterface; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'db' => [ @@ -10,7 +14,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-for-xmlhttprequest-with-non-json-message/error-hero-module.local.php b/spec/Fixture/config/autoload-for-xmlhttprequest-with-non-json-message/error-hero-module.local.php index db179b70..81d3cc96 100644 --- a/spec/Fixture/config/autoload-for-xmlhttprequest-with-non-json-message/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-xmlhttprequest-with-non-json-message/error-hero-module.local.php @@ -2,6 +2,10 @@ use Laminas\Db\Adapter\AdapterInterface; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'db' => [ @@ -10,7 +14,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-for-xmlhttprequest/error-hero-module.local.php b/spec/Fixture/config/autoload-for-xmlhttprequest/error-hero-module.local.php index 7ead9d16..cf26a1c7 100644 --- a/spec/Fixture/config/autoload-for-xmlhttprequest/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-xmlhttprequest/error-hero-module.local.php @@ -2,6 +2,10 @@ use Laminas\Db\Adapter\AdapterInterface; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'db' => [ @@ -10,7 +14,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-with-doctrine/error-hero-module.local.php b/spec/Fixture/config/autoload-with-doctrine/error-hero-module.local.php index 02c7369b..c72b2b46 100644 --- a/spec/Fixture/config/autoload-with-doctrine/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-with-doctrine/error-hero-module.local.php @@ -3,6 +3,10 @@ use Doctrine\DBAL\Driver\PDO\MySql\Driver; use Laminas\Db\Adapter\AdapterInterface; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'doctrine' => [ @@ -16,7 +20,7 @@ 'host' => '127.0.0.1', 'port' => '3306', 'driverOptions' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], ], diff --git a/spec/Fixture/config/autoload-with-enable-sendmail-with-empty-email-receivers/error-hero-module.local.php b/spec/Fixture/config/autoload-with-enable-sendmail-with-empty-email-receivers/error-hero-module.local.php index 5d9098e6..f03fc675 100644 --- a/spec/Fixture/config/autoload-with-enable-sendmail-with-empty-email-receivers/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-with-enable-sendmail-with-empty-email-receivers/error-hero-module.local.php @@ -5,6 +5,10 @@ use Laminas\Mail\Transport\InMemory; use Laminas\ServiceManager\Factory\InvokableFactory; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'service_manager' => [ @@ -20,7 +24,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload-with-enable-sendmail/error-hero-module.local.php b/spec/Fixture/config/autoload-with-enable-sendmail/error-hero-module.local.php index 5bdd8c79..20e02e59 100644 --- a/spec/Fixture/config/autoload-with-enable-sendmail/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-with-enable-sendmail/error-hero-module.local.php @@ -5,6 +5,10 @@ use Laminas\Mail\Transport\InMemory; use Laminas\ServiceManager\Factory\InvokableFactory; +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : \PDO::MYSQL_ATTR_INIT_COMMAND; + return [ 'service_manager' => [ @@ -20,7 +24,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Fixture/config/autoload/error-hero-module.local.php b/spec/Fixture/config/autoload/error-hero-module.local.php index 61b7b436..ffd46d03 100644 --- a/spec/Fixture/config/autoload/error-hero-module.local.php +++ b/spec/Fixture/config/autoload/error-hero-module.local.php @@ -4,6 +4,10 @@ use PDO; use Laminas\Db\Adapter\AdapterInterface; + +$pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; return [ 'db' => [ @@ -12,7 +16,7 @@ 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], diff --git a/spec/Listener/MvcSpec.php b/spec/Listener/MvcSpec.php index f4b1c977..862af00e 100644 --- a/spec/Listener/MvcSpec.php +++ b/spec/Listener/MvcSpec.php @@ -271,13 +271,17 @@ 'line' => 2 ]); + $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; + $dbAdapter = new Adapter([ 'username' => 'root', 'password' => '', 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ]); diff --git a/spec/Middleware/MezzioFactorySpec.php b/spec/Middleware/MezzioFactorySpec.php index f4be5d18..00c07931 100644 --- a/spec/Middleware/MezzioFactorySpec.php +++ b/spec/Middleware/MezzioFactorySpec.php @@ -27,7 +27,13 @@ Psr11PimpleContainer::class => new Psr11PimpleContainer(new PimpleContainer()), ]); - given('config', fn() : array => [ + given('config', function () : array { + + $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; + + return [ 'db' => [ 'username' => 'root', @@ -35,7 +41,7 @@ 'driver' => 'pdo_mysql', 'dsn' => 'mysql:host=localhost;dbname=errorheromodule', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], 'adapters' => [ 'my-adapter' => [ @@ -44,7 +50,7 @@ 'username' => 'root', 'password' => '', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ], ], @@ -121,7 +127,8 @@ ], ], - ]); + ]; + }); describe('__invoke()', function (): void { diff --git a/spec/Middleware/MezzioSpec.php b/spec/Middleware/MezzioSpec.php index 3b340612..1ce22ff4 100644 --- a/spec/Middleware/MezzioSpec.php +++ b/spec/Middleware/MezzioSpec.php @@ -48,13 +48,17 @@ given('logger', function (): Logger { + $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; + $dbAdapter = new Adapter([ 'username' => 'root', 'password' => '', 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ]); @@ -177,13 +181,18 @@ ]); given('dbWriter', function (): Db { + + $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; + $dbAdapter = new Adapter([ 'username' => 'root', 'password' => '', 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=errorheromodule;host=127.0.0.1', 'driver_options' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ]); diff --git a/spec/ModuleSpec.php b/spec/ModuleSpec.php index 37b46f48..0fa94bd2 100644 --- a/spec/ModuleSpec.php +++ b/spec/ModuleSpec.php @@ -159,9 +159,13 @@ $driver = Double::instance(['extends' => Driver::class, 'methods' => '__construct']); allow($driver)->toReceive('getName')->andReturn('pdo_mysql'); + $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') + ? \Pdo\Mysql::ATTR_INIT_COMMAND + : PDO::MYSQL_ATTR_INIT_COMMAND; + allow($connection)->toReceive('getParams')->andReturn([ 'driverOptions' => [ - PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'", + $pdoMysqlInitCommandAttr => "SET NAMES 'UTF8'", ], ]); allow($connection)->toReceive('getUsername')->andReturn('root'); From 1ed877124e08dbb26e64293a0cef2510d2e7ee55 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 23 Jan 2026 21:15:21 +0700 Subject: [PATCH 2/6] no need to change readme --- README.md | 12 ++---------- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../error-hero-module.local.php | 7 ++++--- .../config/autoload/error-hero-module.local.php | 5 +++-- spec/Listener/MvcSpec.php | 5 +++-- spec/Middleware/MezzioFactorySpec.php | 5 +++-- spec/Middleware/MezzioSpec.php | 9 +++++---- spec/ModuleSpec.php | 5 +++-- src/Compat/Logger.php | 2 -- 15 files changed, 51 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index aa2610c8..eb53aa79 100644 --- a/README.md +++ b/README.md @@ -65,10 +65,6 @@ You can use 'db' (with _Laminas\Db_) config or 'doctrine' (with _DoctrineORMModu [ 'username' => 'mysqluser', @@ -77,7 +73,7 @@ return [ 'database' => 'mysqldbname', 'host' => 'mysqlhost', 'driver_options' => [ - $pdoMysqlInitCommandAttr => 'SET NAMES \'UTF8\'', + \PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', ], ], ]; @@ -89,10 +85,6 @@ return [ [ 'connection' => [ @@ -105,7 +97,7 @@ return [ 'host' => 'mysqlhost', 'port' => '3306', 'driverOptions' => [ - $pdoMysqlInitCommandAttr => 'SET NAMES \'UTF8\'', + \PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', ], ], ], diff --git a/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php b/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php index 3e86b591..941b64c8 100644 --- a/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php +++ b/spec/Fixture/config/autoload-for-cannot-connect-to-db/error-hero-module.local.php @@ -1,13 +1,14 @@ 2 ]); - $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') - ? \Pdo\Mysql::ATTR_INIT_COMMAND + $pdoMysqlInitCommandAttr = defined(Mysql::class . '::ATTR_INIT_COMMAND') + ? Mysql::ATTR_INIT_COMMAND : PDO::MYSQL_ATTR_INIT_COMMAND; $dbAdapter = new Adapter([ diff --git a/spec/Middleware/MezzioFactorySpec.php b/spec/Middleware/MezzioFactorySpec.php index 00c07931..2dd19dc3 100644 --- a/spec/Middleware/MezzioFactorySpec.php +++ b/spec/Middleware/MezzioFactorySpec.php @@ -2,6 +2,7 @@ namespace ErrorHeroModule\Spec\Middleware; +use Pdo\Mysql; use Doctrine\DBAL\Connection; use Doctrine\DBAL\Driver\PDO\MySql\Driver; use Doctrine\ORM\EntityManager; @@ -29,8 +30,8 @@ given('config', function () : array { - $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') - ? \Pdo\Mysql::ATTR_INIT_COMMAND + $pdoMysqlInitCommandAttr = defined(Mysql::class . '::ATTR_INIT_COMMAND') + ? Mysql::ATTR_INIT_COMMAND : PDO::MYSQL_ATTR_INIT_COMMAND; return [ diff --git a/spec/Middleware/MezzioSpec.php b/spec/Middleware/MezzioSpec.php index 1ce22ff4..cf807672 100644 --- a/spec/Middleware/MezzioSpec.php +++ b/spec/Middleware/MezzioSpec.php @@ -2,6 +2,7 @@ namespace ErrorHeroModule\Spec\Middleware; +use Pdo\Mysql; use Closure; use ErrorException; use ErrorHeroModule\Compat\Logger; @@ -48,8 +49,8 @@ given('logger', function (): Logger { - $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') - ? \Pdo\Mysql::ATTR_INIT_COMMAND + $pdoMysqlInitCommandAttr = defined(Mysql::class . '::ATTR_INIT_COMMAND') + ? Mysql::ATTR_INIT_COMMAND : PDO::MYSQL_ATTR_INIT_COMMAND; $dbAdapter = new Adapter([ @@ -182,8 +183,8 @@ given('dbWriter', function (): Db { - $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') - ? \Pdo\Mysql::ATTR_INIT_COMMAND + $pdoMysqlInitCommandAttr = defined(Mysql::class . '::ATTR_INIT_COMMAND') + ? Mysql::ATTR_INIT_COMMAND : PDO::MYSQL_ATTR_INIT_COMMAND; $dbAdapter = new Adapter([ diff --git a/spec/ModuleSpec.php b/spec/ModuleSpec.php index 0fa94bd2..13e1324b 100644 --- a/spec/ModuleSpec.php +++ b/spec/ModuleSpec.php @@ -2,6 +2,7 @@ namespace ErrorHeroModule\Spec; +use Pdo\Mysql; use Doctrine\DBAL\Connection; use Doctrine\DBAL\Driver\PDO\MySql\Driver; use Doctrine\ORM\EntityManager; @@ -159,8 +160,8 @@ $driver = Double::instance(['extends' => Driver::class, 'methods' => '__construct']); allow($driver)->toReceive('getName')->andReturn('pdo_mysql'); - $pdoMysqlInitCommandAttr = defined('Pdo\\Mysql::ATTR_INIT_COMMAND') - ? \Pdo\Mysql::ATTR_INIT_COMMAND + $pdoMysqlInitCommandAttr = defined(Mysql::class . '::ATTR_INIT_COMMAND') + ? Mysql::ATTR_INIT_COMMAND : PDO::MYSQL_ATTR_INIT_COMMAND; allow($connection)->toReceive('getParams')->andReturn([ diff --git a/src/Compat/Logger.php b/src/Compat/Logger.php index df54c177..31533275 100644 --- a/src/Compat/Logger.php +++ b/src/Compat/Logger.php @@ -257,8 +257,6 @@ public function __construct($options = null) /** * Shutdown all writers - * - * @return void */ public function __destruct() { From 05a229b19b9be5e6a052d4df72b90a65b29cacc1 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 23 Jan 2026 21:16:28 +0700 Subject: [PATCH 3/6] no need to change readme --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index eb53aa79..1c3686ee 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,6 @@ You can use 'db' (with _Laminas\Db_) config or 'doctrine' (with _DoctrineORMModu ```php [ 'username' => 'mysqluser', @@ -84,7 +83,6 @@ return [ ```php [ 'connection' => [ From 2f74f11706105c7550c7f86f169946ca1fca6628 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 23 Jan 2026 21:17:38 +0700 Subject: [PATCH 4/6] add php 8.5 --- .github/workflows/ci_build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_build.yml b/.github/workflows/ci_build.yml index 6a4336eb..edd50640 100644 --- a/.github/workflows/ci_build.yml +++ b/.github/workflows/ci_build.yml @@ -13,7 +13,7 @@ jobs: strategy: fail-fast: false matrix: - php-versions: ['8.2', '8.3', '8.4'] + php-versions: ['8.2', '8.3', '8.4', '8.5'] steps: - name: Setup PHP Action uses: shivammathur/setup-php@v2 From 5c2a12e968a40d15797ba72dba59e82eed6aad4e Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 23 Jan 2026 21:22:52 +0700 Subject: [PATCH 5/6] only run with coverage on php 8.4 --- .github/workflows/ci_build.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci_build.yml b/.github/workflows/ci_build.yml index edd50640..c05c31fd 100644 --- a/.github/workflows/ci_build.yml +++ b/.github/workflows/ci_build.yml @@ -20,7 +20,7 @@ jobs: with: extensions: intl php-version: "${{ matrix.php-versions }}" - coverage: xdebug + coverage: ${{ matrix.php-versions == '8.4' && 'xdebug' || 'none' }} - name: Setup MySQL uses: shogo82148/actions-setup-mysql@v1 with: @@ -40,11 +40,20 @@ jobs: run: | composer phpstan bin/rector process --dry-run - - name: "Run test suite" + - name: "Run test suite (no coverage)" + if: matrix.php-versions != '8.4' + run: | + composer dump-autoload -o + bin/kahlan + + - name: "Run test suite (with coverage)" + if: matrix.php-versions == '8.4' run: | composer dump-autoload -o mkdir -p build/logs && bin/kahlan --coverage=4 --reporter=verbose --clover=build/logs/clover.xml + - name: Upload coverage to Codecov + if: matrix.php-versions == '8.4' uses: codecov/codecov-action@v1 with: token: ${{ secrets.CODECOV_TOKEN }} From 491208f5436b7fc609eae73a0382a8b7d5dc54ad Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Sat, 24 Jan 2026 00:51:41 +0700 Subject: [PATCH 6/6] bump to kahlan 6.1 --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 841c227c..86db3a64 100644 --- a/composer.json +++ b/composer.json @@ -58,7 +58,7 @@ "require-dev": { "doctrine/dbal": "^3.9.3", "doctrine/doctrine-orm-module": "^4.2.1 || ^5.3", - "kahlan/kahlan": "^5.2.8", + "kahlan/kahlan": "^6.1", "laminas/laminas-cli": "^1.11", "laminas/laminas-coding-standard": "^3.0", "laminas/laminas-form": "^2.16 || ^3.21",