Maksym Veremchuk
295c736360
Fix InvalidBuffedError on incomplete recv data ( #4740 )
...
Co-authored-by: Maksym Veremchuk <jack.j2m@proton.me >
2026-02-11 20:01:46 +01:00
Lonami Exo
302a9a8c5f
Partially revert "Implement perfect forward secrecy for MTProto ( #4618 )"
...
This partially reverts commit 5a3a94eb51 .
It should be re-introduced once the rest of comments are addressed.
Session changes are kept for the future, even if unused for now,
as there may be people who have already upgraded their session.
2025-11-13 18:09:38 +01:00
habcawa
5a3a94eb51
Implement perfect forward secrecy for MTProto ( #4618 )
2025-11-07 23:45:56 +01:00
Lonami Exo
baf35e9e7e
Fix Python 3.14 support
...
By lazily initializing loop-related properties.
Closes #4712 .
2025-10-18 20:53:14 +02:00
Humberto Gontijo
d80898ecc5
Add experimental support for async sessions ( #4667 )
...
There no plans for this to ever be non-experimental in v1.
2025-07-28 17:03:31 +02:00
Lonami Exo
5f0695d21b
Fix time offset check was in opposite branch
2025-04-18 18:40:53 +02:00
Lonami Exo
9545011de6
Update time offset if first message is badMsgNotification
...
This should prevent the library from getting stuck during connect.
2025-04-17 17:08:08 +02:00
delobanov
aec957d62d
Add error message back to proxy errors ( #4443 )
2024-08-29 23:54:34 +02:00
delobanov
46854a7660
Fix ConnectionError() takes no keyword arguments with proxies ( #4440 )
2024-08-28 22:41:38 +02:00
Lonami Exo
1974b663a2
Add missing type to _store_own_updates
2024-04-28 10:16:56 +02:00
Confused Character
22bf0b4310
Add custom secret support to TcpMTProxy ( #4309 )
2024-02-16 22:45:38 +01:00
Lonami Exo
7ce0b2f940
Fix invalid date type in UpdateShort
2023-09-12 17:16:55 +02:00
Lonami Exo
128b707488
Don't treat asyncio.IncompleteReadError as unhandled
...
The library will behave the same, but the log severity is lowered.
2023-08-03 19:01:10 +02:00
Lonami Exo
4ff7ac6b75
Handle CancelledError inside mtprotosender recv loop
2023-06-02 19:04:51 +02:00
Lonami Exo
6a7a981b7a
Fix asyncio.CancelledError was being swallowed by inner except
...
Closes #4104 .
2023-05-08 22:34:12 +02:00
Lonami Exo
ccf67d0f4f
Exit receive loop on IOError or unhandled exceptions
...
May help with #4088 .
2023-04-29 12:53:25 +02:00
Lonami Exo
03ff996ace
Improve unhelpful 'readexactly size can not be less than zero'
...
Technically closes #4092 , as the error is now properly handled.
2023-04-29 12:33:32 +02:00
David
d419979406
Declare missing exception variable ( #4087 )
2023-04-12 17:36:43 +02:00
Lonami Exo
fd09284598
Update FAQ
...
Closes #3759 .
2023-04-06 14:32:45 +02:00
Lonami Exo
3e64ea35ff
Update FAQ
2023-04-06 13:25:47 +02:00
Lonami Exo
be59c36ed3
Handle errors at connection level
...
Closes #4042 .
2023-03-12 17:43:36 +01:00
Lonami Exo
acd3407418
Propagate errors at the connection level
2023-03-12 17:43:19 +01:00
Lonami Exo
f3414d134a
Handle invalid buffers at protocol level
...
See #4042 .
2023-03-12 17:27:22 +01:00
Lonami Exo
d81eb0b2e8
Apply pts returned by some additional requests
...
When a bot account sends a message, deletes it, and sends a new one,
very reliably it would detect a gap, and as a result recover the
second message it sent, processing it itself (because the hack with
`_self_outgoing` cannot possibly work when catching up).
Now certain `rpc_result` are also processed as-if they were updates
(including the ones from deleting messages), which solves this gap
issue. Not entirely sure if it's a hack or the intended way to do it
(since Telegram *does* return proper `updates` for other RPCs), but
it seems to solve this particular problem.
Other requests such as reading history, mentions or reactions also
return an instance of this type, but the `pts_count` should be 0,
and at worst it should simply trigger a gap, which shouldn't be a
big deal.
2023-01-14 12:31:01 +01:00
Lonami Exo
83bafa25e3
Stop using asyncio.get_event_loop()
...
It is deprecated in newer Python versions.
Closes #4013 .
2023-01-11 21:02:29 +01:00
Lonami Exo
2ffac2dcdb
Handle DestroyAuthKey result more gracefully
2022-10-21 15:52:00 +02:00
Lonami Exo
f902c9293a
Fix log message formatting when obj was not updates
2022-10-21 15:50:37 +02:00
Lonami Exo
a7db08d020
Fix sender destroy session handling was not running
2022-10-21 15:49:18 +02:00
Lonami Exo
17516318e6
Add a hard timeout on disconnect
...
Closes #3917 .
2022-09-21 10:58:35 +02:00
Lonami Exo
7d21b40401
Revert "Make sessions async"
...
This reverts commit d2de0f3aca .
2022-08-30 12:32:21 +02:00
Lonami Exo
1af6d9a873
Properly log RpcError with no parent request
...
This should get rid of the unexpected BufferError traceback.
2022-05-31 11:02:34 +02:00
Lonami Exo
3a44f56f64
Also process own updates in MessageBox
2022-05-19 16:40:32 +02:00
Lonami Exo
184984ac51
Protect against potential replay attacks
...
See #3753 .
2022-05-18 12:24:28 +02:00
Lonami Exo
db09a92bc5
Make use of the new MessageBox
2022-05-13 13:17:16 +02:00
Lonami Exo
fdb0720fe9
Don't reset the auth_key upon receiving -404
2022-05-12 12:03:48 +02:00
Tulir Asokan
d2de0f3aca
Make sessions async
...
SQLiteSession is not updated, don't try to use it
2022-05-12 10:36:10 +02:00
Lonami Exo
4c771bf2af
Fix setting logout result was not checking for future cancellation
2021-02-27 15:14:44 +01:00
Lonami Exo
292a36f760
Handle DestroySessionRes
...
Should close #1706 .
2021-02-27 15:13:53 +01:00
Lonami Exo
a955138021
Fix invoking requests ordered
...
Closes #1709 .
2021-02-27 15:03:05 +01:00
Lonami Exo
8f0de3d285
Fix TypeNotFoundError was not being propagated
...
Closes #1697 . This would cause deadlocks, as the request future
would never be resolved, so await would wait forever.
2021-02-11 19:27:57 +01:00
Lonami Exo
ee0fc5cc29
Fix AttributeError on reconnect with no retries
...
Closes #1646 .
2020-12-11 21:43:39 +01:00
Lonami Exo
becfe2ce7a
Start reconnect if a second ping is sent without a pong for the first
...
May help with #1564 .
2020-12-11 17:18:25 +01:00
Lonami Exo
f2f43336c6
Always use python-socks when available
...
Relying on Python 3.6 or above to be installed to unconditionally
use this library would break user's code, because this is a new
optional dependency that users may not have installed.
Instead, always use the new library when available, which should
work better than pysocks because it natively supports asyncio.
2020-11-28 12:09:46 +01:00
Serhii Dylda
59da53ec48
Fix typing once again
2020-11-09 20:22:22 +01:00
Serhii Dylda
a68800b3f0
Remove unnecessary if clause
2020-11-09 20:09:08 +01:00
Serhii Dylda
38d8a54cc1
Fix protocol typing for python-socks.
2020-11-09 20:05:09 +01:00
Serhii Dylda
633986cfa6
Replace PySocks with python-socks for Python >= 3.6
...
See discussion at (https://github.com/LonamiWebs/Telethon/pull/1623 )
Small fixes for `local_addr` argument.
2020-11-09 19:59:54 +01:00
Lonami Exo
d9ddf8858e
Add missing local_addr to proxy connection, bump version
...
Bug introduced by #1587 .
2020-10-22 10:13:29 +02:00
Lonami Exo
026c992395
Don't try to reconnect when authkey is invalid
2020-10-07 10:40:34 +02:00
Stefan
d2756cf68f
Add support for local_ip address binding ( #1587 )
2020-10-07 10:03:19 +02:00