Skip to content

Commit 7f83c59

Browse files
committed
small type hinting improvements
1 parent a952bec commit 7f83c59

2 files changed

Lines changed: 13 additions & 12 deletions

File tree

progressbar/utils.py

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
from python_utils.time import format_time
1616
from python_utils.time import timedelta_to_seconds
1717

18+
if types.TYPE_CHECKING:
19+
from .bar import ProgressBar
20+
1821
assert timedelta_to_seconds
1922
assert get_terminal_size
2023
assert format_time
@@ -188,12 +191,12 @@ def env_flag(name: str, default: bool | None = None) -> bool | None:
188191

189192
class WrappingIO:
190193

191-
def __init__(self, target: types.IO, capturing: bool = False, listeners:
192-
types.Set['progressbar.ProgressBar'] = set()) -> None:
194+
def __init__(self, target: types.IO, capturing: bool = False,
195+
listeners: types.Set[ProgressBar] = None) -> None:
193196
self.buffer = io.StringIO()
194197
self.target = target
195198
self.capturing = capturing
196-
self.listeners = listeners
199+
self.listeners = listeners or set()
197200
self.needs_clear = False
198201

199202
def isatty(self): # pragma: no cover
@@ -250,20 +253,14 @@ def __init__(self):
250253
if env_flag('WRAP_STDERR', default=False): # pragma: no cover
251254
self.wrap_stderr()
252255

253-
def start_capturing(
254-
self,
255-
bar: 'progressbar.ProgressBar' | 'progressbar.DataTransferBar'
256-
| None = None,
257-
) -> None:
256+
def start_capturing(self, bar: ProgressBar | None = None) -> None:
258257
if bar: # pragma: no branch
259258
self.listeners.add(bar)
260259

261260
self.capturing += 1
262261
self.update_capturing()
263262

264-
def stop_capturing(
265-
self, bar: 'progressbar.ProgressBar'
266-
| 'progressbar.DataTransferBar' | None = None) -> None:
263+
def stop_capturing(self, bar: ProgressBar | None = None) -> None:
267264
if bar: # pragma: no branch
268265
try:
269266
self.listeners.remove(bar)

progressbar/widgets.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,14 @@
66
import sys
77

88
from python_utils import converters
9+
from python_utils import types
910

1011
from . import base
1112
from . import utils
1213

14+
if types.TYPE_CHECKING:
15+
from .bar import ProgressBar
16+
1317
MAX_DATE = datetime.date.max
1418
MAX_TIME = datetime.time.max
1519
MAX_DATETIME = datetime.datetime.max
@@ -152,7 +156,7 @@ def __init__(self, min_width=None, max_width=None, **kwargs):
152156
self.min_width = min_width
153157
self.max_width = max_width
154158

155-
def check_size(self, progress: 'progressbar.ProgressBar'):
159+
def check_size(self, progress: 'ProgressBar'):
156160
if self.min_width and self.min_width > progress.term_width:
157161
return False
158162
elif self.max_width and self.max_width < progress.term_width:

0 commit comments

Comments
 (0)