Lonami Exo
50aa92ebde
Handle CancelledError inside update loop
...
This error is not really unexpected, since the library uses it to
cancel the task during disconnect.
Closes #3921 .
2022-09-14 17:11:13 +02:00
Lonami Exo
7d4424ac2b
Make use of AlbumHack for all albums
...
Closes #3916 .
The new MessageBox system is not designed with "albums come in the
same updates container" in mind (in fact, there was a note about this).
This version was also not intended to be published to PyPi, but it is,
so a workaround must be made for events.Album to remain working.
In essence, AlbumHack will always be used even if it technically did not
need to be used previously. This will cause a small delay for those
updates, but it should not be a major issue.
2022-09-14 16:53:56 +02:00
Lonami Exo
a66df977f7
Fix UpdateShort from socket was not unboxed
...
This was causing UpdateShorts to be sent to Raw handlers,
which in turn broke things like QR login.
Should fix #3922 .
2022-09-14 15:53:11 +02:00
Shubham Kumar
935be9dd6e
Fix some MD parsing of inline URLs ( #3920 )
2022-09-09 21:46:06 +02:00
Lonami Exo
8b1bfcdf9c
Bump to v1.25
2022-08-30 12:57:34 +02:00
Lonami Exo
48d7dbe90b
Remove missed async keywords from the revert
...
This should've been in 7d21b40401
.
This completes the revert of async sessions.
2022-08-30 12:40:05 +02:00
Lonami Exo
e87e6738b5
Revert "Add missing async keywords in SQLiteSession"
...
This reverts commit 0f5eeb29e7
.
2022-08-30 12:32:23 +02:00
Lonami Exo
7d21b40401
Revert "Make sessions async"
...
This reverts commit d2de0f3aca
.
2022-08-30 12:32:21 +02:00
Lonami Exo
88b2b9372d
Revert "Mark certain SQLiteSession methods as async"
...
This reverts commit f913ea6b75
.
2022-08-30 12:22:05 +02:00
Lonami Exo
44e3651adf
Revert "Add workaround for SQLiteSession needing save after init"
...
This reverts commit 8190a92aae
.
2022-08-30 12:20:20 +02:00
Lonami Exo
df96ead0ab
Also except ChannelInvalidError during get_diff
...
This change comes from here:
2166d913e6
2022-08-30 12:07:14 +02:00
Tulir Asokan
809a07edac
Fix missing variable and assignment in reset_deadline
2022-08-30 12:05:33 +02:00
Lonami Exo
4b151fbce9
Handle ValueError during get_channel_difference
2022-08-16 12:09:21 +02:00
Lonami Exo
396594060b
Fix reset_deadline was not doing its job
...
This was leading to a soft deadlock, always trying to get difference
but always receiving empty one and not exiting.
2022-08-11 11:04:37 +02:00
Lonami Exo
dd55e7c748
Prevent double-logging of 'timeout for updates'
2022-08-11 10:53:21 +02:00
Devesh Pal
362d06654f
Support sending 4GB files ( #3891 )
2022-07-28 12:30:46 +02:00
Rongrong
046e2cb605
Fix HTML/MD parser producing empty MessageEntity ( #3885 )
...
Closes #3884 . The implementation is also simplified.
2022-07-25 11:11:26 +02:00
Lonami Exo
f90cdf2ffb
Fix apply_difference should not end get diff for secret if not active
2022-05-31 11:58:38 +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
0f5eeb29e7
Add missing async keywords in SQLiteSession
2022-05-30 13:39:08 +02:00
Lonami Exo
441fe9d076
Remove TODOs which are no longer relevant in MessageBox
2022-05-30 13:33:56 +02:00
Lonami Exo
7e0639ac57
Add getting_diff_for assertion in get_channel_difference too
2022-05-30 13:31:29 +02:00
Lonami Exo
898e279218
Assert getting_diff_for is not filled when not possible in get_difference
2022-05-30 13:29:58 +02:00
Lonami Exo
a38170d26a
Assert reset_deadline is not unnecessarily called
2022-05-30 13:28:22 +02:00
Lonami Exo
6f6b207866
Better fix for reset_deadline
...
Follow-up to 876af8f27c
.
The issue was caused because we called end_get_diff to cleanup a diff
that could not actually be started.
This also enables further cleanup later on.
2022-05-30 13:27:04 +02:00
Lonami Exo
876af8f27c
Fix reset_deadline failing when the state map is empty
2022-05-30 13:04:02 +02:00
Lonami Exo
8190a92aae
Add workaround for SQLiteSession needing save after init
2022-05-30 12:59:04 +02:00
Lonami Exo
378ccd17bf
Call catch_up before processing updates if the user wants so
2022-05-25 15:31:39 +02:00
Lonami Exo
aa7a083444
Add missing begin_get_diff call on updatesTooLong
2022-05-25 15:28:15 +02:00
Lonami
b180b53619
Fix typo in ChannelTooLong code path
2022-05-23 16:53:34 +02:00
Lonami Exo
6005585764
Don't crash if periodic session access fails
...
If saving every minute or new entities fails, it's not fatal.
Other places are not checked because it is more critical for
information to be saved, such as disconnect, where we want to
crash if the session cannot be accessed.
2022-05-23 14:02:56 +02:00
Lonami Exo
06b0ae56d4
Treat invalid pts as outdated pts
2022-05-23 13:56:10 +02:00
Lonami Exo
c5bf83eb86
Remove unnecessary workaround when updating local pts
2022-05-23 13:52:32 +02:00
Lonami Exo
5a1b9daf4c
Add back UpdateChannelTooLong check
...
Removed in the previous commit 2bcedb98
.
2022-05-23 13:17:12 +02:00
Lonami Exo
2bcedb9820
Process diff.other_updates as if they are socket updates
...
This prevents duplicates since it contains the control flow to check for pts.
2022-05-23 13:13:39 +02:00
Lonami Exo
9dbf3443d0
Better initialization pts for new channels
2022-05-23 12:20:02 +02:00
Lonami Exo
f50b2f5d61
Handle bans when getting difference
2022-05-23 11:41:59 +02:00
Lonami Exo
dfce1f53a8
Handle PersistentTimestampOutdatedError
2022-05-23 11:10:46 +02:00
Lonami Exo
5e46b6365c
Use the correct type in apply_channel_difference
...
This one should not change the behaviour, but it's done for consistency.
2022-05-23 10:27:57 +02:00
Lonami Exo
d5bfb71e10
Handle get_difference case for secret chats
2022-05-20 20:44:36 +02:00
Lonami Exo
af56429e78
Add repr to MessageBox types
2022-05-20 18:15:43 +02:00
Lonami Exo
dfc6d448ed
Expose catch_up in client constructor and default it to False
2022-05-20 14:55:47 +02:00
Lonami Exo
3a44f56f64
Also process own updates in MessageBox
2022-05-19 16:40:32 +02:00
Lonami Exo
80685191ab
Add a hack to enable StringSession.save be (a)sync
2022-05-18 14:53:04 +02:00
Lonami Exo
184984ac51
Protect against potential replay attacks
...
See #3753 .
2022-05-18 12:24:28 +02:00
Lonami Exo
09b9cd8193
Fix initial session state load
2022-05-16 19:01:05 +02:00
Lonami Exo
c16fb0dae6
Add missing await in qr_login
2022-05-16 18:56:24 +02:00
Lonami Exo
898eb5b82f
Call GetState on login to init MessageBox
2022-05-16 10:05:07 +02:00
Lonami Exo
3c7f53802f
Fix saving of update state
2022-05-16 09:36:57 +02:00
Lonami Exo
0dff21a80f
Add missing async in sqlite
2022-05-16 09:36:41 +02:00