Интерфейсы не завсят от PDO (но сам пакет да, там часть реализации именно под PDO). По идее, можно реализовать и сейчас. В идеале, вынуть оттуда PDO-часть в отдельный пакет.
Согласен, об этом же и написал - PDO бы убрать из этого пакета как зависимость, вместе с частью реализации, зависящей от него. Это бы открыло уникальные возможности этого Yii3 пакета. Вроде как ни у кого из конкурентных фреймворков (лара/симф) такого пока нет (из-за обратной совместимости видать) ибо все зависят от PDO с его blocking I/O.
Не уверен только на тему промисов и обработки результатов.
Благодаря Fibers, которые завезли в PHP 8.1 и которые легли в основу amphp/amp v3, Promise по сути скрываются из клиентского кода, позволяя писать асинхронный код (например, асинхронный non-blocking вызов SQL SELECT запроса к БД посредством yiisoft/active-record), написанный в синхронном стиле без каких-либо изменений клиентского кода и сигнатуры методов.
Поздравляю с релизом Yii3! Было бы очень круто, если бы yiisoft/db не зависел бы от ext-pdo, чтобы юзать удобные на мой взгляд yiisoft/db + yiisoft/active-record в async приложениях на основе amphp/amp, реализовав кастомный yii3 async DB драйвер для mysql или postgres с использованием под капотом non-blocking amphp/mysql или amphp/postgres.
Согласен, об этом же и написал - PDO бы убрать из этого пакета как зависимость, вместе с частью реализации, зависящей от него. Это бы открыло уникальные возможности этого Yii3 пакета. Вроде как ни у кого из конкурентных фреймворков (лара/симф) такого пока нет (из-за обратной совместимости видать) ибо все зависят от PDO с его blocking I/O.
Благодаря
Fibers, которые завезли в PHP 8.1 и которые легли в основуamphp/ampv3,Promiseпо сути скрываются из клиентского кода, позволяя писать асинхронный код (например, асинхронный non-blocking вызов SQL SELECT запроса к БД посредствомyiisoft/active-record), написанный в синхронном стиле без каких-либо изменений клиентского кода и сигнатуры методов.Поздравляю с релизом Yii3!
Было бы очень круто, если бы
yiisoft/dbне зависел бы отext-pdo, чтобы юзать удобные на мой взглядyiisoft/db+yiisoft/active-recordв async приложениях на основеamphp/amp, реализовав кастомный yii3 async DB драйвер для mysql или postgres с использованием под капотом non-blockingamphp/mysqlилиamphp/postgres.