diff --git a/readthedocs/misc/v2-migration-guide.rst b/readthedocs/misc/v2-migration-guide.rst index 774e8634..96ef3b6e 100644 --- a/readthedocs/misc/v2-migration-guide.rst +++ b/readthedocs/misc/v2-migration-guide.rst @@ -494,6 +494,10 @@ empty media. The ``telethon.tl.patched`` hack has been removed. +The message sender no longer is the channel when no sender is provided by Telegram. Telethon used +to patch this value for channels to be the same as the chat, but now it will be faithful to +Telegram's value. + In order to avoid breaking more code than strictly necessary, ``.raw_text`` will remain a synonym of ``.message``, and ``.text`` will still be the text formatted through the ``client.parse_mode``. However, you're encouraged to change uses of ``.raw_text`` with ``.message``, and ``.text`` with diff --git a/telethon/types/_custom/message.py b/telethon/types/_custom/message.py index 278bc0e7..54dde6b0 100644 --- a/telethon/types/_custom/message.py +++ b/telethon/types/_custom/message.py @@ -410,13 +410,6 @@ class Message(ChatGetter, SenderGetter): if isinstance(message, _tl.Message): if message.from_id is not None: sender_id = utils.get_peer_id(message.from_id) - if sender_id is None and message.peer_id and not isinstance(message, _tl.MessageEmpty): - # If the message comes from a Channel, let the sender be it - # ...or... - # incoming messages in private conversations no longer have from_id - # (layer 119+), but the sender can only be the chat we're in. - if message.post or (not message.out and isinstance(message.peer_id, _tl.PeerUser)): - sender_id = utils.get_peer_id(message.peer_id) # Note that these calls would reset the client ChatGetter.__init__(self, message.peer_id, broadcast=message.post)