Breaking changes:
- Removed the
flush()
method: thepostpone
flag will now only postpone flushing to the end of the event loop queue, instead of never triggering it untilflush()
or a non-postponed method is called by @danog - Removed the deprecated
getDialogs
method, please usegetDialogIds
instead by @danog
Features:
- Add
ChannelParticipant
update, received whenever a participant leaves, joins or is banned or admined in a channel or supergroup by @ahjdev - Add a
FilterTopicId
filter to filter messages by topic ID by @ahjdev - Add
queueId
parameter to methods to allow enforcing server-side execution order when usingpostpone
or invoking methods concurrently by @danog
Fixes:
-
Completely refactor message and update handling, improving performance and fixing various bugs by @danog
-
Fix BotChatInviteRequest by @danog
-
Update the source code of downloadRenameBot.php by @ahjdev
-
Report exceptions thrown from event handler to the report peer(s) of the current event handler when using multiple event handler with
startAndLoopMulti
orEventLoop::queue(MyEventHandler::startAndLoop(...), '...madeline');
by @danog
Note that for performance reasons, some internal or connection exceptions not thrown from the event handler and exceptions thrown fromonStart
may still get reported (only to, or also to) the last started event handler. -
Completely remove postponing from the API to avoid unwanted side effects (sequentially queued requests are still bundled in a single container anyway by @danog
-
Use async output buffer stream with
downloadToBrowser
by @danog -
Secret chat media improvements by @danog