From f80b8d3f5d77f8188c5e8de47d94adf0f99d0736 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Wed, 7 Apr 2021 03:17:10 -0400 Subject: [PATCH] [commands] Only replace annotation if one was given --- discord/ext/commands/core.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/discord/ext/commands/core.py b/discord/ext/commands/core.py index 09661d9c0..0de14b458 100644 --- a/discord/ext/commands/core.py +++ b/discord/ext/commands/core.py @@ -310,7 +310,9 @@ class Command(_BaseCommand): for key, value in self.params.items(): # coalesce the forward references - self.params[key] = value = value.replace(annotation=type_hints.get(key)) + if key in type_hints: + self.params[key] = value = value.replace(annotation=type_hints[key]) + # fail early for when someone passes an unparameterized Greedy type if value.annotation is converters.Greedy: raise TypeError('Unparameterized Greedy[...] is disallowed in signature.')