Rapptz
ff95258710
Use an asyncio.Event instead of an asyncio.Lock for global rate limits.
...
There were some dead-locking issues that I suspect were due to the
way the global rate limit was handled. This changes it into a simple
Event that allows multiple coroutines to pass through instead of one
by one.
2017-04-01 23:31:32 -04:00
Rapptz
4ffded622a
Removing acking on channels.
2017-03-18 11:52:18 -04:00
Rapptz
76e76f2905
Add underscore to HTTPClient.session to imply privateness.
2017-03-04 23:27:57 -05:00
Rapptz
aa41101237
Remove Client.accept_invite
2017-03-04 20:42:21 -05:00
Rapptz
8daf411c72
Add Messageable.ack
2017-02-28 00:47:37 -05:00
Rapptz
9a1215e13b
Add support for message acking.
2017-02-27 23:29:52 -05:00
Rapptz
751933f068
Remove nonce when sending messages.
2017-02-27 18:02:07 -05:00
Rapptz
ca81f0c3fc
Better group DM support.
2017-02-09 20:50:02 -05:00
Rapptz
8c581bc5bd
Removed unused variables in routes.
2017-02-09 02:44:45 -05:00
Rapptz
0311b407c3
Remove unused constants in HTTPClient
2017-02-08 20:44:35 -05:00
Rapptz
f5b455c119
Only defer the lock if we're pre-emptively rate limiting.
...
If a 429 was already hit somehow then we're no longer pre-emptively
rate limiting and we're going to end up having a race condition in
the lock/unlock cycle.
2017-02-08 03:47:35 -05:00
Rapptz
b27fab09eb
Allow removing an embed in Message.edit
2017-01-29 20:32:24 -05:00
Rapptz
02f30f21c4
Implement User.profile coroutine to get a user's profile.
2017-01-24 22:00:27 -05:00
Rapptz
1ffb2ca7ac
Allow unique invites for Client.create_invite.
2017-01-21 16:23:14 -05:00
Rapptz
ff9f5749e1
Update copyright year to 2017.
2017-01-20 23:19:19 -05:00
Rapptz
4c981ee631
Add support for relationships.
2017-01-20 19:28:43 -05:00
Rapptz
4b6b5bd35e
Remove email/password based login.
2017-01-19 18:32:17 -05:00
Rapptz
f4cadaf0cc
Fix bug with GuildChannel.edit and Role.edit with positions.
...
I did not update the HTTP code for these two methods.
2017-01-16 18:19:18 -05:00
Rapptz
92dd519b1a
Remove _get_guild_id from Messageable ABC.
2017-01-14 19:22:26 -05:00
Rapptz
ced617e786
Use the improved role creation endpoint for making roles.
2017-01-13 01:30:09 -05:00
Rapptz
c8247371f1
Fix 404s in pins_from and create_role routes.
2017-01-12 18:05:46 -05:00
Rapptz
94448d3972
Fix NameError inside HTTPClient.edit_member.
2017-01-09 21:30:59 -05:00
Rapptz
b86a568f86
Fix HTTP.application_info 404ing.
2017-01-09 20:58:58 -05:00
Rapptz
6d33ea748a
Implement rate limit headers.
2017-01-09 18:51:24 -05:00
Rapptz
20041ea756
Implement AutoShardedClient for transparent sharding.
...
This allows people to run their >2,500 guild bot in a single process
without the headaches of IPC/RPC or much difficulty.
2017-01-07 23:19:39 -05:00
Rapptz
98b981848d
Move message creation to a factory method inside ConnectionState.
2017-01-03 09:52:10 -05:00
Rapptz
79a49f9145
Absolute import some circular dependencies to appease Python 3.4.
2017-01-03 09:52:02 -05:00
Rapptz
a1c81419b7
Rename MessageChannel.send_message to send and unify interface.
...
This removes MessageChannel.upload.
2017-01-03 09:52:01 -05:00
Rapptz
5cb3ad14e8
Make emojis and members stateful.
2017-01-03 09:51:55 -05:00
Rapptz
d1d54a468a
Rename Server to Guild everywhere.
2017-01-03 09:51:54 -05:00
Rapptz
bed2e90e82
Properly propagate loop. Fixes #420 .
2016-12-21 00:06:19 -05:00
Rapptz
e8905fd41b
Add missing bucket for endpoints.
2016-11-17 21:07:54 -05:00
Rapptz
18178c26aa
Add support for clearing a message's reactions.
2016-11-17 20:37:33 -05:00
Rapptz
4c1fd2c9b1
Add atomic add and remove role endpoints to HTTPClient.
...
These are currently unused since their use is pretty limited.
2016-11-17 20:27:43 -05:00
Rapptz
a312f21bc3
Support message editing with rich embeds.
2016-11-13 22:12:16 -05:00
Rapptz
af46718460
Add support for rich embeds.
2016-11-13 05:07:58 -05:00
Rapptz
ae796e0d01
Change buckets for reactions.
2016-11-06 01:03:57 -04:00
khazhyk
c4acc0e1a1
Add support for reactions.
...
Reactions can be be standard emojis, or custom server emojis.
Adds
- add/remove_reaction
- get_reaction_users
- Messages have new field reactions
- new events - message_reaction_add, message_reaction_remove
- new permission - add_reactions
2016-10-27 21:36:32 -07:00
khazhyk
158ac6bb50
Add around parameter to LogsFromIterator.
2016-10-16 18:10:49 -07:00
Rapptz
9322bc78be
Add the ability to add, delete, and edit custom emoji.
2016-09-26 23:02:28 -04:00
Rapptz
96ca7cafee
Add Client.get_user_info to retrieve a User from ID.
2016-09-25 04:40:31 -04:00
Rapptz
667d2b384b
Add functions to query and actually prune members from a server.
2016-07-29 14:40:30 -04:00
Rapptz
ddd3fd0a3d
Begin working on gateway v6 changes.
...
The first batch of changes are related to channel types and group
direct messages. Support these first so READY begins parsing.
2016-07-13 00:10:16 -04:00
Rapptz
c02d9403e6
Fix bug with Client.server_voice_state not deafening.
2016-06-22 19:39:20 -04:00
Rapptz
8b3617111a
Support for v5 Gateway.
2016-06-22 05:00:08 -04:00
Rapptz
b3edb31df5
Add support for message pinning.
...
This includes `Client.pin_message`, `Client.unpin_message` and
`Client.pins_from`. This also adds the `Message.pinned` attribute
to the `Message` object.
2016-06-18 02:14:44 -04:00
Rapptz
4d375fc856
Fix HTTPClient.recreate to actually work.
...
Forgot a keyword argument.
2016-06-18 01:43:57 -04:00
Rapptz
2ebc0ab218
Don't assume that any shared fields are optional in Client.edit_channel.
...
Thanks Jake and night.
2016-06-15 20:56:43 -04:00
Rapptz
fa0c98da4c
Make logging for HTTP requests more useful.
2016-06-15 20:16:32 -04:00
Rapptz
7c760d3271
Add Client.get_message
2016-06-15 04:46:19 -04:00