Skip to content
Snippets Groups Projects
Unverified Commit 9571a297 authored by Newbyte's avatar Newbyte :snowflake:
Browse files

mrhlpr: Check for argcomplete in sys.modules instead (MR 28)

Repurposing argcomplete as a boolean telling whether the module
argcomplete was found results in a variable with two distinct purposes
and types, which is bad practice and confuses Mypy. As such, don't
assign False to argcomplete if the module is not found and instead just
check for whether it exists in sys.modules to determine whether it was
imported successfully.
parent 7983b2b4
No related branches found
No related tags found
No related merge requests found
......@@ -4,11 +4,12 @@
import argparse
import logging
import sys
try:
import argcomplete
except ImportError:
argcomplete = False
pass
from . import ci_labels # type: ignore[attr-defined]
from . import git
......@@ -209,7 +210,7 @@ def parse_args():
fixmsg.add_argument("-v", "--skip-vercheck", action="store_true",
help=f"add message to last commit: {ci_labels['skip_vercheck']}")
if argcomplete:
if "argcomplete" in sys.modules:
argcomplete.autocomplete(parser, always_complete_options="long")
return parser.parse_args()
......
......@@ -4,6 +4,7 @@
import argparse
import logging
import sys
import mrtest.add_packages
import mrtest.origin
......@@ -12,7 +13,7 @@ import mrtest.zap_packages
try:
import argcomplete
except ImportError:
argcomplete = False
pass
def parse_args_parser_add(sub):
......@@ -41,7 +42,7 @@ def parse_args():
parse_args_parser_add(sub)
parse_args_parser_zap(sub)
if argcomplete:
if "argcomplete" in sys.modules:
argcomplete.autocomplete(parser, always_complete_options="long")
return parser.parse_args()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment