This release extracts MadelineProto's async ORM into a separate library, danog/AsyncOrm: a PHP async ORM based on AMPHP v3 and fibers!
danog/AsyncOrm supports MySQL, Redis, Postgres, features read and write-back caching, type-specific optimizations, and much more!
Among other news, the danog/tg-file-decoder library was also updated&modernized.
Also, the
downloadRenameBot.php was updated to support downloading videos directly from YouTube (without using the disk!), here's the new repo: https://github.com/danog/downloadRenameBot/Breaking changes:
- Raise the minimum PHP version to 8.2.17.
- Move all ORM classes to the
danog\AsyncOrm namespace- Remove support for definition of ORM properties using
$dbProperties, the new OrmMappedArray attribute should be used instead, see the new docs for more info and examples!- Modernized and updated
danog/tg-file-decoder, switching to enums and readonly properties.- Use bot API IDs in all constructors returned by MadelineProto.
- Finalize all methods in the event handler.
- Enable strict static analysis for EventHandler.
- Removed the JSON and STRING serializer types from the ORM settings, the correct serializer will now be chosen based on the type of the value specified in OrmKeyedArray.
- Postgres/Redis MadelineProto instances need a manual database migration before upgrading (first updateSettings to the Memory backend, then upgrade, then updateSettings to Postgres/Redis); MySQL and Memory instances will be migrated automatically, no need to do anything.
Features:
- Update to layer 177, see here for the full layer changelog!
- Add support for the stable versions of amphp/mysql, amphp/postgres through https://github.com/danog/AsyncOrm!
Fixes:
- Fix Message::read!
- Multiple other bugfixes and performance improvements!