59 Commits

Author SHA1 Message Date
Alex Nørgaard
d1dc41ec2f
Fix Client.fetch_channel not returning Thread 2021-07-03 21:35:31 -04:00
Rapptz
40127eb7b5 Fix import error with threads archived iterator 2021-06-08 07:26:22 -04:00
Rapptz
cb9a506686 Fix typo with archived_threads iterator leading to AttributeError 2021-06-08 07:25:40 -04:00
Rapptz
c1ce3b949f Implement remaining HTTP endpoints on threads
I'm not sure if I missed any -- but this is the entire documented set
so far.
2021-06-08 07:25:30 -04:00
Nadir Chowdhury
3e92196a2b
Add typings for audit logs, integrations, and webhooks 2021-04-10 02:53:24 -04:00
Nadir Chowdhury
f8bea3bb05
Fix inaccuracies with AsyncIterator typings 2021-04-07 20:28:12 -04:00
Nadir Chowdhury
9f0c701a7a
use typing.AsyncIterator for iterators 2021-04-06 23:26:31 -04:00
James
fe54b3cb92
Flatten AsyncIterator.flatten 2021-04-04 17:46:15 -04:00
Rapptz
9d39b135f4 Modernize code to use f-strings
This also removes the encoding on the top, since Python 3 does it by
default. It also changes some methods to use `yield from`.
2021-04-04 07:03:53 -04:00
Nadir Chowdhury
63ec23bac2
Code optimisations and refactoring via Sourcery 2021-02-24 21:26:51 -05:00
Nihaal Sangha
69bdc3a184
Change copyright year to present 2021-01-15 05:28:11 -05:00
Josh
f8e428bd5b
Add support for chunking AsyncIterator objects 2020-12-03 18:32:53 -05:00
Nadir Chowdhury
6b803acde4
[chore] Remove redundant imports
This also removes the historical patch for NullHandler implemented in bbf1c54, as it has been available since Python 3.1.
2020-11-28 03:16:49 -05:00
Tyler North
ae1ec8072f
Fix AttributeError when fetching reactions without cache 2020-08-01 22:00:37 -04:00
Skezza
2552a268cb Add double backticks for some parameter mentions in the documentation. 2020-07-22 23:15:16 -04:00
hamza1311
0a24e3716e Allow HistoryIterator to take limit of 1 even when around is passed 2020-04-19 18:19:11 -04:00
Rapptz
6071607176 Bump copyright year to 2020
Closes #2510
2020-01-19 20:03:00 -05:00
Rapptz
bfaf8ecfdb Allow Guild.fetch_members to take in limit=None
Fixes #2473
2020-01-12 02:44:16 -05:00
Rapptz
a6f61dcbde Fix all deprecation warnings for 3.8 2019-11-20 02:30:19 -05:00
NCPlayz
851f83c821 Implement Guild.fetch_members
Also implements `MemberIterator`.
2019-06-29 19:14:19 -04:00
NCPlayz
3c9bcc2851 Improve documentation 2019-06-07 19:27:46 -04:00
Rapptz
14d66e7b9c Internal consistency with message related HTTPClient methods 2019-04-14 21:05:20 -04:00
khazhyk
7845bfb79b terminate iterators immediately once out of data
if len(data) < 100, either limit was less than 100, or we ran
out of results, in both cases, we should terminate the lookup.

This fixes, e.g., hangs in audit_logs(limit=999999), and will
reduce the number of fetch calls for any case where limit is
greater than the number of results. (Prior, would just kinda
loop calling audit-logs)
2019-04-07 23:03:01 -07:00
khazhyk
52c45da0bc simplify AuditLogIterator ordering
rename reverse to oldest_first and remove cases where messages would
be ordered differently from the order we fetch audit log entries,
similar to HistoryIterator
2019-04-07 22:46:41 -07:00
khazhyk
366dc4855b simplify HistoryIterator message ordering
rename reverse -> oldest_first, which is more obvious what it does.
Then, honor it entirely - if you specify no `after` endpoint, we default
to the beginning of message history, similar to how `before` defaults to
the end of message history.

This is a breaking change, and will change the behavior of any iterator
that previously would have been returning messages in a weird order for
limits over 100

