From 5b32e79f4a8cda0e1d8c234ee85fbddf5fba0bbd Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 26 Jun 2018 13:53:39 -0700 Subject: [PATCH] [gflags] Give DEFINE* default values Optional types (#2279) I found some code that called DEFINE_integer() and DEFINE_float() with default set to None. Perusing the code that seems to be a totally valid usage. I am not super familiar with gflags but I believe this PR consistently changes all those default values to Optional[]. --- third_party/2/gflags.pyi | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/third_party/2/gflags.pyi b/third_party/2/gflags.pyi index 4242e040b..8ffe77964 100644 --- a/third_party/2/gflags.pyi +++ b/third_party/2/gflags.pyi @@ -80,7 +80,7 @@ class Flag: allow_override = False def __init__(self, parser: ArgumentParser, serializer: ArgumentSerializer, name: str, - default: str, help_string: str, short_name: str = ..., boolean: bool = ..., + default: Optional[str], help_string: str, short_name: str = ..., boolean: bool = ..., allow_override: bool = ...) -> None: ... def Parse(self, argument: Any) -> Any: ... def Unparse(self) -> None: ... @@ -122,9 +122,9 @@ class BooleanParser(ArgumentParser): def Type(self) -> str: ... class BooleanFlag(Flag): - def __init__(self, name: str, default: bool, help: str, short_name=..., **args: Any) -> None: ... + def __init__(self, name: str, default: Optional[bool], help: str, short_name=..., **args: Any) -> None: ... -def DEFINE_boolean(name: str, default: bool, help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... +def DEFINE_boolean(name: str, default: Optional[bool], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... DEFINE_bool = DEFINE_boolean @@ -154,7 +154,7 @@ class FloatParser(NumericParser): def Convert(self, argument: Any) -> float: ... def Type(self) -> str: ... -def DEFINE_float(name: str, default: float, help: str, lower_bound: float = ..., +def DEFINE_float(name: str, default: Optional[float], help: str, lower_bound: float = ..., upper_bound: float = ..., flag_values: FlagValues = ..., **args: Any) -> None: ... class IntegerParser(NumericParser): @@ -165,7 +165,7 @@ class IntegerParser(NumericParser): def Convert(self, argument: Any) -> int: ... def Type(self) -> str: ... -def DEFINE_integer(name: str, default: int, help: str, lower_bound: int = ..., +def DEFINE_integer(name: str, default: Optional[int], help: str, lower_bound: int = ..., upper_bound: int = ..., flag_values: FlagValues = ..., **args: Any) -> None: ... class EnumParser(ArgumentParser): @@ -174,10 +174,10 @@ class EnumParser(ArgumentParser): def Type(self) -> str: ... class EnumFlag(Flag): - def __init__(self, name: str, default: str, help: str, enum_values: List[str], + def __init__(self, name: str, default: Optional[str], help: str, enum_values: List[str], short_name: str, **args: Any) -> None: ... -def DEFINE_enum(name: str, default: str, enum_values: List[str], help: str, +def DEFINE_enum(name: str, default: Optional[str], enum_values: List[str], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... class BaseListParser(ArgumentParser): @@ -193,8 +193,8 @@ class WhitespaceSeparatedListParser(BaseListParser): def __init__(self) -> None: ... def WriteCustomInfoInXMLFormat(self, outfile: IO[str], indent: str): ... -def DEFINE_list(name: str, default: List[str], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... -def DEFINE_spaceseplist(name: str, default: List[str], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... +def DEFINE_list(name: str, default: Optional[List[str]], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... +def DEFINE_spaceseplist(name: str, default: Optional[List[str]], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... class MultiFlag(Flag): def __init__(self, *args: Any, **kwargs: Any) -> None: ... @@ -202,13 +202,13 @@ class MultiFlag(Flag): def Serialize(self) -> str: ... def Type(self) -> str: ... -def DEFINE_multistring(name: str, default: Union[str, List[str]], help: str, +def DEFINE_multistring(name: str, default: Optional[Union[str, List[str]]], help: str, flag_values: FlagValues = ..., **args: Any) -> None: ... -def DEFINE_multi_int(name: str, default: Union[int, List[int]], help: str, lower_bound: int = ..., +def DEFINE_multi_int(name: str, default: Optional[Union[int, List[int]]], help: str, lower_bound: int = ..., upper_bound: int = ..., flag_values: FlagValues = ..., **args: Any) -> None: ... -def DEFINE_multi_float(name: str, default: Union[float, List[float]], help: str, +def DEFINE_multi_float(name: str, default: Optional[Union[float, List[float]]], help: str, lower_bound: float = ..., upper_bound: float = ..., flag_values: FlagValues = ..., **args: Any) -> None: ...