From 10b7b836d31fbe36a7096454287004b46a7799dd Mon Sep 17 00:00:00 2001 From: "John L. Villalovos" Date: Thu, 25 Feb 2021 10:28:05 -0800 Subject: [PATCH] chore: add type-hints to gitlab/cli.py --- gitlab/cli.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gitlab/cli.py b/gitlab/cli.py index 485bbbb39..1e98a3855 100644 --- a/gitlab/cli.py +++ b/gitlab/cli.py @@ -21,6 +21,7 @@ import functools import re import sys +from typing import Any, Callable, Dict, Tuple import gitlab.config @@ -31,11 +32,13 @@ # action: (mandatory_args, optional_args, in_obj), # }, # } -custom_actions = {} +custom_actions: Dict[str, Dict[str, Tuple[Tuple[Any, ...], Tuple[Any, ...], bool]]] = {} -def register_custom_action(cls_names, mandatory=tuple(), optional=tuple()): - def wrap(f): +def register_custom_action( + cls_names, mandatory: Tuple[Any, ...] = tuple(), optional: Tuple[Any, ...] = tuple() +) -> Callable: + def wrap(f) -> Callable: @functools.wraps(f) def wrapped_f(*args, **kwargs): return f(*args, **kwargs) @@ -62,22 +65,22 @@ def wrapped_f(*args, **kwargs): return wrap -def die(msg, e=None): +def die(msg: str, e=None) -> None: if e: msg = "%s (%s)" % (msg, e) sys.stderr.write(msg + "\n") sys.exit(1) -def what_to_cls(what): +def what_to_cls(what: str) -> str: return "".join([s.capitalize() for s in what.split("-")]) -def cls_to_what(cls): +def cls_to_what(cls) -> str: return camel_re.sub(r"\1-\2", cls.__name__).lower() -def _get_base_parser(add_help=True): +def _get_base_parser(add_help: bool = True) -> argparse.ArgumentParser: parser = argparse.ArgumentParser( add_help=add_help, description="GitLab API Command Line Interface" ) @@ -148,7 +151,7 @@ def _parse_value(v): return v -def docs(): +def docs() -> argparse.ArgumentParser: """ Provide a statically generated parser for sphinx only, so we don't need to provide dummy gitlab config for readthedocs. pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy