Skip to content

Switch to danog/AsyncOrm!

Compare
Choose a tag to compare
@danog danog released this 07 Apr 16:47
· 274 commits to v8 since this release

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:

New Methods:

Changed Methods:

New Constructors:

Changed Constructors:

Deleted Constructors:

  • updateGroupInvitePrivacyForbidden

Fixes:

  • Fix Message::read!
  • Multiple other bugfixes and performance improvements!