`for msg in history(reversed=True, limit=300)` would return the newest
300 messages, in a messed up order (100..0, 200..100, 300..200).
`for msg in history(oldest_first=True, limit=300)` will now return the
oldest 300 messages in order. And so on.

`for msg in history(after=msg)` is unchanged, this previously would
return the oldest 100 messages after `msg`, oldest->newest order, and
still will.
2019-04-07 22:46:40 -07:00
NCPlayz
f507f508a2 Expose Metadata
Added access to:
* `/users/@me/guilds`
* `/guilds/{guild_id}`
* `/guilds/{guild_id}/members/{member_id}`

BREAKING CHANGE:
* `get_user_info` -> `fetch_user_info` to match naming scheme.

Remove useless note

Remove `reverse` and corresponding documentation

Update documentation to reflect #1988

Rename `get_` HTTP functions to `fetch_`

Breaking Changes:
* `get_message` -> `fetch_message`
* `get_invite` -> `fetch_invite`
* `get_user_profile` -> `fetch_user_profile`
* `get_webhook_info` -> `fetch_webhook`
* `get_ban` -> `fetch_ban`

Fix InviteConverter, update migrating.rst

Rename get_message to fetch_message
2019-03-19 09:00:18 -04:00
NCPlayz
fb02191b80 Organise documentation 2019-03-19 08:24:42 -04:00
Harmon
4b22dd216c Fix ReactionIterator for limit > 100 2019-01-30 14:14:03 -06:00
Dante Dam
9656a21ebe Bumped copyright years to 2019. 2019-01-28 22:22:50 -05:00
Hornwitser
51d626eabe [lint] Remove redundant paranthesis
Remove redundant parenthisis around await expressions.  Left over from
f25091ef.
2018-11-24 22:17:58 -05:00
Hornwitser
c8b49d37be [lint] Fix incorrect and inconsistent whitespace
Adjust whitespace to be consistent with the rest of the library.
2018-08-22 21:43:53 -04:00
Hornwitser
d58fc0ccee [lint] Remove unused imports
Left over from various refactoring and rewrites.
2018-08-22 21:43:50 -04:00
Rapptz
983be10111 Fix __aiter__ compatibility with 3.7. 2018-06-29 21:51:25 -04:00
Rapptz
f25091efe1 Drop support for Python 3.4 and make minimum version 3.5.2. 2018-06-10 18:10:00 -04:00
Rapptz
e0f02f1775 Rename AsyncIterator.get to next to prevent shadowing. 2017-07-04 10:45:38 -04:00
Rapptz
152fc89508 Properly check for audit log entry termination. 2017-05-07 21:04:43 -04:00
Rapptz
eb58ddffd8 Skip None action types when iterating. 2017-05-07 12:09:27 -04:00
Rapptz
c54a6a927d Implement audit logs. 2017-04-30 02:58:27 -04:00
Rapptz
1fc08bc5a2 Remove unused imports. 2017-04-18 04:22:35 -04:00
Rapptz
af0ba17885 Proper termination of HistoryIterator.flatten. 2017-03-30 03:27:44 -04:00
Rapptz
8e654bd52a Add support for limit=None in Messageable.history.
Fixes #480.
2017-02-13 19:55:04 -05:00
Rapptz
47ef657fbd Implement async checks. Fixes #380. 2017-02-12 12:13:23 -05:00
Rapptz
2abdbc70c2 Implement utilities for AsyncIterator.
Closes #473.
2017-02-11 23:34:19 -05:00
Rapptz
ff9f5749e1 Update copyright year to 2017. 2017-01-20 23:19:19 -05:00
Rapptz
ae6fb54b1b Make Reaction.users return an async iterator. 2017-01-11 21:20:28 -05:00
Rapptz
06ca518459 Rename NoMoreMessages to NoMoreItems. 2017-01-11 19:53:48 -05:00
Rapptz
8c274139df Allow HistoryIterator to be flattened into a list. 2017-01-11 19:04:52 -05:00
Rapptz
0e0b569d53 Propagate event loop in Messageable.history. 2017-01-11 13:24:28 -05:00
Rapptz
7431a127cf Change Messageable channel getter to be a coroutine. 2017-01-03 09:52:11 -05:00
Rapptz
98b981848d Move message creation to a factory method inside ConnectionState. 2017-01-03 09:52:10 -05:00