Lonami Exo
3afabdd7c0
Remove auto-reconnect callback
...
It's an abstraction leak.
The client should know to refetch updates if a long period passed
without them on its own.
2022-01-18 18:21:56 +01:00
Lonami Exo
7142734fb4
Remove StateCache and EntityCache
2022-01-18 18:19:14 +01:00
Lonami Exo
8fc08a0c96
Remove remaining self._all_dcs uses
2022-01-18 18:16:27 +01:00
Lonami Exo
f8264abb5a
Clean-up client's __init__ and remove entity cache
...
Entity cache uses are removed. It was a source of ever-growing memory
usage that has to be reworked. This affects everything that tried to
obtain an input entity, input sender or input chat (such as the
SenderGetter or calls to _get_entity_pair). Input entities need to be
reworked in any case.
Its removal also affects the automatic cache of any raw API request.
Raise last error parameter is removed, and its behaviour made default.
The connection type parameter has been removed, since users really have
no need to change it.
A few more attributes have been made private, since users should not
mess with those.
2022-01-18 12:56:17 +01:00
Lonami Exo
85a9c13129
Fix login info did not persist
2022-01-17 11:50:28 +01:00
Lonami Exo
1f1f67b0a6
Remove unused _CacheType
2022-01-16 14:04:26 +01:00
Lonami Exo
4f4c7040d1
Stop using futures as one-shot channels
...
Instead, use a single-item queue. This is asyncio.run-friendly,
even when the client is initialized outside of async def.
2022-01-16 13:59:43 +01:00
Lonami Exo
a62627534e
Get rid of client.loop
...
Instead, use the asyncio-intended way of implicit loop.
2022-01-16 13:51:23 +01:00
Lonami Exo
6eadc8aed8
Simplify accepted values in forward, delete and mark read
...
Forward and delete are meant to delete lists.
Now only lists are supported, which should not be an issue
as message.forward_to and message.delete both exist.
mark_read really only works with one message at a time,
so list support was removed for it, as well as the now
redundant max_id.
2022-01-16 13:03:00 +01:00
Lonami Exo
1e779a91b7
Add progress_callback to download_profile_photo
2022-01-16 12:42:05 +01:00
Lonami Exo
dc0f978b59
Support await on any client.action
2022-01-16 12:40:09 +01:00
Lonami Exo
a3513d5232
Remove broken force_sms
2022-01-16 12:19:07 +01:00
Lonami Exo
a95393648f
Remove custom enum parsing
...
Python enums can already be parsed out-of-the-box.
2022-01-16 12:06:42 +01:00
Lonami Exo
fe941cb940
Address immutability issues on connect
2022-01-15 13:41:23 +01:00
Lonami Exo
f5f0c84553
Completely overhaul connections and transports
...
Reduce abstraction leaks. Now the transport can hold any state,
rather than just the tag. It's also responsible to initialize on
the first connection, and they can be cleanly reset.
asyncio connections are no longer used, in favour of raw sockets,
which should avoid some annoyances.
For the time being, more obscure transport modes have been removed,
as well as proxy support, until further cleaning is done.
2022-01-15 13:33:50 +01:00
Lonami Exo
02703e3753
Fix circular import regarding ignore_takeout
2022-01-15 13:18:53 +01:00
Lonami Exo
7524b652c8
Unify setting session state
2022-01-15 11:22:33 +01:00
Lonami Exo
be0da9b183
Update takeout to use less hacks
2022-01-09 14:41:10 +01:00
Lonami Exo
010ee0813a
Rename send_read_acknowledge
2022-01-09 12:18:15 +01:00
Lonami Exo
1b15a34f69
Remove parse_mode from the client
2022-01-09 12:18:15 +01:00
Lonami Exo
e2132d5f7c
Change the way thumb size selection works
2022-01-09 12:18:15 +01:00
Lonami Exo
03de901b7f
Add enum for typing action
2022-01-09 12:18:15 +01:00
Hackintosh 5
8de375323e
Cleanup events code
2021-12-11 21:46:23 +01:00
penn5
dea424fdec
Fix typo in messages.py
2021-12-11 21:46:23 +01:00
Lonami Exo
72fc8f6808
Continue work on Message sending overhaul
2021-10-12 17:59:30 +02:00
Lonami Exo
1c15375ea4
Fix get_participants was monkey-patching User
...
It no longer can do that. User has __slots__.
2021-09-28 21:06:00 +02:00
Lonami Exo
197a1ca996
Fix some modules were public when they should not have been
2021-09-26 19:58:42 +02:00
Lonami Exo
a9e1a574ae
Fix limit was no longer defaulting to empty tuple
...
Introduced by 5a44510e2d
.
When forwarding the calls, both signantures should match.
2021-09-26 18:37:09 +02:00
Lonami Exo
86c47a2771
Use __slots__ in all generated classes
2021-09-26 17:52:16 +02:00
Lonami Exo
8bd4835eb2
Remove build_reply_markup from the client
2021-09-26 17:24:18 +02:00
Lonami Exo
1762f554df
Make events subpackage private
2021-09-24 21:11:50 +02:00
Lonami Exo
5a44510e2d
Forward client calls to impl in a more straightforward manner
2021-09-24 20:46:33 +02:00
Lonami Exo
debde6e856
Completely overhaul errors to be generated dynamically
2021-09-24 20:12:00 +02:00
Lonami Exo
26f6c62ce4
Init update state cache to empty in init
2021-09-19 18:17:37 +02:00
Lonami Exo
3b1660669e
Remove self input user and bot cache from client
...
The session_state cache can be used instead.
This does put get_me with input_peer at a disadvantage, but I expect
this is not used all that often, since 'me' does just fine.
2021-09-19 18:16:12 +02:00
Lonami Exo
cc3d4145d8
Update and persist session state on successful login
2021-09-19 18:15:19 +02:00
Lonami Exo
016347474a
Populate current user on connection if it's not yet saved
2021-09-19 18:01:01 +02:00
Lonami Exo
545e9d69ce
Cache session_state and all_dcs right after connect
2021-09-19 17:51:05 +02:00
Lonami Exo
93dd2a186a
Refresh DC info on connection
2021-09-19 17:41:40 +02:00
Lonami Exo
58c0a5bc24
Make IPv4 mandatory in session files
2021-09-19 17:30:31 +02:00
Lonami Exo
d60ebbe6ea
Fix _get_peer was relying on old utils.resolve_id
2021-09-19 17:21:11 +02:00
Lonami Exo
9479e215fb
Fix remaining upgraded uses of the session to work correctly
2021-09-19 17:08:51 +02:00
Lonami Exo
d33402f02e
Fix _update_loop could get stuck in an infinite loop with no feedback
2021-09-19 17:08:34 +02:00
Lonami Exo
81b4957d9b
Update code to deal with the new sessions
2021-09-19 16:38:11 +02:00
Lonami Exo
29d3c3fd7c
Fix outdated LAYER usage in _create_exported_sender
2021-09-19 15:56:28 +02:00
Lonami Exo
0b54fa7a25
Make edit_message parameters more consistent
2021-09-18 16:54:54 +02:00
Lonami Exo
4321b97e98
No longer run send_code_request from sign_in
2021-09-18 16:36:11 +02:00
Lonami Exo
431a9309e3
Remove mark from peer_id
2021-09-18 16:29:45 +02:00
Lonami Exo
9f3bb52e4e
Possibly fix _get_response_message for UpdateMessagePoll
2021-09-18 16:10:01 +02:00
Lonami Exo
48c14df957
Remove client.download_file
2021-09-18 16:05:07 +02:00
Lonami Exo
e524a74b84
Remove client.disconnected property
2021-09-18 15:41:04 +02:00
Lonami Exo
bf61dd32af
Change the way iter_participants filters are specified
2021-09-18 14:16:19 +02:00
Lonami Exo
af81899bdc
Don't automatically start the client via async-with
2021-09-18 13:30:39 +02:00
Lonami Exo
9af8ec8cce
Officially remove bot_file_id support
2021-09-18 13:06:52 +02:00
Lonami Exo
3d36bb7b93
Change the way connection modes are specified
2021-09-18 12:49:44 +02:00
Lonami Exo
dc29a95cef
Change list of buttons to show up as rows and not cols
2021-09-17 21:03:47 +02:00
Lonami Exo
3bc46e8072
Remove broken CdnDecrypter
2021-09-17 20:55:27 +02:00
Lonami Exo
b3c23e343a
Return deleted count from delete_messages
2021-09-17 20:36:40 +02:00
Lonami Exo
40ff7c6bdf
Document default behaviour of limit
2021-09-17 20:19:23 +02:00
Lonami Exo
6e9ad9e31c
Return correct total participant count when a filter is desired
2021-09-17 20:16:01 +02:00
Lonami Exo
1036c3cb52
Remove the aggressive hack from get_participants
2021-09-17 20:13:05 +02:00
Lonami Exo
be3ed894c6
Make changes to the default limit in client.get_list methods
2021-09-17 20:04:57 +02:00
Lonami Exo
e9f9994f4a
Unify client.iter_* methods
2021-09-17 19:35:10 +02:00
Lonami Exo
943ad892f7
Address remaining uses of the Request suffix with raw API
2021-09-13 21:00:31 +02:00
Lonami Exo
334a847de7
Make custom.Message functional
2021-09-13 20:39:41 +02:00
Lonami Exo
499fc9f603
Move alltlobjects.py and fix imports
2021-09-12 16:58:06 +02:00
Lonami Exo
e9b97b5e4a
Fix client method calls and reading TLObjects
2021-09-12 15:47:05 +02:00
Lonami Exo
c84043cf71
Fix calls to private client methods
2021-09-12 14:09:53 +02:00
Lonami Exo
f222dc167e
Fix imports
2021-09-12 13:27:13 +02:00
Lonami Exo
d48649602b
Replace most raw API usage with new location
2021-09-12 12:16:02 +02:00
Lonami Exo
66ef553adc
Remove duplicated docstrings
2021-09-11 15:28:24 +02:00
Lonami Exo
f86339ab17
Remove Conversation API
2021-09-11 14:16:25 +02:00
Lonami Exo
2a933ac3bd
Remove sync hack
2021-09-11 14:06:36 +02:00
Lonami Exo
34e7b7cc9f
Fix some import errors
2021-09-11 13:43:20 +02:00
Lonami Exo
d6326abacb
Rename client module as _client
2021-09-11 13:35:35 +02:00