Commit Graph

108 Commits

Author SHA1 Message Date
Andrey Egorov
43a0226b33 Merge branch 'asyncio' into asyncio-upstream
* asyncio:
  Not need to save (salt is out of DB)
  Very rare exception in the case of reconnect
  updates_handler is out from MtProtoSender to gc works properly; unauth_handler log format fix
  Memory leaks fix
  Pretty format of TLObject's
  More accurate clear pendings
  Another attempt to prevent duplicates
  Handle updates and other refactoring
  SocketClosed exception
  Refactoring of TcpClient
  Socket OSError logging
  More aggressive catching network errors
  No route to host catched + other errno to reconnect

# Conflicts (resolved):
#	telethon/extensions/tcp_client.py
#	telethon/network/mtproto_sender.py
#	telethon/telegram_bare_client.py
#	telethon/tl/session.py
2018-06-14 15:21:50 +03:00
Lonami Exo
52042d4a1b Merge branch 'master' into asyncio 2018-05-02 20:26:05 +02:00
Lonami Exo
e2a0de1913 Don't retry forever on TcpClient.connect() 2018-04-25 10:06:11 +02:00
Lonami Exo
abcd09e7d0 Merge branch 'master' into asyncio 2018-04-04 13:47:43 +02:00
Lonami Exo
eabaa3854a Replace offset with match.start() to allow custom regex 2018-04-03 13:47:40 +02:00
Lonami Exo
8b0580901a Merge branch 'master' into asyncio 2018-03-24 13:08:51 +01:00
Lonami Exo
33e908de42 Fix markdown regex not supporting [] inside URLs 2018-03-22 19:02:08 +01:00
Lonami Exo
987cf41ec6 Higher timeout and log them as warning if any data was received
This might be the cause for  "number of retries reached 0" so
more specific logging calls might be useful. If while reading
a response it times out but  some data had already been read,
said data will be lost.

