From 9f2018f439f245788131720a30a338e1fd0cb0fe Mon Sep 17 00:00:00 2001 From: Rapptz Date: Sun, 19 Jan 2020 19:49:50 -0500 Subject: [PATCH] [commands] Case insensitivity uses casefold instead of lower There seems to be very little performance regression in doing so (+5ns) so might as well go for the more correct behaviour. --- discord/ext/commands/core.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/discord/ext/commands/core.py b/discord/ext/commands/core.py index 3e05014f6..9d66cf9a0 100644 --- a/discord/ext/commands/core.py +++ b/discord/ext/commands/core.py @@ -105,22 +105,22 @@ def _convert_to_bool(argument): class _CaseInsensitiveDict(dict): def __contains__(self, k): - return super().__contains__(k.lower()) + return super().__contains__(k.casefold()) def __delitem__(self, k): - return super().__delitem__(k.lower()) + return super().__delitem__(k.casefold()) def __getitem__(self, k): - return super().__getitem__(k.lower()) + return super().__getitem__(k.casefold()) def get(self, k, default=None): - return super().get(k.lower(), default) + return super().get(k.casefold(), default) def pop(self, k, default=None): - return super().pop(k.lower(), default) + return super().pop(k.casefold(), default) def __setitem__(self, k, v): - super().__setitem__(k.lower(), v) + super().__setitem__(k.casefold(), v) class Command(_BaseCommand): r"""A class that implements the protocol for a bot text command.