From 9cd3189ebf1e8016e12719d2808932a6bc997387 Mon Sep 17 00:00:00 2001
From: ChrisLovering
Date: Mon, 10 Jul 2023 20:18:31 +0000
Subject: Deploying to docs from @
python-discord/bot-core@4c1060a334301265dd8b620c91a815a5ed72bb34 🚀
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
main/.buildinfo | 2 +-
main/changelog.html | 9 ++++++
main/development.html | 4 +++
main/genindex.html | 4 +++
main/index.html | 4 +++
main/output/pydis_core.async_stats.html | 10 +++++--
main/output/pydis_core.exts.html | 4 +++
main/output/pydis_core.html | 36 +++++++++++++-----------
main/output/pydis_core.site_api.html | 30 +++++++++++---------
main/output/pydis_core.utils.caching.html | 12 +++++---
main/output/pydis_core.utils.channel.html | 10 +++++--
main/output/pydis_core.utils.commands.html | 6 +++-
main/output/pydis_core.utils.cooldown.html | 16 +++++++----
main/output/pydis_core.utils.error_handling.html | 6 +++-
main/output/pydis_core.utils.function.html | 10 +++++--
main/output/pydis_core.utils.html | 8 ++++--
main/output/pydis_core.utils.interactions.html | 18 +++++++-----
main/output/pydis_core.utils.logging.html | 10 +++++--
main/output/pydis_core.utils.members.html | 8 ++++--
main/output/pydis_core.utils.paste_service.html | 16 +++++++----
main/output/pydis_core.utils.regex.html | 10 +++++--
main/output/pydis_core.utils.scheduling.html | 22 +++++++++------
main/py-modindex.html | 4 +++
main/search.html | 4 +++
main/searchindex.js | 2 +-
main/versions.html | 10 +++++++
26 files changed, 191 insertions(+), 84 deletions(-)
(limited to 'main')
diff --git a/main/.buildinfo b/main/.buildinfo
index 0154bfaf..2b975121 100644
--- a/main/.buildinfo
+++ b/main/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 4a6388b0229bedefc4c4cec5c8098a1d
+config: 0bb37a14ef14c18eeba32842853f01ef
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/main/changelog.html b/main/changelog.html
index 8578af5b..bdf047ca 100644
--- a/main/changelog.html
+++ b/main/changelog.html
@@ -211,6 +211,10 @@
main
+
+ v9.9.2
+
+
v9.9.1
@@ -400,6 +404,11 @@
Changelog
+
9.9.2 2nd July 2023
[Bug] #185: Update expiry label from 1 month to 30 days in paste service.
diff --git a/main/development.html b/main/development.html
index 06afb528..51ad480d 100644
--- a/main/development.html
+++ b/main/development.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/genindex.html b/main/genindex.html
index 0ca030a5..d0597fdd 100644
--- a/main/genindex.html
+++ b/main/genindex.html
@@ -209,6 +209,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/index.html b/main/index.html
index 7f23b958..20eda36f 100644
--- a/main/index.html
+++ b/main/index.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/output/pydis_core.async_stats.html b/main/output/pydis_core.async_stats.html
index 260e7205..7dfbf0d5 100644
--- a/main/output/pydis_core.async_stats.html
+++ b/main/output/pydis_core.async_stats.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -403,12 +407,12 @@
An async transport method for statsd communication.
-
-class AsyncStatsClient(loop, host='localhost', port=8125, prefix=None)[source]
+class AsyncStatsClient(loop, host='localhost', port=8125, prefix=None)[source]
Bases: StatsClientBase
An async implementation of statsd.client.base.StatsClientBase that supports async stat communication.
-
-__init__(loop, host='localhost', port=8125, prefix=None)[source]
+__init__(loop, host='localhost', port=8125, prefix=None)[source]
Create a new AsyncStatsClient.
- Parameters:
@@ -425,7 +429,7 @@
-
-async create_socket()[source]
+async create_socket()[source]
Use asyncio.loop.create_datagram_endpoint from the loop given on init to create a socket.
- Return type:
diff --git a/main/output/pydis_core.exts.html b/main/output/pydis_core.exts.html
index 5527e684..5e72eff7 100644
--- a/main/output/pydis_core.exts.html
+++ b/main/output/pydis_core.exts.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/output/pydis_core.html b/main/output/pydis_core.html
index 4a9d3df6..a71ec776 100644
--- a/main/output/pydis_core.html
+++ b/main/output/pydis_core.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -403,12 +407,12 @@
Useful utilities and tools for Discord bot development.
-
-class BotBase(*args, guild_id, allowed_roles, http_session, redis_session=None, api_client=None, statsd_url=None, **kwargs)[source]
+class BotBase(*args, guild_id, allowed_roles, http_session, redis_session=None, api_client=None, statsd_url=None, **kwargs)[source]
Bases: Bot
A sub-class that implements many common features that Python Discord bots use.
-
-__init__(*args, guild_id, allowed_roles, http_session, redis_session=None, api_client=None, statsd_url=None, **kwargs)[source]
+__init__(*args, guild_id, allowed_roles, http_session, redis_session=None, api_client=None, statsd_url=None, **kwargs)[source]
Initialise the base bot instance.
- Parameters:
@@ -427,7 +431,7 @@ a dummy statsd client will be created.
-
-async add_cog(cog)[source]
+async add_cog(cog)[source]
Add the given cog to the bot and log the operation.
- Return type:
@@ -438,7 +442,7 @@ a dummy statsd client will be created.
-
-add_command(command)[source]
+add_command(command)[source]
Add command as normal and then add its root aliases to the bot.
- Return type:
@@ -449,7 +453,7 @@ a dummy statsd client will be created.
-
-clear()[source]
+clear()[source]
Not implemented! Re-instantiate the bot instead of attempting to re-use a closed one.
- Return type:
@@ -460,7 +464,7 @@ a dummy statsd client will be created.
-
-async close()[source]
+async close()[source]
Close the Discord connection, and the aiohttp session, connector, statsd client, and resolver.
- Return type:
@@ -471,7 +475,7 @@ a dummy statsd client will be created.
-
-async load_extensions(module, sync_app_commands=True)[source]
+async load_extensions(module, sync_app_commands=True)[source]
Load all the extensions within the given module and save them to self.all_extensions.
- Parameters:
@@ -485,7 +489,7 @@ a dummy statsd client will be created.
-
-async log_to_dev_log(message)[source]
+async log_to_dev_log(message)[source]
Log the given message to #dev-log.
- Return type:
@@ -496,7 +500,7 @@ a dummy statsd client will be created.
-
-async on_guild_available(guild)[source]
+async on_guild_available(guild)[source]
Set the internal guild available event when self.guild_id becomes available.
If the cache appears to still be empty (no members, no channels, or no roles), the event
will not be set and guild_available_but_cache_empty event will be emitted.
@@ -509,7 +513,7 @@ will not be set and guild_available_but_cache_empty event will be e
-
-async on_guild_unavailable(guild)[source]
+async on_guild_unavailable(guild)[source]
Clear the internal guild available event when self.guild_id becomes unavailable.
- Return type:
@@ -520,7 +524,7 @@ will not be set and guild_available_but_cache_empty event will be e
-
-async ping_services()[source]
+async ping_services()[source]
Ping all required services on setup to ensure they are up before starting.
- Return type:
@@ -531,7 +535,7 @@ will not be set and guild_available_but_cache_empty event will be e
-
-remove_command(name)[source]
+remove_command(name)[source]
Remove a command/alias as normal and then remove its root aliases from the bot.
Individual root aliases cannot be removed by this function.
To remove them, either remove the entire command or manually edit bot.all_commands.
@@ -544,7 +548,7 @@ To remove them, either remove the entire command or manually edit bot.all_
-
-async setup_hook()[source]
+async setup_hook()[source]
An async init to startup generic services.
Connects to statsd, and calls
AsyncStatsClient.create_socket
@@ -558,7 +562,7 @@ and
-
-async wait_until_guild_available()[source]
+async wait_until_guild_available()[source]
Wait until the guild that matches the guild_id given at init is available (and the cache is ready).
The on_ready event is inadequate because it only waits 2 seconds for a GUILD_CREATE
gateway event before giving up and thus not populating the cache for unavailable guilds.
@@ -573,12 +577,12 @@ gateway event before giving up and thus not populating the cache for unavailable
-
-exception StartupError(base)[source]
+exception StartupError(base)[source]
Bases: Exception
Exception class for startup errors.
-
-__init__(base)[source]
+__init__(base)[source]
diff --git a/main/output/pydis_core.site_api.html b/main/output/pydis_core.site_api.html
index 329e3619..73330231 100644
--- a/main/output/pydis_core.site_api.html
+++ b/main/output/pydis_core.site_api.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -403,12 +407,12 @@
An API wrapper around the Site API.
-
-class APIClient(site_api_url, site_api_token, **session_kwargs)[source]
+class APIClient(site_api_url, site_api_token, **session_kwargs)[source]
Bases: object
A wrapper for the Django Site API.
-
-__init__(site_api_url, site_api_token, **session_kwargs)[source]
+__init__(site_api_url, site_api_token, **session_kwargs)[source]
Initialize a new APIClient instance.
- Parameters:
@@ -423,7 +427,7 @@
-
-async close()[source]
+async close()[source]
Close the aiohttp session.
- Return type:
@@ -434,7 +438,7 @@
-
-async delete(endpoint, *, raise_for_status=True, **kwargs)[source]
+async delete(endpoint, *, raise_for_status=True, **kwargs)[source]
Send a DELETE request to the site API and return the JSON response.
- Parameters:
@@ -455,7 +459,7 @@
-
-async get(endpoint, *, raise_for_status=True, **kwargs)[source]
+async get(endpoint, *, raise_for_status=True, **kwargs)[source]
Equivalent to APIClient.request() with GET passed as the method.
- Return type:
@@ -466,7 +470,7 @@
-
-async static maybe_raise_for_status(response, should_raise)[source]
+async static maybe_raise_for_status(response, should_raise)[source]
Raise ResponseCodeError for non-OK response if an exception should be raised.
- Parameters:
@@ -486,7 +490,7 @@
-
-async patch(endpoint, *, raise_for_status=True, **kwargs)[source]
+async patch(endpoint, *, raise_for_status=True, **kwargs)[source]
Equivalent to APIClient.request() with PATCH passed as the method.
- Return type:
@@ -497,7 +501,7 @@
-
-async post(endpoint, *, raise_for_status=True, **kwargs)[source]
+async post(endpoint, *, raise_for_status=True, **kwargs)[source]
Equivalent to APIClient.request() with POST passed as the method.
- Return type:
@@ -508,7 +512,7 @@
-
-async put(endpoint, *, raise_for_status=True, **kwargs)[source]
+async put(endpoint, *, raise_for_status=True, **kwargs)[source]
Equivalent to APIClient.request() with PUT passed as the method.
- Return type:
@@ -519,7 +523,7 @@
-
-async request(method, endpoint, *, raise_for_status=True, **kwargs)[source]
+async request(method, endpoint, *, raise_for_status=True, **kwargs)[source]
Send an HTTP request to the site API and return the JSON response.
- Parameters:
@@ -546,12 +550,12 @@
-
-exception ResponseCodeError(response, response_json=None, response_text=None)[source]
+exception ResponseCodeError(response, response_json=None, response_text=None)[source]
Bases: ValueError
Raised in APIClient.request() when a non-OK HTTP response is received.
-
-__init__(response, response_json=None, response_text=None)[source]
+__init__(response, response_json=None, response_text=None)[source]
Initialize a new ResponseCodeError instance.
- Parameters:
@@ -566,7 +570,7 @@
-
-__str__()[source]
+__str__()[source]
Return a string representation of the error.
diff --git a/main/output/pydis_core.utils.caching.html b/main/output/pydis_core.utils.caching.html
index 58945f2e..5bbc7530 100644
--- a/main/output/pydis_core.utils.caching.html
+++ b/main/output/pydis_core.utils.caching.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,14 +407,14 @@
Utilities related to custom caches.
-
-class AsyncCache(max_size=128)[source]
+class AsyncCache(max_size=128)[source]
Bases: object
LRU cache implementation for coroutines.
Once the cache exceeds the maximum size, keys are deleted in FIFO order.
An offset may be optionally provided to be applied to the coroutine’s arguments when creating the cache key.
-
-__call__(arg_offset=0)[source]
+__call__(arg_offset=0)[source]
Decorator for async cache.
- Parameters:
@@ -427,7 +431,7 @@
-
-__init__(max_size=128)[source]
+__init__(max_size=128)[source]
Initialise a new AsyncCache instance.
- Parameters:
@@ -438,7 +442,7 @@
-
-clear()[source]
+clear()[source]
Clear cache instance.
- Return type:
diff --git a/main/output/pydis_core.utils.channel.html b/main/output/pydis_core.utils.channel.html
index e0134ddb..439763f4 100644
--- a/main/output/pydis_core.utils.channel.html
+++ b/main/output/pydis_core.utils.channel.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,7 +407,7 @@
Useful helper functions for interacting with various discord channel objects.
-
-async get_or_fetch_channel(bot, channel_id)[source]
+async get_or_fetch_channel(bot, channel_id)[source]
Attempt to get or fetch the given channel_id from the bots cache, and return it.
- Parameters:
@@ -421,7 +425,7 @@
- Return type:
-GuildChannel
+GuildChannel | PrivateChannel | Thread
- Returns:
The channel from the ID.
@@ -431,7 +435,7 @@
-
-is_in_category(channel, category_id)[source]
+is_in_category(channel, category_id)[source]
Return whether the given channel in the the category with the id category_id.
- Parameters:
diff --git a/main/output/pydis_core.utils.commands.html b/main/output/pydis_core.utils.commands.html
index f2cf7f30..62dd1954 100644
--- a/main/output/pydis_core.utils.commands.html
+++ b/main/output/pydis_core.utils.commands.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -402,7 +406,7 @@
commands
-
-async clean_text_or_reply(ctx, text=None)[source]
+async clean_text_or_reply(ctx, text=None)[source]
Cleans a text argument or replied message’s content.
- Parameters:
diff --git a/main/output/pydis_core.utils.cooldown.html b/main/output/pydis_core.utils.cooldown.html
index 540fcbec..1ece209c 100644
--- a/main/output/pydis_core.utils.cooldown.html
+++ b/main/output/pydis_core.utils.cooldown.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,17 +407,17 @@
Helpers for setting a cooldown on commands.
-
-exception CommandOnCooldown(message, function, /, *args, **kwargs)[source]
+exception CommandOnCooldown(message, function, /, *args, **kwargs)[source]
Bases: CommandError, Generic[P, R]
Raised when a command is invoked while on cooldown.
-
-__init__(message, function, /, *args, **kwargs)[source]
+__init__(message, function, /, *args, **kwargs)[source]
-
-async call_without_cooldown()[source]
+async call_without_cooldown()[source]
Run the command this cooldown blocked.
- Return type:
@@ -429,20 +433,20 @@
-
-P = ~P[source]
+P = ~P[source]
The command’s signature.
-
-class R[source]
+class R[source]
The command’s return value.
alias of TypeVar(‘R’)
-
-block_duplicate_invocations(*, cooldown_duration=5, send_notice=False, args_preprocessor=None)[source]
+block_duplicate_invocations(*, cooldown_duration=5, send_notice=False, args_preprocessor=None)[source]
Prevent duplicate invocations of a command with the same arguments in a channel for cooldown_duration seconds.
- Parameters:
diff --git a/main/output/pydis_core.utils.error_handling.html b/main/output/pydis_core.utils.error_handling.html
index bb9296cb..d710041a 100644
--- a/main/output/pydis_core.utils.error_handling.html
+++ b/main/output/pydis_core.utils.error_handling.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -402,7 +406,7 @@
error_handling
-
-async handle_forbidden_from_block(error, message=None)[source]
+async handle_forbidden_from_block(error, message=None)[source]
Handles discord.Forbidden 90001 errors, or re-raises if error isn’t a 90001 error.
- Parameters:
diff --git a/main/output/pydis_core.utils.function.html b/main/output/pydis_core.utils.function.html
index d56e6718..08fa8842 100644
--- a/main/output/pydis_core.utils.function.html
+++ b/main/output/pydis_core.utils.function.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,14 +407,14 @@
Utils for manipulating functions.
-
-exception GlobalNameConflictError[source]
+exception GlobalNameConflictError[source]
Bases: Exception
Raised on a conflict between the globals used to resolve annotations of a wrapped function and its wrapper.
-
-command_wraps(wrapped, assigned=('__module__', '__name__', '__qualname__', '__doc__', '__annotations__'), updated=('__dict__',), *, ignored_conflict_names=frozenset({}))[source]
+command_wraps(wrapped, assigned=('__module__', '__name__', '__qualname__', '__doc__', '__annotations__'), updated=('__dict__',), *, ignored_conflict_names=frozenset({}))[source]
Update the decorated function to look like wrapped, and update globals for discord.py forwardref evaluation.
See update_wrapper_globals() for more details on how the globals are updated.
@@ -434,7 +438,7 @@ with the wrapper replaced with the function
-
-update_wrapper_globals(wrapper, wrapped, *, ignored_conflict_names=frozenset({}))[source]
+update_wrapper_globals(wrapper, wrapped, *, ignored_conflict_names=frozenset({}))[source]
Create a copy of wrapper, the copy’s globals are updated with wrapped's globals.
For forwardrefs in command annotations, discord.py uses the __global__ attribute of the function
to resolve their values. This breaks for decorators that replace the function because they have
diff --git a/main/output/pydis_core.utils.html b/main/output/pydis_core.utils.html
index 485bf4dd..983fe7bb 100644
--- a/main/output/pydis_core.utils.html
+++ b/main/output/pydis_core.utils.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,7 +407,7 @@
Useful utilities and tools for Discord bot development.
-
-apply_monkey_patches()[source]
+apply_monkey_patches()[source]
Applies all common monkey patches for our bots.
- Return type:
@@ -422,7 +426,7 @@ that will act as top-level groups rather than being aliases of the command’s g
-
-unqualify(name)[source]
+unqualify(name)[source]
Return an unqualified name given a qualified module/package name.
- Parameters:
diff --git a/main/output/pydis_core.utils.interactions.html b/main/output/pydis_core.utils.interactions.html
index a76a6d6a..93e4f8c4 100644
--- a/main/output/pydis_core.utils.interactions.html
+++ b/main/output/pydis_core.utils.interactions.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -402,7 +406,7 @@
interactions
-
-class DeleteMessageButton(*, style=<ButtonStyle.secondary: 2>, label='Delete', **kwargs)[source]
+class DeleteMessageButton(*, style=<ButtonStyle.secondary: 2>, label='Delete', **kwargs)[source]
Bases: Button
A button that can be added to a view to delete the message containing the view on click.
This button itself carries out no interaction checks, these should be done by the parent view.
@@ -417,12 +421,12 @@
-
-__init__(*, style=<ButtonStyle.secondary: 2>, label='Delete', **kwargs)[source]
+__init__(*, style=<ButtonStyle.secondary: 2>, label='Delete', **kwargs)[source]
-
-async callback(interaction)[source]
+async callback(interaction)[source]
Delete the original message on button click.
- Return type:
@@ -435,7 +439,7 @@
-
-class ViewWithUserAndRoleCheck(*, allowed_users, allowed_roles, timeout=180.0, message=None)[source]
+class ViewWithUserAndRoleCheck(*, allowed_users, allowed_roles, timeout=180.0, message=None)[source]
Bases: View
A view that allows the original invoker and moderators to interact with it.
@@ -452,12 +456,12 @@ If None
-
-__init__(*, allowed_users, allowed_roles, timeout=180.0, message=None)[source]
+__init__(*, allowed_users, allowed_roles, timeout=180.0, message=None)[source]
-
-async interaction_check(interaction)[source]
+async interaction_check(interaction)[source]
Ensure the user clicking the button is the view invoker, or a moderator.
- Parameters:
@@ -471,7 +475,7 @@ If None
-
-async on_timeout()[source]
+async on_timeout()[source]
Remove the view from self.message if set.
- Return type:
diff --git a/main/output/pydis_core.utils.logging.html b/main/output/pydis_core.utils.logging.html
index 2120c49d..ee03cd7a 100644
--- a/main/output/pydis_core.utils.logging.html
+++ b/main/output/pydis_core.utils.logging.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,12 +407,12 @@
Common logging related functions.
-
-class CustomLogger(name, level=0)[source]
+class CustomLogger(name, level=0)[source]
Bases: Logger
Custom implementation of the logging.Logger class with an added trace method.
-
-trace(msg, *args, **kwargs)[source]
+trace(msg, *args, **kwargs)[source]
Log the given message with the severity "TRACE".
To pass exception information, use the keyword argument exc_info with a true value:
logger.trace("Houston, we have an %s", "interesting problem", exc_info=1)
@@ -432,7 +436,7 @@
-
-get_logger(name=None)[source]
+get_logger(name=None)[source]
Utility to make mypy recognise that logger is of type CustomLogger.
- Parameters:
diff --git a/main/output/pydis_core.utils.members.html b/main/output/pydis_core.utils.members.html
index de6ec90d..49a660d1 100644
--- a/main/output/pydis_core.utils.members.html
+++ b/main/output/pydis_core.utils.members.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,7 +407,7 @@
Useful helper functions for interactin with discord.Member objects.
-
-async get_or_fetch_member(guild, member_id)[source]
+async get_or_fetch_member(guild, member_id)[source]
Attempt to get a member from cache; on failure fetch from the API.
- Return type:
@@ -417,7 +421,7 @@
-
-async handle_role_change(member, coro, role)[source]
+async handle_role_change(member, coro, role)[source]
Await the given coro with role as the sole argument.
Handle errors that we expect to be raised from
discord.Member.add_roles and discord.Member.remove_roles.
diff --git a/main/output/pydis_core.utils.paste_service.html b/main/output/pydis_core.utils.paste_service.html
index 96e62ec4..8e3e325f 100644
--- a/main/output/pydis_core.utils.paste_service.html
+++ b/main/output/pydis_core.utils.paste_service.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -402,13 +406,13 @@
paste_service
-
-MAX_PASTE_SIZE = 524288[source]
+MAX_PASTE_SIZE = 524288[source]
The maximum allows size of a paste, in bytes.
-
-class PasteResponse[source]
+class PasteResponse[source]
Bases: TypedDict
A successful response from the paste service.
@@ -423,28 +427,28 @@
-
-exception PasteTooLongError[source]
+exception PasteTooLongError[source]
Bases: Exception
Raised when content is too large to upload to the paste service.
-
-exception PasteUnsupportedLexerError[source]
+exception PasteUnsupportedLexerError[source]
Bases: Exception
Raised when an unsupported lexer is used.
-
-exception PasteUploadError[source]
+exception PasteUploadError[source]
Bases: Exception
Raised when an error is encountered uploading to the paste service.
-
-async send_to_paste_service(*, contents, http_session, file_name='', lexer='python', paste_url='https://paste.pythondiscord.com', max_size=524288)[source]
+async send_to_paste_service(*, contents, http_session, file_name='', lexer='python', paste_url='https://paste.pythondiscord.com', max_size=524288)[source]
Upload some contents to the paste service.
- Parameters:
diff --git a/main/output/pydis_core.utils.regex.html b/main/output/pydis_core.utils.regex.html
index 1453960f..73d98067 100644
--- a/main/output/pydis_core.utils.regex.html
+++ b/main/output/pydis_core.utils.regex.html
@@ -211,6 +211,10 @@
main
+
-
+ v9.9.2
+
+
-
v9.9.1
@@ -403,7 +407,7 @@
Common regular expressions.
-
-DISCORD_INVITE[source]
+DISCORD_INVITE[source]
Regex for Discord server invites.
Warning
@@ -417,7 +421,7 @@ such as
-
-FORMATTED_CODE_REGEX[source]
+FORMATTED_CODE_REGEX[source]
Regex for formatted code, using Discord’s code blocks.
@@ -425,7 +429,7 @@ such as
-
-RAW_CODE_REGEX[source]
+RAW_CODE_REGEX[source]
Regex for raw code, not using Discord’s code blocks.
diff --git a/main/output/pydis_core.utils.scheduling.html b/main/output/pydis_core.utils.scheduling.html
index 700a6f82..fef1d023 100644
--- a/main/output/pydis_core.utils.scheduling.html
+++ b/main/output/pydis_core.utils.scheduling.html
@@ -211,6 +211,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -403,7 +407,7 @@
Generic python scheduler.
-
-class Scheduler(name)[source]
+class Scheduler(name)[source]
Bases: object
Schedule the execution of coroutines and keep track of them.
When instantiating a Scheduler, a name must be provided. This name is used to distinguish the
@@ -417,7 +421,7 @@ the same ID used to schedule it.
Any exception raised in a scheduled task is logged when the task is done.
-
-__contains__(task_id)[source]
+__contains__(task_id)[source]
Return True if a task with the given task_id is currently scheduled.
- Parameters:
@@ -434,7 +438,7 @@ the same ID used to schedule it.
-
-__init__(name)[source]
+__init__(name)[source]
Initialize a new Scheduler instance.
- Parameters:
@@ -445,7 +449,7 @@ the same ID used to schedule it.
-
-cancel(task_id)[source]
+cancel(task_id)[source]
Unschedule the task identified by task_id. Log a warning if the task doesn’t exist.
- Parameters:
@@ -459,7 +463,7 @@ the same ID used to schedule it.
-
-cancel_all()[source]
+cancel_all()[source]
Unschedule all known tasks.
- Return type:
@@ -470,7 +474,7 @@ the same ID used to schedule it.
-
-schedule(task_id, coroutine)[source]
+schedule(task_id, coroutine)[source]
Schedule the execution of a coroutine.
If a task with task_id already exists, close coroutine instead of scheduling it. This
prevents unawaited coroutine warnings. Don’t pass a coroutine that’ll be re-used elsewhere.
@@ -489,7 +493,7 @@ prevents unawaited coroutine warnings. Don’t pass a coroutine that’ll be re-
-
-schedule_at(time, task_id, coroutine)[source]
+schedule_at(time, task_id, coroutine)[source]
Schedule coroutine to be executed at the given time.
If time is timezone aware, then use that timezone to calculate now() when subtracting.
If time is naïve, then use UTC.
@@ -512,7 +516,7 @@ prevents unawaited coroutine warnings. Don’t pass a coroutine that’ll be re-
-
-schedule_later(delay, task_id, coroutine)[source]
+schedule_later(delay, task_id, coroutine)[source]
Schedule coroutine to be executed after delay seconds.
If a task with task_id already exists, close coroutine instead of scheduling it. This
prevents unawaited coroutine warnings. Don’t pass a coroutine that’ll be re-used elsewhere.
@@ -534,7 +538,7 @@ prevents unawaited coroutine warnings. Don’t pass a coroutine that’ll be re-
-
-create_task(coro, *, suppressed_exceptions=(), event_loop=None, **kwargs)[source]
+create_task(coro, *, suppressed_exceptions=(), event_loop=None, **kwargs)[source]
Wrapper for creating an asyncio.Task which logs exceptions raised in the task.
If the event_loop kwarg is provided, the task is created from that event loop,
otherwise the running loop is used.
diff --git a/main/py-modindex.html b/main/py-modindex.html
index 3e9934d9..88bde7ee 100644
--- a/main/py-modindex.html
+++ b/main/py-modindex.html
@@ -209,6 +209,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/search.html b/main/search.html
index 7ddb28bb..f3164bcd 100644
--- a/main/search.html
+++ b/main/search.html
@@ -208,6 +208,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
diff --git a/main/searchindex.js b/main/searchindex.js
index 71a32408..2aa2f2e4 100644
--- a/main/searchindex.js
+++ b/main/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["changelog", "development", "index", "output/pydis_core", "output/pydis_core.async_stats", "output/pydis_core.exts", "output/pydis_core.site_api", "output/pydis_core.utils", "output/pydis_core.utils.caching", "output/pydis_core.utils.channel", "output/pydis_core.utils.commands", "output/pydis_core.utils.cooldown", "output/pydis_core.utils.error_handling", "output/pydis_core.utils.function", "output/pydis_core.utils.interactions", "output/pydis_core.utils.logging", "output/pydis_core.utils.members", "output/pydis_core.utils.paste_service", "output/pydis_core.utils.regex", "output/pydis_core.utils.scheduling"], "filenames": ["changelog.rst", "development.rst", "index.rst", "output/pydis_core.rst", "output/pydis_core.async_stats.rst", "output/pydis_core.exts.rst", "output/pydis_core.site_api.rst", "output/pydis_core.utils.rst", "output/pydis_core.utils.caching.rst", "output/pydis_core.utils.channel.rst", "output/pydis_core.utils.commands.rst", "output/pydis_core.utils.cooldown.rst", "output/pydis_core.utils.error_handling.rst", "output/pydis_core.utils.function.rst", "output/pydis_core.utils.interactions.rst", "output/pydis_core.utils.logging.rst", "output/pydis_core.utils.members.rst", "output/pydis_core.utils.paste_service.rst", "output/pydis_core.utils.regex.rst", "output/pydis_core.utils.scheduling.rst"], "titles": ["Changelog", "Local Development & Testing", "Bot Core Project Documentation", "Pydis Core", "async_stats", "Exts", "site_api", "Utils", "caching", "channel", "commands", "cooldown", "error_handling", "function", "interactions", "logging", "members", "paste_service", "regex", "scheduling"], "terms": {"9": 0, "2": [0, 3, 14], "2nd": 0, "juli": 0, "2023": 0, "bug": 0, "185": 0, "updat": [0, 13], "expiri": 0, "label": [0, 14], "from": [0, 1, 3, 4, 6, 7, 9, 13, 14, 16, 17, 19], "1": [0, 15], "month": 0, "30": 0, "dai": 0, "past": [0, 17, 19], "servic": [0, 1, 3, 17], "22nd": 0, "june": 0, "183": 0, "push": 0, "correct": [0, 1], "changeset": 0, "pypi": 0, "0": [0, 8, 14, 15], "18th": 0, "featur": [0, 1, 3], "182": 0, "add": [0, 3, 11], "support": [0, 4, 7, 19], "lexer": [0, 17], "valid": 0, "default": [0, 1], "pastebin": 0, "url": [0, 3, 6, 17], "http": [0, 6, 17, 18], "pythondiscord": [0, 17], "com": [0, 17], "8": 0, "13th": 0, "181": 0, "bump": 0, "discord": [0, 1, 3, 5, 7, 9, 10, 12, 13, 16, 18], "py": [0, 13], "3": 0, "7": 0, "10th": 0, "176": 0, "migrat": 0, "repo": 0, "us": [0, 1, 3, 4, 6, 7, 9, 11, 13, 15, 16, 17, 18, 19], "ruff": 0, "lint": 0, "177": 0, "automat": 0, "handl": [0, 12, 16, 19], "forbidden": [0, 9, 12], "90001": [0, 12], "error": [0, 3, 6, 7, 12, 16, 17], "all": [0, 1, 3, 4, 7, 19], "schedul": [0, 3, 7], "179": 0, "util": [0, 1, 2, 3, 8, 13, 14, 15], "upload": [0, 17], "text": [0, 6, 10], "our": [0, 1, 7], "6": 0, "6th": 0, "mai": [0, 8], "175": 0, "log": [0, 3, 7, 12, 16, 19], "when": [0, 3, 4, 6, 7, 8, 11, 13, 17, 19], "wait": [0, 3, 19], "guild": [0, 1, 3, 16], "avail": [0, 3], "befor": [0, 3, 14, 19], "load": [0, 1, 3, 7], "cog": [0, 3, 5], "5": [0, 11], "march": 0, "174": 0, "28th": 0, "februari": 0, "173": 0, "4": 0, "9th": 0, "172": 0, "24th": 0, "decemb": 0, "2022": 0, "171": 0, "sync": [0, 3], "app": [0, 3], "command": [0, 1, 3, 7, 9, 11, 13], "after": [0, 3, 14, 19], "extens": [0, 3], "have": [0, 9, 13, 15], "been": 0, "thi": [0, 1, 3, 7, 9, 11, 13, 14, 16, 18, 19], "releas": 0, "also": [0, 7, 13, 14], "remov": [0, 3, 14, 17], "need": [0, 1], "run": [0, 1, 11, 19], "pydis_cor": [0, 1, 3, 14], "botbas": [0, 2, 3], "load_extens": [0, 2, 3], "task": [0, 19], "23rd": 0, "170": 0, "save": [0, 3, 17], "refer": 0, "newli": 0, "creat": [0, 3, 4, 8, 11, 13, 19], "169": 0, "return": [0, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "none": [0, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 16, 19], "upon": 0, "receiv": [0, 6, 9], "bad": 0, "request": [0, 3, 6, 18], "member": [0, 3, 7], "get_or_fetch_memb": [0, 3, 7, 16], "17th": 0, "novemb": 0, "151": 0, "python": [0, 1, 3, 17, 19], "11": 0, "14th": 0, "162": 0, "being": [0, 7, 16], "abl": 0, "delet": [0, 3, 6, 8, 14, 17], "interact": [0, 3, 7, 9], "messag": [0, 3, 10, 11, 12, 14, 15, 19], "button": [0, 14], "press": 0, "timeout": [0, 14], "88": 0, "decor": [0, 8, 11, 13], "stop": 0, "success": [0, 17], "duplic": [0, 11], "invoc": [0, 11], "158": 0, "5th": 0, "break": [0, 13], "157": 0, "renam": 0, "project": [0, 1], "allow": [0, 1, 3, 14, 17], "publish": 0, "septemb": 0, "138": 0, "august": 0, "125": 0, "stabl": 0, "16th": 0, "124": 0, "regex": [0, 3, 7], "discord_invit": [0, 3, 7, 18], "option": [0, 3, 6, 8, 10, 11, 12, 14, 15, 16], "match": [0, 3], "lead": 0, "": [0, 1, 7, 8, 10, 11, 13, 14, 15, 18, 19], "www": 0, "27th": 0, "110": 0, "async": [0, 3, 4, 6, 8, 9, 10, 11, 12, 14, 16, 17], "rediscach": 0, "v1": 0, "rc2": 0, "107": 0, "declar": 0, "aiodn": 0, "depend": [0, 9], "sampl": 0, "boilerpl": 0, "document": 0, "explain": 0, "how": [0, 8, 13, 19], "develop": [0, 2, 3, 7], "bot": [0, 1, 3, 7, 9], "core": [0, 1], "108": 0, "version": [0, 10], "10": 0, "101": 0, "clean": [0, 10], "string": [0, 6], "referenc": 0, "content": [0, 6, 10, 17], "106": 0, "an": [0, 1, 3, 4, 6, 7, 8, 9, 15, 17, 19], "attr": 0, "viewwithuserandrolecheck": [0, 3, 7, 14], "On": 0, "view": [0, 14], "ha": [0, 7], "its": [0, 3, 11, 13], "set": [0, 1, 3, 11, 13, 14], "104": 0, "fix": 0, "deletemessagebutton": [0, 3, 7, 14], "work": [0, 1], "due": 0, "wrong": 0, "method": [0, 4, 6, 7, 15], "103": 0, "attach": 0, "parent": [0, 14], "gener": [0, 3, 11, 19], "onli": [0, 3], "specifi": [0, 11, 14], "user": [0, 11, 14], "role": [0, 1, 3, 14, 16], "98": 0, "close": [0, 2, 3, 6, 19], "stat": [0, 4], "_transport": 0, "wa": [0, 9, 19], "30th": 0, "91": 0, "miss": 0, "await": [0, 11, 14, 16], "ping_servic": [0, 2, 3], "some": [0, 17], "case": 0, "pass": [0, 6, 15, 16, 19], "self": [0, 3, 14], "paramet": [0, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "incorrect": 0, "docstr": 0, "handle_role_chang": [0, 3, 7, 16], "96": 0, "attempt": [0, 3, 9, 16], "connect": [0, 3, 4], "statsd_url": [0, 3], "i": [0, 1, 3, 6, 7, 9, 11, 12, 13, 14, 15, 16, 17, 19], "93": 0, "0eb3d26": 0, "auto": 0, "mod": 0, "which": [0, 1, 7, 11, 19], "new": [0, 1, 4, 6, 8, 13, 19], "auto_mod": 0, "message_typ": 0, "filter": 0, "system": [0, 1], "79": 0, "restor": 0, "site": [0, 6], "sphinx": 0, "multivers": 0, "make": [0, 1, 15], "older": 0, "doc": 0, "78": 0, "4cbe8f5": 0, "permiss": [0, 9], "resolut": 0, "deal": 0, "time": [0, 19], "out": [0, 1, 14], "75": 0, "invit": [0, 18], "longer": [0, 14], "safe": 0, "result": [0, 19], "captur": [0, 13, 18], "charact": 0, "up": [0, 1, 3], "whitespac": [0, 18], "26th": 0, "april": 0, "72": 0, "5a06fa5": 0, "notabl": 0, "one": [0, 3], "commit": 0, "dynam": 0, "extend": 0, "chunk": 0, "base": [0, 3, 4, 6, 8, 11, 13, 14, 15, 17, 19], "number": [0, 17], "so": [0, 1, 7], "should": [0, 1, 6, 14], "actual": 0, "now": [0, 1, 19], "25th": 0, "69": 0, "get": [0, 3, 6, 9, 16], "21st": 0, "68": 0, "pyproject": [0, 1], "toml": [0, 1], "directli": [0, 13], "main": 0, "don": [0, 19], "t": [0, 10, 12, 13, 19], "modul": [0, 3, 7, 13, 19], "start": [0, 3, 19], "_": 0, "66": 0, "each": 0, "own": [0, 13], "avoid": 0, "singl": 0, "crash": 0, "entir": [0, 3], "process": 0, "20th": 0, "65": 0, "unqualifi": [0, 2, 3, 7], "namespac": [0, 19], "manipul": [0, 13], "19th": 0, "64": 0, "987235d": 0, "revert": 0, "chang": [0, 1, 13], "help": [0, 1], "behaviour": 0, "broke": 0, "custom": [0, 8, 15], "pagin": 0, "basic": [0, 14], "forum": 0, "channel": [0, 3, 7, 11], "63": 0, "api_cli": [0, 3], "__init__": [0, 2, 3, 4, 6, 7, 8, 11, 14, 19], "site_api": [0, 2, 3], "apicli": [0, 2, 3, 6], "instanc": [0, 3, 6, 8, 9, 15, 19], "61": 0, "reconnect": 0, "redi": 0, "session": [0, 3, 6, 17], "setup": [0, 3], "56": 0, "move": 0, "creation": 0, "asyncio": [0, 4, 19], "event": [0, 3, 4, 19], "_guild_avail": 0, "within": [0, 3], "hook": 0, "deprec": 0, "notic": 0, "dummi": [0, 3], "asyncstatsdcli": 0, "real": 0, "cannot": [0, 3], "made": 0, "init": [0, 3, 4], "54": 0, "aiohttp": [0, 3, 6, 17], "asyncresolv": 0, "42": 0, "public": 0, "statsd": [0, 3, 4], "client": [0, 3, 4], "ext": [0, 2, 3, 7, 9, 10], "sub": [0, 3], "class": [0, 3, 4, 6, 8, 11, 14, 15, 17, 19], "abstract": 0, "lot": 0, "logic": 0, "share": [0, 13], "between": [0, 1, 13], "latest": 0, "alpha": 0, "39": 0, "back": 0, "37": 0, "trace": [0, 7, 15], "import": 0, "can": [0, 1, 14, 19], "function": [0, 3, 7, 8, 9, 11, 15, 16, 19], "3rd": 0, "35": 0, "apply_monkey_patch": [0, 2, 3, 7], "34": 0, "port": [0, 4], "api": [0, 6, 16], "wrapper": [0, 6, 11, 13, 19], "32": 0, "0a0": 0, "disnak": 0, "29": 0, "mani": [0, 3, 8], "common": [0, 1, 3, 7, 15, 18], "cach": [0, 3, 7, 9, 16], "logger": [0, 15], "monkei": [0, 7], "patch": [0, 3, 6, 7], "ad": [0, 1, 7, 14, 15], "intersphinx": 0, "januari": 0, "12": 0, "code": [0, 1, 18], "block": [0, 11, 18], "detect": 0, "2021": 0, "autogener": 0, "packag": [0, 7], "poetri": [0, 1], "ci": 0, "To": [1, 3, 15], "your": 1, "ar": [1, 3, 8, 13, 14, 18], "few": 1, "possibl": 1, "approach": 1, "instal": 1, "copi": [1, 13], "pre": 1, "exist": [1, 19], "provid": [1, 8, 10, 12, 19], "templat": 1, "dev": [1, 3], "folder": 1, "see": [1, 13, 14], "below": 1, "more": [1, 13], "info": 1, "both": [1, 17], "what": 1, "go": 1, "them": [1, 3, 13, 19], "you": [1, 9, 18], "ll": [1, 19], "write": 1, "might": 1, "mean": 1, "modifi": [1, 16], "ones": 1, "etc": 1, "The": [1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "step": 1, "most": 1, "groundwork": 1, "exact": 1, "requir": [1, 3, 19], "vari": 1, "re": [1, 3, 12, 19], "navig": 1, "want": 1, "sir": 1, "lancebot": 1, "pip": 1, "path": 1, "environ": 1, "root": [1, 3, 7], "directori": 1, "machin": 1, "That": 1, "contain": [1, 14, 17, 19], "file": [1, 17], "sure": 1, "again": 1, "git": 1, "ignor": [1, 7, 13], "free": 1, "howev": 1, "like": [1, 13], "m": 1, "docker": 1, "compos": 1, "d": [1, 13], "configur": 1, "variabl": 1, "program": 1, "env": 1, "bot_token": 1, "token": [1, 6], "intent": 1, "enabl": 1, "guild_id": [1, 3], "monitor": 1, "prefix": [1, 4], "invok": [1, 11, 14], "mention": [1, 3], "allowed_rol": [1, 3, 14], "A": [1, 3, 6, 7, 8, 9, 11, 13, 14, 17, 19], "comma": 1, "seper": 1, "list": [1, 3], "id": [1, 3, 9, 14, 19], "do": [1, 9], "anyth": [1, 17], "reinstal": 1, "librari": 1, "includ": [1, 12], "other": [1, 19], "applic": 1, "certain": 1, "pydi": 2, "add_cog": [2, 3], "add_command": [2, 3], "clear": [2, 3, 7, 8], "log_to_dev_log": [2, 3], "on_guild_avail": [2, 3], "on_guild_unavail": [2, 3], "remove_command": [2, 3], "setup_hook": [2, 3], "wait_until_guild_avail": [2, 3], "startuperror": [2, 3], "subpackag": 2, "submodul": 2, "async_stat": [2, 3], "asyncstatscli": [2, 3, 4], "responsecodeerror": [2, 3, 6], "index": 2, "search": 2, "page": 2, "inform": [2, 15], "local": 2, "test": 2, "changelog": 2, "tool": [3, 7], "arg": [3, 11, 15], "http_session": [3, 17], "redis_sess": 3, "kwarg": [3, 6, 11, 14, 15, 19], "sourc": [3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19], "implement": [3, 4, 8, 14, 15], "initialis": [3, 8], "int": [3, 4, 8, 9, 14, 17, 19], "clientsess": [3, 6, 17], "redissess": 3, "async_rediscach": 3, "str": [3, 4, 6, 7, 10, 13, 14, 15, 17, 19], "server": [3, 18], "If": [3, 6, 11, 13, 14, 19], "given": [3, 4, 7, 9, 10, 15, 16, 19], "oper": [3, 19], "type": [3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "normal": 3, "alias": [3, 7], "Not": 3, "instanti": [3, 14, 19], "instead": [3, 11, 19], "connector": 3, "resolv": [3, 13], "sync_app_command": 3, "true": [3, 6, 11, 15, 19], "all_extens": 3, "bool": [3, 6, 9, 11, 14, 19], "whether": [3, 6, 9], "intern": [3, 7], "becom": 3, "appear": 3, "still": 3, "empti": 3, "guild_available_but_cache_empti": 3, "emit": 3, "unavail": 3, "ping": 3, "ensur": [3, 14, 18], "thei": [3, 13], "name": [3, 7, 13, 15, 17, 19], "alia": [3, 7, 11], "individu": 3, "either": 3, "manual": 3, "edit": 3, "all_command": 3, "startup": 3, "call": [3, 11, 13, 19], "create_socket": [3, 4], "until": [3, 18], "readi": 3, "on_readi": 3, "inadequ": 3, "becaus": [3, 13], "second": [3, 11, 14, 19], "guild_creat": 3, "gatewai": 3, "give": 3, "thu": 3, "popul": 3, "except": [3, 6, 11, 13, 15, 17, 19], "asynccach": [3, 7, 8], "get_or_fetch_channel": [3, 7, 9], "is_in_categori": [3, 7, 9], "clean_text_or_repli": [3, 7, 10], "cooldown": [3, 7], "commandoncooldown": [3, 7, 11], "p": [3, 7, 11], "r": [3, 7, 11], "block_duplicate_invoc": [3, 7, 11], "error_handl": [3, 7], "handle_forbidden_from_block": [3, 7, 12], "globalnameconflicterror": [3, 7, 13], "command_wrap": [3, 7, 13], "update_wrapper_glob": [3, 7, 13], "customlogg": [3, 7, 15], "get_logg": [3, 7, 15], "paste_servic": [3, 7], "max_paste_s": [3, 7, 17], "pasterespons": [3, 7, 17], "pastetoolongerror": [3, 7, 17], "pasteunsupportedlexererror": [3, 7, 17], "pasteuploaderror": [3, 7, 17], "send_to_paste_servic": [3, 7, 17], "formatted_code_regex": [3, 7, 18], "raw_code_regex": [3, 7, 18], "create_task": [3, 7, 19], "maybe_raise_for_statu": [3, 6], "post": [3, 6, 17], "put": [3, 6], "__str__": [3, 6], "transport": 4, "commun": 4, "loop": [4, 19], "host": 4, "localhost": 4, "8125": 4, "statsclientbas": 4, "abstracteventloop": [4, 19], "create_datagram_endpoint": 4, "socket": 4, "reusabl": 5, "around": 6, "site_api_url": 6, "site_api_token": 6, "session_kwarg": 6, "object": [6, 7, 8, 9, 11, 16, 19], "django": 6, "initi": [6, 19], "authent": 6, "keyword": [6, 7, 15], "argument": [6, 7, 8, 10, 11, 15, 16], "constructor": 6, "endpoint": 6, "raise_for_statu": 6, "send": [6, 14], "json": 6, "respons": [6, 17], "rais": [6, 9, 10, 11, 12, 13, 16, 17, 19], "ok": 6, "ani": [6, 18, 19], "extra": 6, "dict": 6, "204": 6, "No": 6, "equival": 6, "static": 6, "should_rais": 6, "non": 6, "clientrespons": 6, "check": [6, 9, 11, 12, 14, 19], "response_json": 6, "response_text": 6, "valueerror": [6, 17], "represent": 6, "appli": [7, 8, 11], "group": [7, 18], "root_alias": 7, "two": 7, "sequenc": [7, 13, 14], "act": 7, "top": 7, "level": [7, 15], "rather": 7, "than": [7, 17], "It": 7, "store": [7, 8], "attribut": [7, 13], "send_typ": 7, "403": 7, "under": 7, "heavi": 7, "cloudflar": 7, "worker": 7, "rout": 7, "caus": 7, "thrown": 7, "qualifi": 7, "__call__": [7, 8], "call_without_cooldown": [7, 11], "callback": [7, 14], "interaction_check": [7, 14], "on_timeout": [7, 14], "__contains__": [7, 19], "cancel": [7, 19], "cancel_al": [7, 19], "schedule_at": [7, 19], "schedule_lat": [7, 19], "relat": [8, 15], "max_siz": [8, 17], "128": 8, "lru": 8, "coroutin": [8, 16, 19], "onc": 8, "exce": 8, "maximum": [8, 17], "size": [8, 17], "kei": 8, "fifo": 8, "order": [8, 19], "offset": 8, "arg_offset": 8, "posit": 8, "callabl": [8, 11, 13, 16], "wrap": [8, 13, 19], "target": 8, "item": 8, "helper": [9, 11, 16], "variou": 9, "channel_id": 9, "fetch": [9, 16], "invaliddata": 9, "unknown": 9, "httpexcept": 9, "retriev": 9, "fail": [9, 17], "notfound": 9, "invalid": 9, "guildchannel": 9, "category_id": 9, "categori": 9, "textchannel": 9, "ctx": [10, 14], "repli": [10, 11, 12], "context": 10, "badargu": 10, "wasn": 10, "els": 10, "commanderror": 11, "while": 11, "typevar": [11, 13, 19], "valu": [11, 13, 15], "signatur": 11, "cooldown_dur": 11, "send_notic": 11, "fals": 11, "args_preprocessor": 11, "prevent": [11, 19], "same": [11, 19], "float": [11, 14, 19], "length": 11, "notifi": 11, "about": 11, "paramspec": [11, 13], "iter": 11, "raw": [11, 18], "isn": 12, "conflict": 13, "global": 13, "annot": 13, "assign": 13, "__module__": 13, "__name__": 13, "__qualname__": 13, "__doc__": 13, "__annotations__": 13, "__dict__": 13, "ignored_conflict_nam": 13, "frozenset": 13, "look": [13, 19], "forwardref": 13, "evalu": 13, "detail": 13, "_p": 13, "_r": 13, "found": [13, 16, 19], "behav": 13, "functool": 13, "replac": 13, "For": 13, "__global__": 13, "state": 13, "won": 13, "reflect": 13, "typehint": 13, "style": 14, "buttonstyl": 14, "secondari": 14, "click": 14, "itself": 14, "carri": 14, "done": [14, 19], "origin": 14, "allowed_us": 14, "180": 14, "moder": 14, "who": 14, "last": 14, "ui": 14, "accept": 14, "input": 14, "similar": [14, 18], "occur": 14, "msg": 15, "sever": 15, "exc_info": 15, "houston": 15, "we": [15, 16], "interest": 15, "problem": 15, "mypi": 15, "recognis": 15, "interactin": 16, "member_id": 16, "failur": 16, "indic": 16, "could": 16, "coro": [16, 19], "sole": 16, "expect": 16, "add_rol": 16, "remove_rol": 16, "purpos": 16, "intend": 16, "524288": 17, "byte": 17, "typeddict": 17, "link": 17, "too": 17, "larg": 17, "unsupport": 17, "encount": 17, "file_nam": 17, "paste_url": 17, "max": 17, "larger": 17, "reject": 17, "max_length": 17, "greater": 17, "long": [17, 19], "regular": 18, "express": 18, "pattern": 18, "pleas": 18, "sanitis": 18, "output": 18, "someth": 18, "urllib": 18, "pars": 18, "quot": 18, "format": 18, "execut": 19, "keep": 19, "track": 19, "must": 19, "distinguish": 19, "suggest": 19, "immedi": 19, "futur": 19, "uniqu": 19, "prematur": 19, "current": 19, "task_id": 19, "hashabl": 19, "unschedul": 19, "identifi": 19, "warn": 19, "doesn": 19, "known": 19, "alreadi": 19, "unawait": 19, "elsewher": 19, "timezon": 19, "awar": 19, "calcul": 19, "subtract": 19, "na\u00efv": 19, "utc": 19, "datetim": 19, "delai": 19, "suppressed_except": 19, "event_loop": 19, "otherwis": 19, "task_return": 19, "tupl": 19}, "objects": {"": [[3, 0, 0, "-", "pydis_core"]], "pydis_core": [[3, 1, 1, "", "BotBase"], [3, 3, 1, "", "StartupError"], [4, 0, 0, "-", "async_stats"], [5, 0, 0, "-", "exts"], [6, 0, 0, "-", "site_api"], [7, 0, 0, "-", "utils"]], "pydis_core.BotBase": [[3, 2, 1, "", "__init__"], [3, 2, 1, "", "add_cog"], [3, 2, 1, "", "add_command"], [3, 2, 1, "", "clear"], [3, 2, 1, "", "close"], [3, 2, 1, "", "load_extensions"], [3, 2, 1, "", "log_to_dev_log"], [3, 2, 1, "", "on_guild_available"], [3, 2, 1, "", "on_guild_unavailable"], [3, 2, 1, "", "ping_services"], [3, 2, 1, "", "remove_command"], [3, 2, 1, "", "setup_hook"], [3, 2, 1, "", "wait_until_guild_available"]], "pydis_core.StartupError": [[3, 2, 1, "", "__init__"]], "pydis_core.async_stats": [[4, 1, 1, "", "AsyncStatsClient"]], "pydis_core.async_stats.AsyncStatsClient": [[4, 2, 1, "", "__init__"], [4, 2, 1, "", "create_socket"]], "pydis_core.site_api": [[6, 1, 1, "", "APIClient"], [6, 3, 1, "", "ResponseCodeError"]], "pydis_core.site_api.APIClient": [[6, 2, 1, "", "__init__"], [6, 2, 1, "", "close"], [6, 2, 1, "", "delete"], [6, 2, 1, "", "get"], [6, 2, 1, "", "maybe_raise_for_status"], [6, 2, 1, "", "patch"], [6, 2, 1, "", "post"], [6, 2, 1, "", "put"], [6, 2, 1, "", "request"]], "pydis_core.site_api.ResponseCodeError": [[6, 2, 1, "", "__init__"], [6, 2, 1, "", "__str__"]], "pydis_core.utils": [[7, 4, 1, "", "apply_monkey_patches"], [8, 0, 0, "-", "caching"], [9, 0, 0, "-", "channel"], [10, 0, 0, "-", "commands"], [11, 0, 0, "-", "cooldown"], [12, 0, 0, "-", "error_handling"], [13, 0, 0, "-", "function"], [14, 0, 0, "-", "interactions"], [15, 0, 0, "-", "logging"], [16, 0, 0, "-", "members"], [17, 0, 0, "-", "paste_service"], [18, 0, 0, "-", "regex"], [19, 0, 0, "-", "scheduling"], [7, 4, 1, "", "unqualify"]], "pydis_core.utils.caching": [[8, 1, 1, "", "AsyncCache"]], "pydis_core.utils.caching.AsyncCache": [[8, 2, 1, "", "__call__"], [8, 2, 1, "", "__init__"], [8, 2, 1, "", "clear"]], "pydis_core.utils.channel": [[9, 4, 1, "", "get_or_fetch_channel"], [9, 4, 1, "", "is_in_category"]], "pydis_core.utils.commands": [[10, 4, 1, "", "clean_text_or_reply"]], "pydis_core.utils.cooldown": [[11, 3, 1, "", "CommandOnCooldown"], [11, 5, 1, "", "P"], [11, 1, 1, "", "R"], [11, 4, 1, "", "block_duplicate_invocations"]], "pydis_core.utils.cooldown.CommandOnCooldown": [[11, 2, 1, "", "__init__"], [11, 2, 1, "", "call_without_cooldown"]], "pydis_core.utils.error_handling": [[12, 4, 1, "", "handle_forbidden_from_block"]], "pydis_core.utils.function": [[13, 3, 1, "", "GlobalNameConflictError"], [13, 4, 1, "", "command_wraps"], [13, 4, 1, "", "update_wrapper_globals"]], "pydis_core.utils.interactions": [[14, 1, 1, "", "DeleteMessageButton"], [14, 1, 1, "", "ViewWithUserAndRoleCheck"]], "pydis_core.utils.interactions.DeleteMessageButton": [[14, 2, 1, "", "__init__"], [14, 2, 1, "", "callback"]], "pydis_core.utils.interactions.ViewWithUserAndRoleCheck": [[14, 2, 1, "", "__init__"], [14, 2, 1, "", "interaction_check"], [14, 2, 1, "", "on_timeout"]], "pydis_core.utils.logging": [[15, 1, 1, "", "CustomLogger"], [15, 4, 1, "", "get_logger"]], "pydis_core.utils.logging.CustomLogger": [[15, 2, 1, "", "trace"]], "pydis_core.utils.members": [[16, 4, 1, "", "get_or_fetch_member"], [16, 4, 1, "", "handle_role_change"]], "pydis_core.utils.paste_service": [[17, 5, 1, "", "MAX_PASTE_SIZE"], [17, 1, 1, "", "PasteResponse"], [17, 3, 1, "", "PasteTooLongError"], [17, 3, 1, "", "PasteUnsupportedLexerError"], [17, 3, 1, "", "PasteUploadError"], [17, 4, 1, "", "send_to_paste_service"]], "pydis_core.utils.regex": [[18, 5, 1, "", "DISCORD_INVITE"], [18, 5, 1, "", "FORMATTED_CODE_REGEX"], [18, 5, 1, "", "RAW_CODE_REGEX"]], "pydis_core.utils.scheduling": [[19, 1, 1, "", "Scheduler"], [19, 4, 1, "", "create_task"]], "pydis_core.utils.scheduling.Scheduler": [[19, 2, 1, "", "__contains__"], [19, 2, 1, "", "__init__"], [19, 2, 1, "", "cancel"], [19, 2, 1, "", "cancel_all"], [19, 2, 1, "", "schedule"], [19, 2, 1, "", "schedule_at"], [19, 2, 1, "", "schedule_later"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:exception", "4": "py:function", "5": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "exception", "Python exception"], "4": ["py", "function", "Python function"], "5": ["py", "data", "Python data"]}, "titleterms": {"changelog": 0, "local": 1, "develop": 1, "test": 1, "option": 1, "1": 1, "2": 1, "bot": 2, "core": [2, 3], "project": 2, "document": 2, "refer": 2, "modul": 2, "extra": 2, "pydi": 3, "subpackag": 3, "submodul": [3, 7], "async_stat": 4, "ext": 5, "site_api": 6, "util": 7, "cach": 8, "channel": 9, "command": 10, "cooldown": 11, "error_handl": 12, "function": 13, "interact": 14, "log": 15, "member": 16, "paste_servic": 17, "regex": 18, "schedul": 19}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx": 57}, "alltitles": {"Bot Core Project Documentation": [[2, "bot-core-project-documentation"]], "Reference": [[2, "reference"]], "Modules:": [[2, null]], "Extras": [[2, "extras"]], "site_api": [[6, "module-pydis_core.site_api"]], "Local Development & Testing": [[1, "local-development-testing"]], "Option 1": [[1, "option-1"]], "Option 2": [[1, "option-2"]], "async_stats": [[4, "module-pydis_core.async_stats"]], "Utils": [[7, "module-pydis_core.utils"]], "Submodules": [[7, "submodules"], [3, "submodules"]], "channel": [[9, "module-pydis_core.utils.channel"]], "caching": [[8, "module-pydis_core.utils.caching"]], "Exts": [[5, "module-pydis_core.exts"]], "Pydis Core": [[3, "module-pydis_core"]], "Subpackages": [[3, "subpackages"]], "Changelog": [[0, "changelog"]], "scheduling": [[19, "module-pydis_core.utils.scheduling"]], "interactions": [[14, "module-pydis_core.utils.interactions"]], "commands": [[10, "module-pydis_core.utils.commands"]], "members": [[16, "module-pydis_core.utils.members"]], "error_handling": [[12, "module-pydis_core.utils.error_handling"]], "function": [[13, "module-pydis_core.utils.function"]], "logging": [[15, "module-pydis_core.utils.logging"]], "regex": [[18, "module-pydis_core.utils.regex"]], "cooldown": [[11, "module-pydis_core.utils.cooldown"]], "paste_service": [[17, "module-pydis_core.utils.paste_service"]]}, "indexentries": {"botbase (class in pydis_core)": [[3, "pydis_core.BotBase"]], "startuperror": [[3, "pydis_core.StartupError"]], "__init__() (botbase method)": [[3, "pydis_core.BotBase.__init__"]], "__init__() (startuperror method)": [[3, "pydis_core.StartupError.__init__"]], "add_cog() (botbase method)": [[3, "pydis_core.BotBase.add_cog"]], "add_command() (botbase method)": [[3, "pydis_core.BotBase.add_command"]], "clear() (botbase method)": [[3, "pydis_core.BotBase.clear"]], "close() (botbase method)": [[3, "pydis_core.BotBase.close"]], "load_extensions() (botbase method)": [[3, "pydis_core.BotBase.load_extensions"]], "log_to_dev_log() (botbase method)": [[3, "pydis_core.BotBase.log_to_dev_log"]], "module": [[3, "module-pydis_core"], [4, "module-pydis_core.async_stats"], [5, "module-pydis_core.exts"], [6, "module-pydis_core.site_api"], [7, "module-pydis_core.utils"], [8, "module-pydis_core.utils.caching"], [9, "module-pydis_core.utils.channel"], [10, "module-pydis_core.utils.commands"], [11, "module-pydis_core.utils.cooldown"], [12, "module-pydis_core.utils.error_handling"], [13, "module-pydis_core.utils.function"], [14, "module-pydis_core.utils.interactions"], [15, "module-pydis_core.utils.logging"], [16, "module-pydis_core.utils.members"], [17, "module-pydis_core.utils.paste_service"], [18, "module-pydis_core.utils.regex"], [19, "module-pydis_core.utils.scheduling"]], "on_guild_available() (botbase method)": [[3, "pydis_core.BotBase.on_guild_available"]], "on_guild_unavailable() (botbase method)": [[3, "pydis_core.BotBase.on_guild_unavailable"]], "ping_services() (botbase method)": [[3, "pydis_core.BotBase.ping_services"]], "pydis_core": [[3, "module-pydis_core"]], "remove_command() (botbase method)": [[3, "pydis_core.BotBase.remove_command"]], "setup_hook() (botbase method)": [[3, "pydis_core.BotBase.setup_hook"]], "wait_until_guild_available() (botbase method)": [[3, "pydis_core.BotBase.wait_until_guild_available"]], "asyncstatsclient (class in pydis_core.async_stats)": [[4, "pydis_core.async_stats.AsyncStatsClient"]], "__init__() (asyncstatsclient method)": [[4, "pydis_core.async_stats.AsyncStatsClient.__init__"]], "create_socket() (asyncstatsclient method)": [[4, "pydis_core.async_stats.AsyncStatsClient.create_socket"]], "pydis_core.async_stats": [[4, "module-pydis_core.async_stats"]], "pydis_core.exts": [[5, "module-pydis_core.exts"]], "apiclient (class in pydis_core.site_api)": [[6, "pydis_core.site_api.APIClient"]], "responsecodeerror": [[6, "pydis_core.site_api.ResponseCodeError"]], "__init__() (apiclient method)": [[6, "pydis_core.site_api.APIClient.__init__"]], "__init__() (responsecodeerror method)": [[6, "pydis_core.site_api.ResponseCodeError.__init__"]], "__str__() (responsecodeerror method)": [[6, "pydis_core.site_api.ResponseCodeError.__str__"]], "close() (apiclient method)": [[6, "pydis_core.site_api.APIClient.close"]], "delete() (apiclient method)": [[6, "pydis_core.site_api.APIClient.delete"]], "get() (apiclient method)": [[6, "pydis_core.site_api.APIClient.get"]], "maybe_raise_for_status() (apiclient static method)": [[6, "pydis_core.site_api.APIClient.maybe_raise_for_status"]], "patch() (apiclient method)": [[6, "pydis_core.site_api.APIClient.patch"]], "post() (apiclient method)": [[6, "pydis_core.site_api.APIClient.post"]], "put() (apiclient method)": [[6, "pydis_core.site_api.APIClient.put"]], "pydis_core.site_api": [[6, "module-pydis_core.site_api"]], "request() (apiclient method)": [[6, "pydis_core.site_api.APIClient.request"]], "apply_monkey_patches() (in module pydis_core.utils)": [[7, "pydis_core.utils.apply_monkey_patches"]], "pydis_core.utils": [[7, "module-pydis_core.utils"]], "unqualify() (in module pydis_core.utils)": [[7, "pydis_core.utils.unqualify"]], "asynccache (class in pydis_core.utils.caching)": [[8, "pydis_core.utils.caching.AsyncCache"]], "__call__() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.__call__"]], "__init__() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.__init__"]], "clear() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.clear"]], "pydis_core.utils.caching": [[8, "module-pydis_core.utils.caching"]], "get_or_fetch_channel() (in module pydis_core.utils.channel)": [[9, "pydis_core.utils.channel.get_or_fetch_channel"]], "is_in_category() (in module pydis_core.utils.channel)": [[9, "pydis_core.utils.channel.is_in_category"]], "pydis_core.utils.channel": [[9, "module-pydis_core.utils.channel"]], "clean_text_or_reply() (in module pydis_core.utils.commands)": [[10, "pydis_core.utils.commands.clean_text_or_reply"]], "pydis_core.utils.commands": [[10, "module-pydis_core.utils.commands"]], "commandoncooldown": [[11, "pydis_core.utils.cooldown.CommandOnCooldown"]], "p (in module pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.P"]], "r (class in pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.R"]], "__init__() (commandoncooldown method)": [[11, "pydis_core.utils.cooldown.CommandOnCooldown.__init__"]], "block_duplicate_invocations() (in module pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.block_duplicate_invocations"]], "call_without_cooldown() (commandoncooldown method)": [[11, "pydis_core.utils.cooldown.CommandOnCooldown.call_without_cooldown"]], "pydis_core.utils.cooldown": [[11, "module-pydis_core.utils.cooldown"]], "handle_forbidden_from_block() (in module pydis_core.utils.error_handling)": [[12, "pydis_core.utils.error_handling.handle_forbidden_from_block"]], "pydis_core.utils.error_handling": [[12, "module-pydis_core.utils.error_handling"]], "globalnameconflicterror": [[13, "pydis_core.utils.function.GlobalNameConflictError"]], "command_wraps() (in module pydis_core.utils.function)": [[13, "pydis_core.utils.function.command_wraps"]], "pydis_core.utils.function": [[13, "module-pydis_core.utils.function"]], "update_wrapper_globals() (in module pydis_core.utils.function)": [[13, "pydis_core.utils.function.update_wrapper_globals"]], "deletemessagebutton (class in pydis_core.utils.interactions)": [[14, "pydis_core.utils.interactions.DeleteMessageButton"]], "viewwithuserandrolecheck (class in pydis_core.utils.interactions)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck"]], "__init__() (deletemessagebutton method)": [[14, "pydis_core.utils.interactions.DeleteMessageButton.__init__"]], "__init__() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.__init__"]], "callback() (deletemessagebutton method)": [[14, "pydis_core.utils.interactions.DeleteMessageButton.callback"]], "interaction_check() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.interaction_check"]], "on_timeout() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.on_timeout"]], "pydis_core.utils.interactions": [[14, "module-pydis_core.utils.interactions"]], "customlogger (class in pydis_core.utils.logging)": [[15, "pydis_core.utils.logging.CustomLogger"]], "get_logger() (in module pydis_core.utils.logging)": [[15, "pydis_core.utils.logging.get_logger"]], "pydis_core.utils.logging": [[15, "module-pydis_core.utils.logging"]], "trace() (customlogger method)": [[15, "pydis_core.utils.logging.CustomLogger.trace"]], "get_or_fetch_member() (in module pydis_core.utils.members)": [[16, "pydis_core.utils.members.get_or_fetch_member"]], "handle_role_change() (in module pydis_core.utils.members)": [[16, "pydis_core.utils.members.handle_role_change"]], "pydis_core.utils.members": [[16, "module-pydis_core.utils.members"]], "max_paste_size (in module pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.MAX_PASTE_SIZE"]], "pasteresponse (class in pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.PasteResponse"]], "pastetoolongerror": [[17, "pydis_core.utils.paste_service.PasteTooLongError"]], "pasteunsupportedlexererror": [[17, "pydis_core.utils.paste_service.PasteUnsupportedLexerError"]], "pasteuploaderror": [[17, "pydis_core.utils.paste_service.PasteUploadError"]], "pydis_core.utils.paste_service": [[17, "module-pydis_core.utils.paste_service"]], "send_to_paste_service() (in module pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.send_to_paste_service"]], "discord_invite (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.DISCORD_INVITE"]], "formatted_code_regex (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.FORMATTED_CODE_REGEX"]], "raw_code_regex (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.RAW_CODE_REGEX"]], "pydis_core.utils.regex": [[18, "module-pydis_core.utils.regex"]], "scheduler (class in pydis_core.utils.scheduling)": [[19, "pydis_core.utils.scheduling.Scheduler"]], "__contains__() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.__contains__"]], "__init__() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.__init__"]], "cancel() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.cancel"]], "cancel_all() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.cancel_all"]], "create_task() (in module pydis_core.utils.scheduling)": [[19, "pydis_core.utils.scheduling.create_task"]], "pydis_core.utils.scheduling": [[19, "module-pydis_core.utils.scheduling"]], "schedule() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule"]], "schedule_at() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule_at"]], "schedule_later() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule_later"]]}})
\ No newline at end of file
+Search.setIndex({"docnames": ["changelog", "development", "index", "output/pydis_core", "output/pydis_core.async_stats", "output/pydis_core.exts", "output/pydis_core.site_api", "output/pydis_core.utils", "output/pydis_core.utils.caching", "output/pydis_core.utils.channel", "output/pydis_core.utils.commands", "output/pydis_core.utils.cooldown", "output/pydis_core.utils.error_handling", "output/pydis_core.utils.function", "output/pydis_core.utils.interactions", "output/pydis_core.utils.logging", "output/pydis_core.utils.members", "output/pydis_core.utils.paste_service", "output/pydis_core.utils.regex", "output/pydis_core.utils.scheduling"], "filenames": ["changelog.rst", "development.rst", "index.rst", "output/pydis_core.rst", "output/pydis_core.async_stats.rst", "output/pydis_core.exts.rst", "output/pydis_core.site_api.rst", "output/pydis_core.utils.rst", "output/pydis_core.utils.caching.rst", "output/pydis_core.utils.channel.rst", "output/pydis_core.utils.commands.rst", "output/pydis_core.utils.cooldown.rst", "output/pydis_core.utils.error_handling.rst", "output/pydis_core.utils.function.rst", "output/pydis_core.utils.interactions.rst", "output/pydis_core.utils.logging.rst", "output/pydis_core.utils.members.rst", "output/pydis_core.utils.paste_service.rst", "output/pydis_core.utils.regex.rst", "output/pydis_core.utils.scheduling.rst"], "titles": ["Changelog", "Local Development & Testing", "Bot Core Project Documentation", "Pydis Core", "async_stats", "Exts", "site_api", "Utils", "caching", "channel", "commands", "cooldown", "error_handling", "function", "interactions", "logging", "members", "paste_service", "regex", "scheduling"], "terms": {"next": 0, "9": 0, "x": 0, "bugfix": 0, "releas": 0, "bug": 0, "187": 0, "fix": 0, "pydis_cor": [0, 1, 3, 14], "util": [0, 1, 2, 3, 8, 13, 14, 15], "channel": [0, 3, 7, 11], "get_or_fetch_channel": [0, 3, 7, 9], "": [0, 1, 7, 8, 10, 11, 13, 14, 15, 18, 19], "return": [0, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "type": [0, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "includ": [0, 1, 12], "discord": [0, 1, 3, 5, 7, 9, 10, 12, 13, 16, 18], "abc": 0, "privatechannel": [0, 9], "thread": [0, 9], "2": [0, 3, 14], "2nd": 0, "juli": 0, "2023": 0, "185": 0, "updat": [0, 13], "expiri": 0, "label": [0, 14], "from": [0, 1, 3, 4, 6, 7, 9, 13, 14, 16, 17, 19], "1": [0, 15], "month": 0, "30": 0, "dai": 0, "past": [0, 17, 19], "servic": [0, 1, 3, 17], "22nd": 0, "june": 0, "183": 0, "push": 0, "correct": [0, 1], "changeset": 0, "pypi": 0, "0": [0, 8, 14, 15], "18th": 0, "featur": [0, 1, 3], "182": 0, "add": [0, 3, 11], "support": [0, 4, 7, 19], "lexer": [0, 17], "valid": 0, "default": [0, 1], "pastebin": 0, "url": [0, 3, 6, 17], "http": [0, 6, 17, 18], "pythondiscord": [0, 17], "com": [0, 17], "8": 0, "13th": 0, "181": 0, "bump": 0, "py": [0, 13], "3": 0, "7": 0, "10th": 0, "176": 0, "migrat": 0, "repo": 0, "us": [0, 1, 3, 4, 6, 7, 9, 11, 13, 15, 16, 17, 18, 19], "ruff": 0, "lint": 0, "177": 0, "automat": 0, "handl": [0, 12, 16, 19], "forbidden": [0, 9, 12], "90001": [0, 12], "error": [0, 3, 6, 7, 12, 16, 17], "all": [0, 1, 3, 4, 7, 19], "schedul": [0, 3, 7], "179": 0, "upload": [0, 17], "text": [0, 6, 10], "our": [0, 1, 7], "6": 0, "6th": 0, "mai": [0, 8], "175": 0, "log": [0, 3, 7, 12, 16, 19], "when": [0, 3, 4, 6, 7, 8, 11, 13, 17, 19], "wait": [0, 3, 19], "guild": [0, 1, 3, 16], "avail": [0, 3], "befor": [0, 3, 14, 19], "load": [0, 1, 3, 7], "cog": [0, 3, 5], "5": [0, 11], "march": 0, "174": 0, "28th": 0, "februari": 0, "173": 0, "4": 0, "9th": 0, "172": 0, "24th": 0, "decemb": 0, "2022": 0, "171": 0, "sync": [0, 3], "app": [0, 3], "command": [0, 1, 3, 7, 9, 11, 13], "after": [0, 3, 14, 19], "extens": [0, 3], "have": [0, 9, 13, 15], "been": 0, "thi": [0, 1, 3, 7, 9, 11, 13, 14, 16, 18, 19], "also": [0, 7, 13, 14], "remov": [0, 3, 14, 17], "need": [0, 1], "run": [0, 1, 11, 19], "botbas": [0, 2, 3], "load_extens": [0, 2, 3], "task": [0, 19], "23rd": 0, "170": 0, "save": [0, 3, 17], "refer": 0, "newli": 0, "creat": [0, 3, 4, 8, 11, 13, 19], "169": 0, "none": [0, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 16, 19], "upon": 0, "receiv": [0, 6, 9], "bad": 0, "request": [0, 3, 6, 18], "member": [0, 3, 7], "get_or_fetch_memb": [0, 3, 7, 16], "17th": 0, "novemb": 0, "151": 0, "python": [0, 1, 3, 17, 19], "11": 0, "14th": 0, "162": 0, "being": [0, 7, 16], "abl": 0, "delet": [0, 3, 6, 8, 14, 17], "interact": [0, 3, 7, 9], "messag": [0, 3, 10, 11, 12, 14, 15, 19], "button": [0, 14], "press": 0, "timeout": [0, 14], "88": 0, "decor": [0, 8, 11, 13], "stop": 0, "success": [0, 17], "duplic": [0, 11], "invoc": [0, 11], "158": 0, "5th": 0, "break": [0, 13], "157": 0, "renam": 0, "project": [0, 1], "allow": [0, 1, 3, 14, 17], "publish": 0, "septemb": 0, "138": 0, "august": 0, "125": 0, "stabl": 0, "16th": 0, "124": 0, "regex": [0, 3, 7], "discord_invit": [0, 3, 7, 18], "option": [0, 3, 6, 8, 10, 11, 12, 14, 15, 16], "match": [0, 3], "lead": 0, "www": 0, "27th": 0, "110": 0, "async": [0, 3, 4, 6, 8, 9, 10, 11, 12, 14, 16, 17], "rediscach": 0, "v1": 0, "rc2": 0, "107": 0, "declar": 0, "aiodn": 0, "depend": [0, 9], "sampl": 0, "boilerpl": 0, "document": 0, "explain": 0, "how": [0, 8, 13, 19], "develop": [0, 2, 3, 7], "bot": [0, 1, 3, 7, 9], "core": [0, 1], "108": 0, "version": [0, 10], "10": 0, "101": 0, "clean": [0, 10], "string": [0, 6], "referenc": 0, "content": [0, 6, 10, 17], "106": 0, "an": [0, 1, 3, 4, 6, 7, 8, 9, 15, 17, 19], "attr": 0, "viewwithuserandrolecheck": [0, 3, 7, 14], "On": 0, "view": [0, 14], "ha": [0, 7], "its": [0, 3, 11, 13], "set": [0, 1, 3, 11, 13, 14], "104": 0, "deletemessagebutton": [0, 3, 7, 14], "work": [0, 1], "due": 0, "wrong": 0, "method": [0, 4, 6, 7, 15], "103": 0, "attach": 0, "parent": [0, 14], "gener": [0, 3, 11, 19], "onli": [0, 3], "specifi": [0, 11, 14], "user": [0, 11, 14], "role": [0, 1, 3, 14, 16], "98": 0, "close": [0, 2, 3, 6, 19], "stat": [0, 4], "_transport": 0, "wa": [0, 9, 19], "30th": 0, "91": 0, "miss": 0, "await": [0, 11, 14, 16], "ping_servic": [0, 2, 3], "some": [0, 17], "case": 0, "pass": [0, 6, 15, 16, 19], "self": [0, 3, 14], "paramet": [0, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "incorrect": 0, "docstr": 0, "handle_role_chang": [0, 3, 7, 16], "96": 0, "attempt": [0, 3, 9, 16], "connect": [0, 3, 4], "statsd_url": [0, 3], "i": [0, 1, 3, 6, 7, 9, 11, 12, 13, 14, 15, 16, 17, 19], "93": 0, "0eb3d26": 0, "auto": 0, "mod": 0, "which": [0, 1, 7, 11, 19], "new": [0, 1, 4, 6, 8, 13, 19], "auto_mod": 0, "message_typ": 0, "filter": 0, "system": [0, 1], "79": 0, "restor": 0, "site": [0, 6], "sphinx": 0, "multivers": 0, "make": [0, 1, 15], "older": 0, "doc": 0, "78": 0, "4cbe8f5": 0, "permiss": [0, 9], "resolut": 0, "deal": 0, "time": [0, 19], "out": [0, 1, 14], "75": 0, "invit": [0, 18], "longer": [0, 14], "safe": 0, "result": [0, 19], "captur": [0, 13, 18], "charact": 0, "up": [0, 1, 3], "whitespac": [0, 18], "26th": 0, "april": 0, "72": 0, "5a06fa5": 0, "notabl": 0, "one": [0, 3], "commit": 0, "dynam": 0, "extend": 0, "chunk": 0, "base": [0, 3, 4, 6, 8, 11, 13, 14, 15, 17, 19], "number": [0, 17], "so": [0, 1, 7], "should": [0, 1, 6, 14], "actual": 0, "now": [0, 1, 19], "25th": 0, "69": 0, "get": [0, 3, 6, 9, 16], "21st": 0, "68": 0, "pyproject": [0, 1], "toml": [0, 1], "directli": [0, 13], "main": 0, "don": [0, 19], "t": [0, 10, 12, 13, 19], "modul": [0, 3, 7, 13, 19], "start": [0, 3, 19], "_": 0, "66": 0, "each": 0, "own": [0, 13], "avoid": 0, "singl": 0, "crash": 0, "entir": [0, 3], "process": 0, "20th": 0, "65": 0, "unqualifi": [0, 2, 3, 7], "namespac": [0, 19], "manipul": [0, 13], "19th": 0, "64": 0, "987235d": 0, "revert": 0, "chang": [0, 1, 13], "help": [0, 1], "behaviour": 0, "broke": 0, "custom": [0, 8, 15], "pagin": 0, "basic": [0, 14], "forum": 0, "63": 0, "api_cli": [0, 3], "__init__": [0, 2, 3, 4, 6, 7, 8, 11, 14, 19], "site_api": [0, 2, 3], "apicli": [0, 2, 3, 6], "instanc": [0, 3, 6, 8, 9, 15, 19], "61": 0, "reconnect": 0, "redi": 0, "session": [0, 3, 6, 17], "setup": [0, 3], "56": 0, "move": 0, "creation": 0, "asyncio": [0, 4, 19], "event": [0, 3, 4, 19], "_guild_avail": 0, "within": [0, 3], "hook": 0, "deprec": 0, "notic": 0, "dummi": [0, 3], "asyncstatsdcli": 0, "real": 0, "cannot": [0, 3], "made": 0, "init": [0, 3, 4], "54": 0, "aiohttp": [0, 3, 6, 17], "asyncresolv": 0, "42": 0, "public": 0, "statsd": [0, 3, 4], "client": [0, 3, 4], "ext": [0, 2, 3, 7, 9, 10], "sub": [0, 3], "class": [0, 3, 4, 6, 8, 11, 14, 15, 17, 19], "abstract": 0, "lot": 0, "logic": 0, "share": [0, 13], "between": [0, 1, 13], "latest": 0, "alpha": 0, "39": 0, "back": 0, "37": 0, "trace": [0, 7, 15], "import": 0, "can": [0, 1, 14, 19], "function": [0, 3, 7, 8, 9, 11, 15, 16, 19], "3rd": 0, "35": 0, "apply_monkey_patch": [0, 2, 3, 7], "34": 0, "port": [0, 4], "api": [0, 6, 16], "wrapper": [0, 6, 11, 13, 19], "32": 0, "0a0": 0, "disnak": 0, "29": 0, "mani": [0, 3, 8], "common": [0, 1, 3, 7, 15, 18], "cach": [0, 3, 7, 9, 16], "logger": [0, 15], "monkei": [0, 7], "patch": [0, 3, 6, 7], "ad": [0, 1, 7, 14, 15], "intersphinx": 0, "januari": 0, "12": 0, "code": [0, 1, 18], "block": [0, 11, 18], "detect": 0, "2021": 0, "autogener": 0, "packag": [0, 7], "poetri": [0, 1], "ci": 0, "To": [1, 3, 15], "your": 1, "ar": [1, 3, 8, 13, 14, 18], "few": 1, "possibl": 1, "approach": 1, "instal": 1, "copi": [1, 13], "pre": 1, "exist": [1, 19], "provid": [1, 8, 10, 12, 19], "templat": 1, "dev": [1, 3], "folder": 1, "see": [1, 13, 14], "below": 1, "more": [1, 13], "info": 1, "both": [1, 17], "what": 1, "go": 1, "them": [1, 3, 13, 19], "you": [1, 9, 18], "ll": [1, 19], "write": 1, "might": 1, "mean": 1, "modifi": [1, 16], "ones": 1, "etc": 1, "The": [1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19], "step": 1, "most": 1, "groundwork": 1, "exact": 1, "requir": [1, 3, 19], "vari": 1, "re": [1, 3, 12, 19], "navig": 1, "want": 1, "sir": 1, "lancebot": 1, "pip": 1, "path": 1, "environ": 1, "root": [1, 3, 7], "directori": 1, "machin": 1, "That": 1, "contain": [1, 14, 17, 19], "file": [1, 17], "sure": 1, "again": 1, "git": 1, "ignor": [1, 7, 13], "free": 1, "howev": 1, "like": [1, 13], "m": 1, "docker": 1, "compos": 1, "d": [1, 13], "configur": 1, "variabl": 1, "program": 1, "env": 1, "bot_token": 1, "token": [1, 6], "intent": 1, "enabl": 1, "guild_id": [1, 3], "monitor": 1, "prefix": [1, 4], "invok": [1, 11, 14], "mention": [1, 3], "allowed_rol": [1, 3, 14], "A": [1, 3, 6, 7, 8, 9, 11, 13, 14, 17, 19], "comma": 1, "seper": 1, "list": [1, 3], "id": [1, 3, 9, 14, 19], "do": [1, 9], "anyth": [1, 17], "reinstal": 1, "librari": 1, "other": [1, 19], "applic": 1, "certain": 1, "pydi": 2, "add_cog": [2, 3], "add_command": [2, 3], "clear": [2, 3, 7, 8], "log_to_dev_log": [2, 3], "on_guild_avail": [2, 3], "on_guild_unavail": [2, 3], "remove_command": [2, 3], "setup_hook": [2, 3], "wait_until_guild_avail": [2, 3], "startuperror": [2, 3], "subpackag": 2, "submodul": 2, "async_stat": [2, 3], "asyncstatscli": [2, 3, 4], "responsecodeerror": [2, 3, 6], "index": 2, "search": 2, "page": 2, "inform": [2, 15], "local": 2, "test": 2, "changelog": 2, "tool": [3, 7], "arg": [3, 11, 15], "http_session": [3, 17], "redis_sess": 3, "kwarg": [3, 6, 11, 14, 15, 19], "sourc": [3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19], "implement": [3, 4, 8, 14, 15], "initialis": [3, 8], "int": [3, 4, 8, 9, 14, 17, 19], "clientsess": [3, 6, 17], "redissess": 3, "async_rediscach": 3, "str": [3, 4, 6, 7, 10, 13, 14, 15, 17, 19], "server": [3, 18], "If": [3, 6, 11, 13, 14, 19], "given": [3, 4, 7, 9, 10, 15, 16, 19], "oper": [3, 19], "normal": 3, "alias": [3, 7], "Not": 3, "instanti": [3, 14, 19], "instead": [3, 11, 19], "connector": 3, "resolv": [3, 13], "sync_app_command": 3, "true": [3, 6, 11, 15, 19], "all_extens": 3, "bool": [3, 6, 9, 11, 14, 19], "whether": [3, 6, 9], "intern": [3, 7], "becom": 3, "appear": 3, "still": 3, "empti": 3, "guild_available_but_cache_empti": 3, "emit": 3, "unavail": 3, "ping": 3, "ensur": [3, 14, 18], "thei": [3, 13], "name": [3, 7, 13, 15, 17, 19], "alia": [3, 7, 11], "individu": 3, "either": 3, "manual": 3, "edit": 3, "all_command": 3, "startup": 3, "call": [3, 11, 13, 19], "create_socket": [3, 4], "until": [3, 18], "readi": 3, "on_readi": 3, "inadequ": 3, "becaus": [3, 13], "second": [3, 11, 14, 19], "guild_creat": 3, "gatewai": 3, "give": 3, "thu": 3, "popul": 3, "except": [3, 6, 11, 13, 15, 17, 19], "asynccach": [3, 7, 8], "is_in_categori": [3, 7, 9], "clean_text_or_repli": [3, 7, 10], "cooldown": [3, 7], "commandoncooldown": [3, 7, 11], "p": [3, 7, 11], "r": [3, 7, 11], "block_duplicate_invoc": [3, 7, 11], "error_handl": [3, 7], "handle_forbidden_from_block": [3, 7, 12], "globalnameconflicterror": [3, 7, 13], "command_wrap": [3, 7, 13], "update_wrapper_glob": [3, 7, 13], "customlogg": [3, 7, 15], "get_logg": [3, 7, 15], "paste_servic": [3, 7], "max_paste_s": [3, 7, 17], "pasterespons": [3, 7, 17], "pastetoolongerror": [3, 7, 17], "pasteunsupportedlexererror": [3, 7, 17], "pasteuploaderror": [3, 7, 17], "send_to_paste_servic": [3, 7, 17], "formatted_code_regex": [3, 7, 18], "raw_code_regex": [3, 7, 18], "create_task": [3, 7, 19], "maybe_raise_for_statu": [3, 6], "post": [3, 6, 17], "put": [3, 6], "__str__": [3, 6], "transport": 4, "commun": 4, "loop": [4, 19], "host": 4, "localhost": 4, "8125": 4, "statsclientbas": 4, "abstracteventloop": [4, 19], "create_datagram_endpoint": 4, "socket": 4, "reusabl": 5, "around": 6, "site_api_url": 6, "site_api_token": 6, "session_kwarg": 6, "object": [6, 7, 8, 9, 11, 16, 19], "django": 6, "initi": [6, 19], "authent": 6, "keyword": [6, 7, 15], "argument": [6, 7, 8, 10, 11, 15, 16], "constructor": 6, "endpoint": 6, "raise_for_statu": 6, "send": [6, 14], "json": 6, "respons": [6, 17], "rais": [6, 9, 10, 11, 12, 13, 16, 17, 19], "ok": 6, "ani": [6, 18, 19], "extra": 6, "dict": 6, "204": 6, "No": 6, "equival": 6, "static": 6, "should_rais": 6, "non": 6, "clientrespons": 6, "check": [6, 9, 11, 12, 14, 19], "response_json": 6, "response_text": 6, "valueerror": [6, 17], "represent": 6, "appli": [7, 8, 11], "group": [7, 18], "root_alias": 7, "two": 7, "sequenc": [7, 13, 14], "act": 7, "top": 7, "level": [7, 15], "rather": 7, "than": [7, 17], "It": 7, "store": [7, 8], "attribut": [7, 13], "send_typ": 7, "403": 7, "under": 7, "heavi": 7, "cloudflar": 7, "worker": 7, "rout": 7, "caus": 7, "thrown": 7, "qualifi": 7, "__call__": [7, 8], "call_without_cooldown": [7, 11], "callback": [7, 14], "interaction_check": [7, 14], "on_timeout": [7, 14], "__contains__": [7, 19], "cancel": [7, 19], "cancel_al": [7, 19], "schedule_at": [7, 19], "schedule_lat": [7, 19], "relat": [8, 15], "max_siz": [8, 17], "128": 8, "lru": 8, "coroutin": [8, 16, 19], "onc": 8, "exce": 8, "maximum": [8, 17], "size": [8, 17], "kei": 8, "fifo": 8, "order": [8, 19], "offset": 8, "arg_offset": 8, "posit": 8, "callabl": [8, 11, 13, 16], "wrap": [8, 13, 19], "target": 8, "item": 8, "helper": [9, 11, 16], "variou": 9, "channel_id": 9, "fetch": [9, 16], "invaliddata": 9, "unknown": 9, "httpexcept": 9, "retriev": 9, "fail": [9, 17], "notfound": 9, "invalid": 9, "guildchannel": 9, "category_id": 9, "categori": 9, "textchannel": 9, "ctx": [10, 14], "repli": [10, 11, 12], "context": 10, "badargu": 10, "wasn": 10, "els": 10, "commanderror": 11, "while": 11, "typevar": [11, 13, 19], "valu": [11, 13, 15], "signatur": 11, "cooldown_dur": 11, "send_notic": 11, "fals": 11, "args_preprocessor": 11, "prevent": [11, 19], "same": [11, 19], "float": [11, 14, 19], "length": 11, "notifi": 11, "about": 11, "paramspec": [11, 13], "iter": 11, "raw": [11, 18], "isn": 12, "conflict": 13, "global": 13, "annot": 13, "assign": 13, "__module__": 13, "__name__": 13, "__qualname__": 13, "__doc__": 13, "__annotations__": 13, "__dict__": 13, "ignored_conflict_nam": 13, "frozenset": 13, "look": [13, 19], "forwardref": 13, "evalu": 13, "detail": 13, "_p": 13, "_r": 13, "found": [13, 16, 19], "behav": 13, "functool": 13, "replac": 13, "For": 13, "__global__": 13, "state": 13, "won": 13, "reflect": 13, "typehint": 13, "style": 14, "buttonstyl": 14, "secondari": 14, "click": 14, "itself": 14, "carri": 14, "done": [14, 19], "origin": 14, "allowed_us": 14, "180": 14, "moder": 14, "who": 14, "last": 14, "ui": 14, "accept": 14, "input": 14, "similar": [14, 18], "occur": 14, "msg": 15, "sever": 15, "exc_info": 15, "houston": 15, "we": [15, 16], "interest": 15, "problem": 15, "mypi": 15, "recognis": 15, "interactin": 16, "member_id": 16, "failur": 16, "indic": 16, "could": 16, "coro": [16, 19], "sole": 16, "expect": 16, "add_rol": 16, "remove_rol": 16, "purpos": 16, "intend": 16, "524288": 17, "byte": 17, "typeddict": 17, "link": 17, "too": 17, "larg": 17, "unsupport": 17, "encount": 17, "file_nam": 17, "paste_url": 17, "max": 17, "larger": 17, "reject": 17, "max_length": 17, "greater": 17, "long": [17, 19], "regular": 18, "express": 18, "pattern": 18, "pleas": 18, "sanitis": 18, "output": 18, "someth": 18, "urllib": 18, "pars": 18, "quot": 18, "format": 18, "execut": 19, "keep": 19, "track": 19, "must": 19, "distinguish": 19, "suggest": 19, "immedi": 19, "futur": 19, "uniqu": 19, "prematur": 19, "current": 19, "task_id": 19, "hashabl": 19, "unschedul": 19, "identifi": 19, "warn": 19, "doesn": 19, "known": 19, "alreadi": 19, "unawait": 19, "elsewher": 19, "timezon": 19, "awar": 19, "calcul": 19, "subtract": 19, "na\u00efv": 19, "utc": 19, "datetim": 19, "delai": 19, "suppressed_except": 19, "event_loop": 19, "otherwis": 19, "task_return": 19, "tupl": 19}, "objects": {"": [[3, 0, 0, "-", "pydis_core"]], "pydis_core": [[3, 1, 1, "", "BotBase"], [3, 3, 1, "", "StartupError"], [4, 0, 0, "-", "async_stats"], [5, 0, 0, "-", "exts"], [6, 0, 0, "-", "site_api"], [7, 0, 0, "-", "utils"]], "pydis_core.BotBase": [[3, 2, 1, "", "__init__"], [3, 2, 1, "", "add_cog"], [3, 2, 1, "", "add_command"], [3, 2, 1, "", "clear"], [3, 2, 1, "", "close"], [3, 2, 1, "", "load_extensions"], [3, 2, 1, "", "log_to_dev_log"], [3, 2, 1, "", "on_guild_available"], [3, 2, 1, "", "on_guild_unavailable"], [3, 2, 1, "", "ping_services"], [3, 2, 1, "", "remove_command"], [3, 2, 1, "", "setup_hook"], [3, 2, 1, "", "wait_until_guild_available"]], "pydis_core.StartupError": [[3, 2, 1, "", "__init__"]], "pydis_core.async_stats": [[4, 1, 1, "", "AsyncStatsClient"]], "pydis_core.async_stats.AsyncStatsClient": [[4, 2, 1, "", "__init__"], [4, 2, 1, "", "create_socket"]], "pydis_core.site_api": [[6, 1, 1, "", "APIClient"], [6, 3, 1, "", "ResponseCodeError"]], "pydis_core.site_api.APIClient": [[6, 2, 1, "", "__init__"], [6, 2, 1, "", "close"], [6, 2, 1, "", "delete"], [6, 2, 1, "", "get"], [6, 2, 1, "", "maybe_raise_for_status"], [6, 2, 1, "", "patch"], [6, 2, 1, "", "post"], [6, 2, 1, "", "put"], [6, 2, 1, "", "request"]], "pydis_core.site_api.ResponseCodeError": [[6, 2, 1, "", "__init__"], [6, 2, 1, "", "__str__"]], "pydis_core.utils": [[7, 4, 1, "", "apply_monkey_patches"], [8, 0, 0, "-", "caching"], [9, 0, 0, "-", "channel"], [10, 0, 0, "-", "commands"], [11, 0, 0, "-", "cooldown"], [12, 0, 0, "-", "error_handling"], [13, 0, 0, "-", "function"], [14, 0, 0, "-", "interactions"], [15, 0, 0, "-", "logging"], [16, 0, 0, "-", "members"], [17, 0, 0, "-", "paste_service"], [18, 0, 0, "-", "regex"], [19, 0, 0, "-", "scheduling"], [7, 4, 1, "", "unqualify"]], "pydis_core.utils.caching": [[8, 1, 1, "", "AsyncCache"]], "pydis_core.utils.caching.AsyncCache": [[8, 2, 1, "", "__call__"], [8, 2, 1, "", "__init__"], [8, 2, 1, "", "clear"]], "pydis_core.utils.channel": [[9, 4, 1, "", "get_or_fetch_channel"], [9, 4, 1, "", "is_in_category"]], "pydis_core.utils.commands": [[10, 4, 1, "", "clean_text_or_reply"]], "pydis_core.utils.cooldown": [[11, 3, 1, "", "CommandOnCooldown"], [11, 5, 1, "", "P"], [11, 1, 1, "", "R"], [11, 4, 1, "", "block_duplicate_invocations"]], "pydis_core.utils.cooldown.CommandOnCooldown": [[11, 2, 1, "", "__init__"], [11, 2, 1, "", "call_without_cooldown"]], "pydis_core.utils.error_handling": [[12, 4, 1, "", "handle_forbidden_from_block"]], "pydis_core.utils.function": [[13, 3, 1, "", "GlobalNameConflictError"], [13, 4, 1, "", "command_wraps"], [13, 4, 1, "", "update_wrapper_globals"]], "pydis_core.utils.interactions": [[14, 1, 1, "", "DeleteMessageButton"], [14, 1, 1, "", "ViewWithUserAndRoleCheck"]], "pydis_core.utils.interactions.DeleteMessageButton": [[14, 2, 1, "", "__init__"], [14, 2, 1, "", "callback"]], "pydis_core.utils.interactions.ViewWithUserAndRoleCheck": [[14, 2, 1, "", "__init__"], [14, 2, 1, "", "interaction_check"], [14, 2, 1, "", "on_timeout"]], "pydis_core.utils.logging": [[15, 1, 1, "", "CustomLogger"], [15, 4, 1, "", "get_logger"]], "pydis_core.utils.logging.CustomLogger": [[15, 2, 1, "", "trace"]], "pydis_core.utils.members": [[16, 4, 1, "", "get_or_fetch_member"], [16, 4, 1, "", "handle_role_change"]], "pydis_core.utils.paste_service": [[17, 5, 1, "", "MAX_PASTE_SIZE"], [17, 1, 1, "", "PasteResponse"], [17, 3, 1, "", "PasteTooLongError"], [17, 3, 1, "", "PasteUnsupportedLexerError"], [17, 3, 1, "", "PasteUploadError"], [17, 4, 1, "", "send_to_paste_service"]], "pydis_core.utils.regex": [[18, 5, 1, "", "DISCORD_INVITE"], [18, 5, 1, "", "FORMATTED_CODE_REGEX"], [18, 5, 1, "", "RAW_CODE_REGEX"]], "pydis_core.utils.scheduling": [[19, 1, 1, "", "Scheduler"], [19, 4, 1, "", "create_task"]], "pydis_core.utils.scheduling.Scheduler": [[19, 2, 1, "", "__contains__"], [19, 2, 1, "", "__init__"], [19, 2, 1, "", "cancel"], [19, 2, 1, "", "cancel_all"], [19, 2, 1, "", "schedule"], [19, 2, 1, "", "schedule_at"], [19, 2, 1, "", "schedule_later"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:exception", "4": "py:function", "5": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "exception", "Python exception"], "4": ["py", "function", "Python function"], "5": ["py", "data", "Python data"]}, "titleterms": {"changelog": 0, "local": 1, "develop": 1, "test": 1, "option": 1, "1": 1, "2": 1, "bot": 2, "core": [2, 3], "project": 2, "document": 2, "refer": 2, "modul": 2, "extra": 2, "pydi": 3, "subpackag": 3, "submodul": [3, 7], "async_stat": 4, "ext": 5, "site_api": 6, "util": 7, "cach": 8, "channel": 9, "command": 10, "cooldown": 11, "error_handl": 12, "function": 13, "interact": 14, "log": 15, "member": 16, "paste_servic": 17, "regex": 18, "schedul": 19}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx": 57}, "alltitles": {"async_stats": [[4, "module-pydis_core.async_stats"]], "Bot Core Project Documentation": [[2, "bot-core-project-documentation"]], "Reference": [[2, "reference"]], "Modules:": [[2, null]], "Extras": [[2, "extras"]], "Utils": [[7, "module-pydis_core.utils"]], "Submodules": [[7, "submodules"], [3, "submodules"]], "site_api": [[6, "module-pydis_core.site_api"]], "channel": [[9, "module-pydis_core.utils.channel"]], "Exts": [[5, "module-pydis_core.exts"]], "Local Development & Testing": [[1, "local-development-testing"]], "Option 1": [[1, "option-1"]], "Option 2": [[1, "option-2"]], "Changelog": [[0, "changelog"]], "Pydis Core": [[3, "module-pydis_core"]], "Subpackages": [[3, "subpackages"]], "caching": [[8, "module-pydis_core.utils.caching"]], "logging": [[15, "module-pydis_core.utils.logging"]], "interactions": [[14, "module-pydis_core.utils.interactions"]], "scheduling": [[19, "module-pydis_core.utils.scheduling"]], "error_handling": [[12, "module-pydis_core.utils.error_handling"]], "cooldown": [[11, "module-pydis_core.utils.cooldown"]], "paste_service": [[17, "module-pydis_core.utils.paste_service"]], "function": [[13, "module-pydis_core.utils.function"]], "members": [[16, "module-pydis_core.utils.members"]], "regex": [[18, "module-pydis_core.utils.regex"]], "commands": [[10, "module-pydis_core.utils.commands"]]}, "indexentries": {"botbase (class in pydis_core)": [[3, "pydis_core.BotBase"]], "startuperror": [[3, "pydis_core.StartupError"]], "__init__() (botbase method)": [[3, "pydis_core.BotBase.__init__"]], "__init__() (startuperror method)": [[3, "pydis_core.StartupError.__init__"]], "add_cog() (botbase method)": [[3, "pydis_core.BotBase.add_cog"]], "add_command() (botbase method)": [[3, "pydis_core.BotBase.add_command"]], "clear() (botbase method)": [[3, "pydis_core.BotBase.clear"]], "close() (botbase method)": [[3, "pydis_core.BotBase.close"]], "load_extensions() (botbase method)": [[3, "pydis_core.BotBase.load_extensions"]], "log_to_dev_log() (botbase method)": [[3, "pydis_core.BotBase.log_to_dev_log"]], "module": [[3, "module-pydis_core"], [4, "module-pydis_core.async_stats"], [5, "module-pydis_core.exts"], [6, "module-pydis_core.site_api"], [7, "module-pydis_core.utils"], [8, "module-pydis_core.utils.caching"], [9, "module-pydis_core.utils.channel"], [10, "module-pydis_core.utils.commands"], [11, "module-pydis_core.utils.cooldown"], [12, "module-pydis_core.utils.error_handling"], [13, "module-pydis_core.utils.function"], [14, "module-pydis_core.utils.interactions"], [15, "module-pydis_core.utils.logging"], [16, "module-pydis_core.utils.members"], [17, "module-pydis_core.utils.paste_service"], [18, "module-pydis_core.utils.regex"], [19, "module-pydis_core.utils.scheduling"]], "on_guild_available() (botbase method)": [[3, "pydis_core.BotBase.on_guild_available"]], "on_guild_unavailable() (botbase method)": [[3, "pydis_core.BotBase.on_guild_unavailable"]], "ping_services() (botbase method)": [[3, "pydis_core.BotBase.ping_services"]], "pydis_core": [[3, "module-pydis_core"]], "remove_command() (botbase method)": [[3, "pydis_core.BotBase.remove_command"]], "setup_hook() (botbase method)": [[3, "pydis_core.BotBase.setup_hook"]], "wait_until_guild_available() (botbase method)": [[3, "pydis_core.BotBase.wait_until_guild_available"]], "asyncstatsclient (class in pydis_core.async_stats)": [[4, "pydis_core.async_stats.AsyncStatsClient"]], "__init__() (asyncstatsclient method)": [[4, "pydis_core.async_stats.AsyncStatsClient.__init__"]], "create_socket() (asyncstatsclient method)": [[4, "pydis_core.async_stats.AsyncStatsClient.create_socket"]], "pydis_core.async_stats": [[4, "module-pydis_core.async_stats"]], "pydis_core.exts": [[5, "module-pydis_core.exts"]], "apiclient (class in pydis_core.site_api)": [[6, "pydis_core.site_api.APIClient"]], "responsecodeerror": [[6, "pydis_core.site_api.ResponseCodeError"]], "__init__() (apiclient method)": [[6, "pydis_core.site_api.APIClient.__init__"]], "__init__() (responsecodeerror method)": [[6, "pydis_core.site_api.ResponseCodeError.__init__"]], "__str__() (responsecodeerror method)": [[6, "pydis_core.site_api.ResponseCodeError.__str__"]], "close() (apiclient method)": [[6, "pydis_core.site_api.APIClient.close"]], "delete() (apiclient method)": [[6, "pydis_core.site_api.APIClient.delete"]], "get() (apiclient method)": [[6, "pydis_core.site_api.APIClient.get"]], "maybe_raise_for_status() (apiclient static method)": [[6, "pydis_core.site_api.APIClient.maybe_raise_for_status"]], "patch() (apiclient method)": [[6, "pydis_core.site_api.APIClient.patch"]], "post() (apiclient method)": [[6, "pydis_core.site_api.APIClient.post"]], "put() (apiclient method)": [[6, "pydis_core.site_api.APIClient.put"]], "pydis_core.site_api": [[6, "module-pydis_core.site_api"]], "request() (apiclient method)": [[6, "pydis_core.site_api.APIClient.request"]], "apply_monkey_patches() (in module pydis_core.utils)": [[7, "pydis_core.utils.apply_monkey_patches"]], "pydis_core.utils": [[7, "module-pydis_core.utils"]], "unqualify() (in module pydis_core.utils)": [[7, "pydis_core.utils.unqualify"]], "asynccache (class in pydis_core.utils.caching)": [[8, "pydis_core.utils.caching.AsyncCache"]], "__call__() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.__call__"]], "__init__() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.__init__"]], "clear() (asynccache method)": [[8, "pydis_core.utils.caching.AsyncCache.clear"]], "pydis_core.utils.caching": [[8, "module-pydis_core.utils.caching"]], "get_or_fetch_channel() (in module pydis_core.utils.channel)": [[9, "pydis_core.utils.channel.get_or_fetch_channel"]], "is_in_category() (in module pydis_core.utils.channel)": [[9, "pydis_core.utils.channel.is_in_category"]], "pydis_core.utils.channel": [[9, "module-pydis_core.utils.channel"]], "clean_text_or_reply() (in module pydis_core.utils.commands)": [[10, "pydis_core.utils.commands.clean_text_or_reply"]], "pydis_core.utils.commands": [[10, "module-pydis_core.utils.commands"]], "commandoncooldown": [[11, "pydis_core.utils.cooldown.CommandOnCooldown"]], "p (in module pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.P"]], "r (class in pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.R"]], "__init__() (commandoncooldown method)": [[11, "pydis_core.utils.cooldown.CommandOnCooldown.__init__"]], "block_duplicate_invocations() (in module pydis_core.utils.cooldown)": [[11, "pydis_core.utils.cooldown.block_duplicate_invocations"]], "call_without_cooldown() (commandoncooldown method)": [[11, "pydis_core.utils.cooldown.CommandOnCooldown.call_without_cooldown"]], "pydis_core.utils.cooldown": [[11, "module-pydis_core.utils.cooldown"]], "handle_forbidden_from_block() (in module pydis_core.utils.error_handling)": [[12, "pydis_core.utils.error_handling.handle_forbidden_from_block"]], "pydis_core.utils.error_handling": [[12, "module-pydis_core.utils.error_handling"]], "globalnameconflicterror": [[13, "pydis_core.utils.function.GlobalNameConflictError"]], "command_wraps() (in module pydis_core.utils.function)": [[13, "pydis_core.utils.function.command_wraps"]], "pydis_core.utils.function": [[13, "module-pydis_core.utils.function"]], "update_wrapper_globals() (in module pydis_core.utils.function)": [[13, "pydis_core.utils.function.update_wrapper_globals"]], "deletemessagebutton (class in pydis_core.utils.interactions)": [[14, "pydis_core.utils.interactions.DeleteMessageButton"]], "viewwithuserandrolecheck (class in pydis_core.utils.interactions)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck"]], "__init__() (deletemessagebutton method)": [[14, "pydis_core.utils.interactions.DeleteMessageButton.__init__"]], "__init__() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.__init__"]], "callback() (deletemessagebutton method)": [[14, "pydis_core.utils.interactions.DeleteMessageButton.callback"]], "interaction_check() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.interaction_check"]], "on_timeout() (viewwithuserandrolecheck method)": [[14, "pydis_core.utils.interactions.ViewWithUserAndRoleCheck.on_timeout"]], "pydis_core.utils.interactions": [[14, "module-pydis_core.utils.interactions"]], "customlogger (class in pydis_core.utils.logging)": [[15, "pydis_core.utils.logging.CustomLogger"]], "get_logger() (in module pydis_core.utils.logging)": [[15, "pydis_core.utils.logging.get_logger"]], "pydis_core.utils.logging": [[15, "module-pydis_core.utils.logging"]], "trace() (customlogger method)": [[15, "pydis_core.utils.logging.CustomLogger.trace"]], "get_or_fetch_member() (in module pydis_core.utils.members)": [[16, "pydis_core.utils.members.get_or_fetch_member"]], "handle_role_change() (in module pydis_core.utils.members)": [[16, "pydis_core.utils.members.handle_role_change"]], "pydis_core.utils.members": [[16, "module-pydis_core.utils.members"]], "max_paste_size (in module pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.MAX_PASTE_SIZE"]], "pasteresponse (class in pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.PasteResponse"]], "pastetoolongerror": [[17, "pydis_core.utils.paste_service.PasteTooLongError"]], "pasteunsupportedlexererror": [[17, "pydis_core.utils.paste_service.PasteUnsupportedLexerError"]], "pasteuploaderror": [[17, "pydis_core.utils.paste_service.PasteUploadError"]], "pydis_core.utils.paste_service": [[17, "module-pydis_core.utils.paste_service"]], "send_to_paste_service() (in module pydis_core.utils.paste_service)": [[17, "pydis_core.utils.paste_service.send_to_paste_service"]], "discord_invite (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.DISCORD_INVITE"]], "formatted_code_regex (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.FORMATTED_CODE_REGEX"]], "raw_code_regex (in module pydis_core.utils.regex)": [[18, "pydis_core.utils.regex.RAW_CODE_REGEX"]], "pydis_core.utils.regex": [[18, "module-pydis_core.utils.regex"]], "scheduler (class in pydis_core.utils.scheduling)": [[19, "pydis_core.utils.scheduling.Scheduler"]], "__contains__() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.__contains__"]], "__init__() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.__init__"]], "cancel() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.cancel"]], "cancel_all() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.cancel_all"]], "create_task() (in module pydis_core.utils.scheduling)": [[19, "pydis_core.utils.scheduling.create_task"]], "pydis_core.utils.scheduling": [[19, "module-pydis_core.utils.scheduling"]], "schedule() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule"]], "schedule_at() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule_at"]], "schedule_later() (scheduler method)": [[19, "pydis_core.utils.scheduling.Scheduler.schedule_later"]]}})
\ No newline at end of file
diff --git a/main/versions.html b/main/versions.html
index 36da32f1..547ed82d 100644
--- a/main/versions.html
+++ b/main/versions.html
@@ -210,6 +210,10 @@
main
+ -
+ v9.9.2
+
+
-
v9.9.1
@@ -409,6 +413,12 @@
- latest
+ -
+ v9.9.2
+
+
+
+
-
v9.9.1
--
cgit v1.2.3