@@ -554,10 +554,7 @@ def __init__(self, func: Callable, *args, **kwargs) -> None:
554554 if self .permissions and self .default_permission :
555555 self .default_permission = False
556556
557-
558557 def _parse_options (self , params ) -> List [Option ]:
559- final_options = []
560-
561558 if list (params .items ())[0 ][0 ] == "self" :
562559 temp = list (params .items ())
563560 temp .pop (0 )
@@ -573,7 +570,6 @@ def _parse_options(self, params) -> List[Option]:
573570 )
574571
575572 final_options = []
576-
577573 for p_name , p_obj in params :
578574
579575 option = p_obj .annotation
@@ -592,13 +588,13 @@ def _parse_options(self, params) -> List[Option]:
592588
593589 if not isinstance (option , Option ):
594590 option = Option (option , "No description provided" )
595- if p_obj .default != inspect .Parameter .empty :
596- option .required = False
597591
598- option .default = option .default if option .default is not None else p_obj .default
599-
600- if option .default == inspect .Parameter .empty :
601- option .default = None
592+ if option .default is None :
593+ if p_obj .default == inspect .Parameter .empty :
594+ option .default = None
595+ else :
596+ option .default = p_obj .default
597+ option .required = False
602598
603599 if option .name is None :
604600 option .name = p_name
@@ -611,7 +607,6 @@ def _parse_options(self, params) -> List[Option]:
611607
612608 return final_options
613609
614-
615610 def _match_option_param_names (self , params , options ):
616611 if list (params .items ())[0 ][0 ] == "self" :
617612 temp = list (params .items ())
0 commit comments