Rapptz
717f11d635
[commands] Add Bot.check_once for a global check that is called once.
There is a counterpart for this in cogs, called __global_check_once.
This allows for predicates that would filter a command globally that
do not necessarily require rechecking in the case of e.g. the help
command such as blocking users or blocking channels.
8 years ago
Rapptz
e62e2c7cc6
[commands] Fix cog error detection in the default global error handler.
8 years ago
Rapptz
7d6435fa9c
[commands] Don't display default error handler if a cog local exists.
8 years ago
Rapptz
83dc93559c
[commands] Add docstrings for extension loading.
8 years ago
Rapptz
f588876587
Use Python3Lexer instead of PythonLexer for pygments.
8 years ago
Rapptz
c3e39cd722
[commands] Fix Context.command_failed from being incorrect.
When used, it would be set to False after the invoke was done. Ideally
it should report to False during invoke but True during any error
case.
8 years ago
Rapptz
b44bba6ee6
First pass at documentation reform.
8 years ago
Rapptz
8ef984746a
[commands] Fix default error handler to work with the switch.
8 years ago
Rapptz
a2c9cefac9
[commands] Re-order error handler arguments.
They now have Context as the first argument to be consistent with other
context-passing functions.
8 years ago
Rapptz
37681dd0ea
[commands] Fix lack of space in when_mentioned
8 years ago
Rapptz
c005ef5d44
[commands] Make when_mentioned always have both mention formats.
This will allow it to work in mobile clients which don't respect the
<@!id> format in case of nicknames.
8 years ago
Rapptz
b6ac856868
[commands] Allow loading cogs from folders.
Internally, instead of using module objects just use the `__module__`
attribute which is the same thing. From preliminary testing this seems
to work fine with both regular one-file-per-cog approaches and the
folder cog approach.
Fixes #126 .
8 years ago
Rapptz
5c5e7ae1d6
[commands] Add is_owner check and Bot.is_owner.
8 years ago
Rapptz
54fdafb792
[commands] Add BotBase.get_cog_commands to get all a cog's commands.
Self-explanatory. This should help create help commands for a cog
more easily.
8 years ago
Rapptz
fe588a4d52
[commands] Change GroupMixin.commands to all_commands
This is a breaking change as GroupMixin.commands now returns a set
of unique Command objects.
8 years ago
Rapptz
9cb89f019e
[commands] Register cog listeners with the name of the attribute.
8 years ago
Rapptz
47ef657fbd
Implement async checks. Fixes #380 .
8 years ago
Rapptz
1c49374210
[commands] Implement before and after invoke command hooks.
Fixes #464 .
8 years ago
Rapptz
8fa50a8f3e
[commands] Add Context.command_failed attribute.
8 years ago
Rapptz
0e1bd1647e
[commands] Rename __check to __global_check for cogs.
8 years ago
Rapptz
4016154529
[commands] Allow customising the Context class in get_context.
8 years ago
Rapptz
234fd5180f
Optimise attribute access when dispatching.
8 years ago
Rapptz
ff9f5749e1
Update copyright year to 2017.
8 years ago
Rapptz
ea72d5e63d
[commands] Guarantee that local error handler is called before generic.
8 years ago
Rapptz
ce9d5b4f4a
[commands] Split process_commands into lower level bits.
8 years ago
Rapptz
695b62ccd3
[commands] Make Command a descriptor for #426 .
8 years ago
Rapptz
d22d8cc430
[commands] Add AutoShardedBot counterpart to AutoShardedClient.
8 years ago
Rapptz
496f5d0472
[commands] Fix help command from not working with recent changes.
8 years ago
Rapptz
20ddc9f14f
[commands] Remove send_ utility functions.
8 years ago
Rapptz
d1d54a468a
Rename Server to Guild everywhere.
9 years ago
Rapptz
20251c54a7
[commands] Bot skip check now works with the new __eq__ changes.
9 years ago
PapyrusThePlant
31cd9ad37a
[commands] Bugfix on the teardown function call.
8 years ago
Rapptz
bed2e90e82
Properly propagate loop. Fixes #420 .
8 years ago
Rapptz
00e30f3106
[commands] Shield against dictionary resize in Bot.close
8 years ago
Rapptz
fc1a7183a0
[commands] Unload all cogs when gracefully exiting bot.
8 years ago
Rapptz
6d88024f0f
[commands] Add special extension function 'teardown' for clean-up.
This is to support people who want to clean up some external resource
that the extension is maintaining outside of a cog, where __unload
should be used instead.
The callable is the antipode of 'setup' and takes the same sole
parameter, the bot, after all commands, events, and cogs have been
unloaded.
Fixes #405 .
8 years ago
Rapptz
bafaf72c89
[commands] Unload all extensions when gracefully closing bot.
8 years ago
Rapptz
967d43c35b
[commands] Allow coroutine functions in Bot.command_prefix
9 years ago
Rapptz
1e9251cfef
[commands] Delete module when it does not have a setup function.
9 years ago
Rapptz
cd87f247d3
[commands] Make Bot.check decorator an actual decorator.
9 years ago
PapyrusThePlant
1aaeeff02b
[commands] Added missing parenthesis in examples
9 years ago
Rapptz
adbf2c720f
[commands] Add the concept of global checks.
Global checks are checks that are executed before regular per-command
checks except done to every command that the bot has registered. This
allows you to have checks that apply to every command without having to
override `on_message` or appending the check to every single command.
9 years ago
Rapptz
6f173cc095
[commands] Add `delete_after` keyword argument to utility functions.
This includes things like `Bot.say`, `Bot.upload`, `Bot.whisper`,
and `Bot.reply`.
9 years ago
Rapptz
4dbac9423d
[commands] Only show CommandNotFound on non-empty commands.
9 years ago
Rapptz
bde266bbb9
[commands] Fix @everyone elevation in the default help command.
9 years ago
Rapptz
a0f37f8e85
[commands] Fix issue with proper local error handlers not beign called.
9 years ago
Rapptz
b9c7b05176
[commands] Unify Command.handle_local_error into general dispatcher.
9 years ago
Rapptz
37dfe38af5
[commands] Fix bug where Context.command would not update.
9 years ago
Khazhismel Kumykov
33a69681fc
[commands] Dispatch command_error on command exec error.
Provide fallback on_command_error - will only fire if no cog handlers and
no local handler.
Propagate exceptions in checks and argument parsing to bot.
9 years ago
Rapptz
20e86973ea
[commands] Delete frame objects when done using them.
9 years ago