The sequence of events that triggered reaching 0 retries was:
- Sending requests with IDs XYZ
- socket.timeout while reading
- Items timed out. Retrying
- Processing RPC result
- Received response for XYZ
- Lost request with ID XYZ
2018-03-18 20:08:00 +01:00
Andrey Egorov
236fccea7f Very rare exception in the case of reconnect 2018-03-18 20:41:00 +03:00
Lonami Exo
e505fc1711 Rename telethon_aio back to telethon 2018-03-18 10:26:53 +01:00
Lonami Exo
cde314fc21 Rename package to telethon_aio and prepare for PyPi 2018-03-04 11:22:52 +01:00
Tulir Asokan
4432a2d14e Merge branch 'master' into asyncio 2018-03-03 13:02:13 +02:00
Lonami Exo
a7f98fd3cc Ignore bad file descriptor while closing 2018-03-02 17:26:42 +01:00
Lonami Exo
229cd78df0 Fix markdown's URL regex not acceping newlines 2018-02-27 14:10:02 +01:00
Lonami Exo
6f16aeb553 Add logging calls on the TcpClient 2018-02-26 13:41:07 +01:00
Tulir Asokan
c2fba26ad9 Merge branch 'master' into asyncio 2018-02-25 01:54:41 +02:00
Dmitry Bukhta
0731a1d698 Raise ProxyConnectionError instead looping forever (#621)
We shouldn't try reconnecting when using a proxy if what's
unavailable is the proxy server (and not Telegram servers).
2018-02-20 17:05:02 +01:00
Lonami Exo
83d9d1d78e Fix markdown parser not inverting delimiters dict 2018-02-16 20:30:19 +01:00
Lonami Exo
6e854325a8 Merge branch 'master' into asyncio 2018-02-16 18:42:09 +01:00
Lonami Exo
75d99fbb53 Fix HTML entity parsing failing when needing surrogates 2018-02-15 11:52:46 +01:00
Lonami Exo
50515aa528 Merge branch 'master' into asyncio 2018-02-09 19:22:26 +01:00
Lonami Exo
2ffe2b71dc Except OSError with errno.WSAEACCES when connecting
"OSError: [WinError 10013] An attempt was made to access a
socket in a way forbidden by its access permissions."
2018-02-03 11:44:05 +01:00
frizzlywitch
3b8365f871 Remove square braces from IPv6 addresses (#561) 2018-01-26 14:38:13 +01:00
Tulir Asokan
5f2f04c6c2 Add HTML parse mode (#554) 2018-01-22 10:06:11 +01:00
Andrey Egorov
6cfb829e58 Memory leaks fix 2018-01-21 18:57:53 +03:00
Lonami Exo
33e50aaee1 Reuse .on_response/.__str__/.stringify, override iff necessary 2018-01-19 12:12:52 +01:00
Lonami Exo
46b088d44c Also handle ECONNREFUSED on .connect() (report on #392) 2018-01-08 12:26:32 +01:00
Lonami Exo
59a1a6aef2 Stop working with bytes on the markdown parser 2018-01-07 16:19:41 +01:00
Lonami Exo
3eafe18d0b Implement MtProto 2.0 (closes #484, thanks @delivrance!)
Huge shoutout to @delivrance's pyrogram, specially this commit:
pyrogram/pyrogram/commit/42f9a2d6994baaf9ecad590d1ff4d175a8c56454
2018-01-06 01:55:11 +01:00
Lonami Exo
ec4ca5dbfc More consistent with asyncio branch (style/small fixes)
Like passing an extra (invalid) dt parameter when serializing
a datetime, and handling more errors in the TcpClient class.
2018-01-05 18:31:48 +01:00
Lonami Exo
a1d497a2c0 Merge branch 'master' into asyncio 2018-01-05 17:59:36 +01:00
Dmitry D. Chernov
6ec6967ff9 Make exception types correspond to Python docs 2017-12-28 09:48:02 +10:00
Dmitry D. Chernov
4a2a64ce2f TcpClient: Catch ConnectionError instead of its particular cases
That can be more reliable, especially in the case of using PySocks.
2017-12-23 05:45:23 +10:00
Lonami Exo
992017ddf8 Except ConnectionAbortedError on TcpClient 2017-12-22 11:27:57 +01:00
Lonami Exo
605c103f29 Add unparse markdown method 2017-11-26 17:16:59 +01:00
Lonami Exo
57a70d0d47 Document the extensions/ module 2017-11-26 17:14:28 +01:00
Lonami Exo
c67f78eab7 Add unparse markdown method 2017-11-25 16:17:00 +01:00
Lonami Exo
de803a0ace Merge branch 'master' into asyncio 2017-11-24 19:26:00 +01:00
Dmitry D. Chernov
f99d14558f binary_reader: Parse TL 'date' to UTC datetime instead of local 2017-11-23 02:06:43 +10:00
Andrey Egorov
004c92edbe SocketClosed exception 2017-11-19 13:04:40 +03:00
Andrey Egorov
32bca4f1b8 Refactoring of TcpClient 2017-11-19 01:55:40 +03:00
Lonami Exo
9767774147 Fix import in markdown parser not being relative 2017-11-17 15:57:48 +01:00
Lonami Exo
346c5bb303 Add method to md parser to extract text surrounded by entities 2017-11-16 19:13:13 +01:00
Lonami Exo
e5deaf5db8 Fix c4e07cf, md parsing adding unfinished entity at wrong offset 2017-11-16 19:07:53 +01:00
Andrey Egorov
653dd21259 Socket OSError logging 2017-11-16 17:31:39 +03:00
Lonami Exo
4ddbc78699 Ensure IPv6 addresses are surrounded by '[]' (#425) 2017-11-16 13:47:15 +01:00
Lonami Exo
7f5126c341 Merge branch 'master' into asyncio 2017-11-16 13:20:20 +01:00
Andrey Egorov
2efcfbd416 More aggressive catching network errors 2017-11-16 02:56:57 +03:00
Andrey Egorov
3111153822 No route to host catched + other errno to reconnect 2017-11-15 14:19:01 +03:00
Andrey Egorov
25af22f1e7 Bugfix in reconnection 2017-11-14 14:07:40 +03:00