Tulir Asokan
f805914c80
Handle SQLAlchemy import errors
2018-03-02 20:40:03 +02:00
Tulir Asokan
c1a8896faa
Fix SQLAlchemy implementation
2018-03-02 20:14:11 +02:00
Tulir Asokan
dc2229fdba
Move salt and ID to base session and remove unused imports
2018-03-02 18:39:04 +02:00
Lonami Exo
a7f98fd3cc
Ignore bad file descriptor while closing
2018-03-02 17:26:42 +01:00
Tulir Asokan
e1d7cc541f
Add setters for non-persistent values that apps might change
2018-03-02 18:23:18 +02:00
Tulir Asokan
03d4ab3765
Fix create_engine check
2018-03-02 13:25:40 +02:00
Tulir Asokan
07c2fc50ec
Add SQLAlchemy-based session
2018-03-02 13:22:30 +02:00
Tulir Asokan
118d9b10e8
Add more abstraction
2018-03-02 13:20:11 +02:00
Tulir Asokan
d9a73744a4
Remove old sqlite session variables and clone code
2018-03-02 12:36:39 +02:00
Tulir Asokan
df3faaeb7f
Fix abstract Session method ordering
2018-03-02 11:11:59 +02:00
Lonami Exo
4c7224e56a
Fix n might be None when stopping workers
2018-03-02 10:10:59 +01:00
Tulir Asokan
4c64d53e71
Move non-persistent stuff to base Session class
2018-03-02 11:10:11 +02:00
Tulir Asokan
c5e6f7e265
Split Session into three parts and make a module for sessions
2018-03-01 23:40:28 +02:00
Lonami Exo
f09ab6c6b6
Fix-up 771c573
to properly stop background update workers
...
The "special" StopIteration object didn't actually make any sense.
Instead looping forever, workers now loop while there are workers,
so that they stop looping once the count is cleared.
Dummy values are still inserted so that they don't need to timeout
on the queue before exiting (these values are None) so in essence,
this keeps the best of both of worlds.
2018-03-01 20:13:21 +01:00
Lonami Exo
3a3f221bd1
Look in all dialogs when getting entities by peer ID
2018-03-01 20:03:51 +01:00
Lonami Exo
771c573db1
Better attempt at joining update worker threads
2018-03-01 13:31:39 +01:00
Lonami Exo
3d68c879dd
Avoid using undefined variable in the README.rst
2018-03-01 13:25:38 +01:00
Joscha Götzer
835ff51e25
Multiple small changes/fixed typos to docs/error messages ( #623 )
2018-03-01 13:21:28 +01:00
Joscha Götzer
3184641549
Allow access to events' pattern match ( #654 )
2018-03-01 00:15:30 +01:00
Lonami Exo
3655df50dc
Postpone events resolution
2018-02-28 21:09:05 +01:00
Lonami Exo
3afd7dca84
Invoke multiple getParticipant's at the same time ( #580 )
2018-02-28 17:10:44 +01:00
Lonami Exo
057c6a0b12
Support getting more than 10k members on .get_participants()
...
Discussed on #580 , original PR made on #639 .
2018-02-28 13:24:44 +01:00
Lonami Exo
229cd78df0
Fix markdown's URL regex not acceping newlines
2018-02-27 14:10:02 +01:00
Lonami Exo
d5832e4f3b
Fix time offset failing if system time was ahead of time
...
While the offset was working, the last message ID was never reset,
so it would always pick an higher message ID (safety check), which
completely defeated the purpose of negative time offsets. Should
close #496 .
2018-02-27 11:43:42 +01:00
Joscha Götzer
0b662f3b04
Support stopping propagation of events ( #622 )
2018-02-27 11:30:42 +01:00
Lucas Yuji Suguinoshita Aciole
29f10f2771
Fix named arguments after kwargs ( #646 )
...
In Python3, you're unable to send named parameters after **kwargs
* Use single quotes
2018-02-27 10:05:27 +01:00
Lonami Exo
8d1b6629cb
Sending open()'ed files would make their name the entire path
2018-02-26 14:14:44 +01:00
Lonami Exo
5a54e2279f
Avoid relying on .__iter__ to tell iterators apart
...
.send_file() would fail with stream objects (those from open())
since they are iterable, and asserting that they weren't bytes
or str was not enough.
2018-02-26 14:12:21 +01:00
Lonami Exo
6f16aeb553
Add logging calls on the TcpClient
2018-02-26 13:41:07 +01:00
Lonami Exo
9604161c91
Fix incoming private messages not working with whitelists
...
For some reason this was only happening with bots and not
actual private messages. The fix doesn't seem to affect
previous behaviour with actual users in private messages.
2018-02-26 12:15:53 +01:00
Lonami Exo
3b0ab7794b
Get name attribute from streams instead always 'unnamed'
2018-02-25 20:35:55 +01:00
Lonami Exo
623c1bd7d1
Add missing parameters to TelegramClient.send_voice_note
2018-02-25 20:34:40 +01:00
Lonami Exo
098602ca13
Let events.Raw.resolve() be a no-op
2018-02-25 10:36:53 +01:00
Lonami Exo
cfc5ecfded
Fix tiny bug regarding .get_me(input_peer=True) crashing events
2018-02-25 10:35:39 +01:00
Lonami Exo
9ef75e5070
Allow specifying no event type to default to events.Raw
2018-02-24 18:25:22 +01:00
Lonami Exo
e5aecca79c
Update to v0.17.4
2018-02-24 18:08:14 +01:00
Lonami Exo
3301bf3ff6
Fix voice notes default filename being "None - None.oga"
2018-02-24 17:42:32 +01:00
Dmitry D. Chernov
7f97997e8d
Add PySocks to the package optional requirements
2018-02-24 18:41:53 +10:00
Dmitry D. Chernov
760d84514f
setup: Fix regex failure to match version in case of CRLF line feeds
...
This could happen e.g. in case of using pip3 to install Telethon directly from the git repo.
2018-02-24 18:25:08 +10:00
Joscha Götzer
b7a61510bf
Add !i for information to the interactive telegram client ( #614 )
2018-02-23 21:34:15 +01:00
Kyle2142
f9cec54c39
Add .get_participants() convenience method ( #639 )
...
Closes #363 and #380 .
2018-02-23 21:20:32 +01:00
Lonami Exo
a353679796
Fix downloading from another DC using wrong auth the first time
2018-02-23 13:13:39 +01:00
Lonami Exo
005a8f0a7f
Fix .send_file() not respecting MessageMedia captions
2018-02-23 12:10:07 +01:00
Lonami Exo
cda5e59e86
Make .send_message() accept another Message as input
2018-02-23 12:07:57 +01:00
Lonami Exo
448a04a7c5
Stop using InputPeerSelf() on events and special case edit()
...
Used to fail on the chat with your own (where messages are
"incoming" instead outgoing). Now the ID of the chat and
sender are compared to achieve the same effect. Fixes #632 .
2018-02-22 21:01:18 +01:00
Lonami Exo
f13a7e4afd
Allow getting the input peer for yourself and cache it
...
Warm-up for #632 , which needs this information accessible.
2018-02-22 20:37:56 +01:00
Lonami Exo
359cdcd772
Handle more parsing username cases ( closes #630 )
2018-02-22 10:27:12 +01:00
Lonami Exo
7f35ed59c6
Fix infinite recursion on .get_entity by exact name
2018-02-20 17:30:01 +01: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
Jannik
ea0da8fc0e
Add pattern argument on the NewMessage event ( #620 )
2018-02-20 15:55:02 +01:00