Dan
538f1e3972
Deep rewrite: preparing for v1.0
...
- Pyrogram core is now fully asynchronous
- Ditched Python 3.5, welcome 3.6 as minimum version.
- Moved all types to pyrogram.types
- Turned the Filters class into a module (filters)
- Moved all filters to pyrogram.filters
- Moved all handlers to pyrogram.handlers
- Moved all emoji to pyrogram.emoji
- Renamed pyrogram.api to pyrogram.raw
- Clock is now synced with server's time
- Telegram schema updated to Layer 117
- Greatly improved the TL compiler (proper type-constructor hierarchy)
- Added "do not edit" warning in generated files
- Crypto parts are executed in a thread pool to avoid blocking the event loop
- idle() is now a separate function (it doesn't deal with Client instances)
- Async storage, async filters and async progress callback (optional, can be sync too)
- Added getpass back, for hidden password inputs
2020-08-22 08:05:05 +02:00
CyanBook
c8c6faa96e
Change logging hierarchy for loading plugins ( #451 )
...
Loading plugins shouldn't be considered a warning
2020-08-21 07:28:27 +02:00
Dan
7df85e2039
Show more relevant information when DEBUG logs are enabled
...
Show exactly what is being sent and received
2020-06-02 13:05:26 +02:00
Dan
128ab4b0b9
Move the automatic sleep mechanism down to Session
2020-05-07 13:38:22 +02:00
Dan
1996fb1481
Update Copyright
2020-03-21 15:43:32 +01:00
Dan
2bf6357bad
Show more meaningful errors for wrapped queries
2020-02-01 15:19:05 +01:00
Dan
42c9bafa0c
Update copyright notice
2020-02-01 14:04:33 +01:00
Dan
1a7d0b1b7e
Update Storage API usages in client.py, auth.py and session.py
2019-09-14 19:57:20 +02:00
Dan
a015f998fa
Revert "Stop instantiating logger objects and directly use the logging module"
...
This reverts commit 792068d7
2019-09-08 19:24:06 +02:00
Dan
792068d7c8
Stop instantiating logger objects and directly use the logging module
2019-09-08 12:59:28 +02:00
Dan
4b914662ef
Log the reason why a query ought to be re-tried
2019-08-13 13:20:21 +02:00
Dan
aa135ea457
Reformat project
2019-08-01 19:11:43 +02:00
Dan
72b7a53ff5
Log to warning only in the last attempt
2019-07-25 11:15:56 +02:00
Dan
682591ea8f
Update Auth and Session to accommodate Storage Engines
2019-06-19 16:02:29 +02:00
Dan
142d5ab335
Merge branch 'develop' into session_storage
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/base_client.py
# pyrogram/client/ext/syncer.py
# pyrogram/client/methods/contacts/get_contacts.py
2019-06-15 23:52:34 +02:00
Dan
d5517f4d5f
Rename Object to TLObject
2019-06-03 14:19:50 +02:00
Dan
48a5da8958
Let FutureSalt(s) attributes be plain integer instead of datetime values
2019-05-31 16:36:20 +02:00
bakatrouble
952f0627f1
Merge branch 'develop' into session_storage
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/base_client.py
# pyrogram/client/ext/syncer.py
# pyrogram/client/style/html.py
# pyrogram/client/style/markdown.py
2019-04-14 21:49:45 +03:00
Dan
b5c6db6db0
Refactor project and move errors namespace out from pyrogram.api
2019-03-25 11:23:45 +01:00
Dan
34b51b6481
Force keyword arguments for all TL types
2019-03-16 16:53:52 +01:00
Dan
e42599051c
Use a lower timeout when starting a session to speed up re-connections
...
Sometimes the server drops right after a successful connection and
pyrogram keeps waiting up 15 seconds (current WAIT_TIMEOUT) for the
first query to time out and start again a new connection.
2019-03-03 16:50:25 +01:00
bakatrouble
5dc33c6337
add in-memory session storage, refactor session storages, remove mixin
2019-02-22 03:37:19 +03:00
Dan
4d7b1bafac
Update copyright year
2019-01-01 12:36:16 +01:00
Dan
e7a85520f2
Merge remote-tracking branch 'origin/develop' into develop
...
# Conflicts:
# pyrogram/client/client.py
2018-09-17 15:59:49 +02:00
Dan
b619818c40
Clear recv_queue on session stop. Fixes #103
2018-09-03 16:35:22 +02:00
Dan
b845544e63
Info log device and system parameters
2018-08-28 12:39:14 +02:00
Dan
f50638772c
Minor fix: update info log
2018-08-28 12:38:02 +02:00
Dan
4b3b647245
Merge branch 'ipv6' into develop
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/session/session.py
2018-08-28 12:19:37 +02:00
Dan
6e4c608875
Handle AUTH_KEY_DUPLICATED error
2018-06-28 00:16:12 +02:00
Dan
ecaba45523
Keep only lang_code
2018-06-27 00:42:32 +02:00
Dan
c7d60ef8a6
Fix disconnect handler callback being called on every session
2018-06-24 19:29:12 +02:00
Dan
55ef4abb27
Allow user-defined session properties. Related to #86
...
This commit adds five 5 extra parameters to the Client class:
app_version, device_model, system_version, system_lang_code, lang_code
2018-06-24 18:47:49 +02:00
Dan
f4c0793a0b
Make session leaner by removing some redundant parameters
...
Related to #86
2018-06-24 18:27:41 +02:00
Dan
69d1432251
Allow user-defined values for retries and timeout
2018-06-24 17:47:29 +02:00
Dan
b804709c6c
Allow session to use ipv6
2018-06-13 13:37:35 +02:00
Dan
65c209000c
Connection refactoring
2018-05-24 21:19:57 +02:00
Dan
9001ccd11f
Add DisconnectHandler
2018-05-23 14:27:17 +02:00
Dan
f0c801be8c
Rename AES class methods and add ctr256_encrypt
2018-05-18 14:15:35 +02:00
Dan
e270c7d5f8
Remove unpack_dispatch_and_ack method
2018-05-06 14:55:41 +02:00
Dan
de332471df
Join net worker threads before stopping. Fixes #62
2018-04-29 20:30:32 +02:00
Dan
b59212dbf2
Fix send() not returning the value in case of a retry
2018-04-18 17:19:42 +02:00
Dan
639828f550
Retry on internal server errors, up to MAX_RETRIES times
...
Also add support for custom retry count
2018-04-18 15:17:46 +02:00
Dan
6dcdeda244
Make proxy loading simpler
2018-04-13 12:30:13 +02:00
Dan
9dc767b88e
Wait a little bit before retrying
2018-04-12 10:41:52 +02:00
Dan
552474a0e2
Raise any other unknown exception
2018-04-12 08:30:52 +02:00
Dan
862567a1ed
Tune session settings
2018-04-12 08:29:39 +02:00
Dan
cce937e54b
Set correct type hint
2018-04-05 11:43:56 +02:00
Dan
6fd8b582b2
More useful logging
2018-03-16 11:30:05 +01:00
Dan
4dbf1ef5ac
Improve re-connection speed
2018-03-16 11:18:16 +01:00
Dan
756311710c
Don't GetTermsOfService() anymore
2018-03-15 12:03:02 +01:00