Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/click/__init__.py: 85%
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
Shortcuts on this page
r m x toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1"""
2Click is a simple Python module inspired by the stdlib optparse to make
3writing command line scripts fun. Unlike other modules, it's based
4around a simple API that does not come with too much magic and is
5composable.
6"""
8from __future__ import annotations
10from .core import Argument as Argument
11from .core import Command as Command
12from .core import CommandCollection as CommandCollection
13from .core import Context as Context
14from .core import Group as Group
15from .core import Option as Option
16from .core import Parameter as Parameter
17from .decorators import argument as argument
18from .decorators import command as command
19from .decorators import confirmation_option as confirmation_option
20from .decorators import group as group
21from .decorators import help_option as help_option
22from .decorators import make_pass_decorator as make_pass_decorator
23from .decorators import option as option
24from .decorators import pass_context as pass_context
25from .decorators import pass_obj as pass_obj
26from .decorators import password_option as password_option
27from .decorators import version_option as version_option
28from .exceptions import Abort as Abort
29from .exceptions import BadArgumentUsage as BadArgumentUsage
30from .exceptions import BadOptionUsage as BadOptionUsage
31from .exceptions import BadParameter as BadParameter
32from .exceptions import ClickException as ClickException
33from .exceptions import FileError as FileError
34from .exceptions import MissingParameter as MissingParameter
35from .exceptions import NoSuchOption as NoSuchOption
36from .exceptions import UsageError as UsageError
37from .formatting import HelpFormatter as HelpFormatter
38from .formatting import wrap_text as wrap_text
39from .globals import get_current_context as get_current_context
40from .termui import clear as clear
41from .termui import confirm as confirm
42from .termui import echo_via_pager as echo_via_pager
43from .termui import edit as edit
44from .termui import getchar as getchar
45from .termui import launch as launch
46from .termui import pause as pause
47from .termui import progressbar as progressbar
48from .termui import prompt as prompt
49from .termui import secho as secho
50from .termui import style as style
51from .termui import unstyle as unstyle
52from .types import BOOL as BOOL
53from .types import Choice as Choice
54from .types import DateTime as DateTime
55from .types import File as File
56from .types import FLOAT as FLOAT
57from .types import FloatRange as FloatRange
58from .types import INT as INT
59from .types import IntRange as IntRange
60from .types import ParamType as ParamType
61from .types import Path as Path
62from .types import STRING as STRING
63from .types import Tuple as Tuple
64from .types import UNPROCESSED as UNPROCESSED
65from .types import UUID as UUID
66from .utils import echo as echo
67from .utils import format_filename as format_filename
68from .utils import get_app_dir as get_app_dir
69from .utils import get_binary_stream as get_binary_stream
70from .utils import get_text_stream as get_text_stream
71from .utils import open_file as open_file
74def __getattr__(name: str) -> object:
75 import warnings
77 if name == "BaseCommand":
78 from .core import _BaseCommand
80 warnings.warn(
81 "'BaseCommand' is deprecated and will be removed in Click 9.0. Use"
82 " 'Command' instead.",
83 DeprecationWarning,
84 stacklevel=2,
85 )
86 return _BaseCommand
88 if name == "MultiCommand":
89 from .core import _MultiCommand
91 warnings.warn(
92 "'MultiCommand' is deprecated and will be removed in Click 9.0. Use"
93 " 'Group' instead.",
94 DeprecationWarning,
95 stacklevel=2,
96 )
97 return _MultiCommand
99 if name == "OptionParser":
100 from .parser import _OptionParser
102 warnings.warn(
103 "'OptionParser' is deprecated and will be removed in Click 9.0. The"
104 " old parser is available in 'optparse'.",
105 DeprecationWarning,
106 stacklevel=2,
107 )
108 return _OptionParser
110 if name == "__version__":
111 import importlib.metadata
112 import warnings
114 warnings.warn(
115 "The '__version__' attribute is deprecated and will be removed in"
116 " Click 9.1. Use feature detection or"
117 " 'importlib.metadata.version(\"click\")' instead.",
118 DeprecationWarning,
119 stacklevel=2,
120 )
121 return importlib.metadata.version("click")
123 raise AttributeError(name)