dcicutils 8.8.3.1b8__py3-none-any.whl → 8.8.3.1b10__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
dcicutils/progress_bar.py CHANGED
@@ -61,8 +61,6 @@ class ProgressBar:
61
61
  self._bar = None
62
62
  self._disabled = False
63
63
  self._done = False
64
- self._really_done = False
65
- self.foo = time.time()
66
64
  self._tidy_output_hack = (tidy_output_hack is True)
67
65
  self._started = time.time()
68
66
  self._stop_requested = False
@@ -106,7 +104,7 @@ class ProgressBar:
106
104
  return True
107
105
  return False
108
106
 
109
- def set_total(self, value: int) -> None:
107
+ def set_total(self, value: int, _norefresh: bool = False) -> None:
110
108
  if value == self._total:
111
109
  # If the total has not changed since last set then do nothing.
112
110
  return
@@ -117,13 +115,15 @@ class ProgressBar:
117
115
  # the total during the course of a single ProgressBar instance.
118
116
  self._bar.reset()
119
117
  self._bar.total = value
120
- self._bar.refresh()
118
+ if not _norefresh:
119
+ self._bar.refresh()
121
120
 
122
- def set_progress(self, value: int) -> None:
121
+ def set_progress(self, value: int, _norefresh: bool = False) -> None:
123
122
  if isinstance(value, int) and value >= 0:
124
123
  if (self._bar is not None) or self._initialize():
125
124
  self._bar.n = value
126
- self._bar.refresh()
125
+ if not _norefresh:
126
+ self._bar.refresh()
127
127
 
128
128
  def increment_progress(self, value: int) -> None:
129
129
  if isinstance(value, int) and value > 0:
@@ -131,6 +131,13 @@ class ProgressBar:
131
131
  self._bar.update(value)
132
132
  self._bar.refresh()
133
133
 
134
+ def set_description(self, value: str) -> None:
135
+ if isinstance(value, str):
136
+ self._description = self._format_description(value)
137
+ if self._bar is not None:
138
+ # FYI: tqdm.set_description seems to imply a refresh.
139
+ self._bar.set_description(self._description)
140
+
134
141
  def reset_eta(self) -> None:
135
142
  # Since set_total does nothing if total is the same, provide
136
143
  # a way to reset the ETA if starting over with the same total.
@@ -142,11 +149,10 @@ class ProgressBar:
142
149
  self._bar.n = progress
143
150
  self._bar.refresh()
144
151
 
145
- def set_description(self, value: str) -> None:
146
- if isinstance(value, str):
147
- self._description = self._format_description(value)
148
- if self._bar is not None:
149
- self._bar.set_description(self._description)
152
+ def reset(self, total: int, progress: int = 0, description: Optional[str] = None) -> None:
153
+ self.set_total(total, _norefresh=True)
154
+ self.set_progress(progress, _norefresh=True)
155
+ self.set_description(description)
150
156
 
151
157
  def done(self, description: Optional[str] = None) -> None:
152
158
  if self._done or self._bar is None:
@@ -279,7 +285,7 @@ class ProgressBar:
279
285
  while text.endswith(" "):
280
286
  text = text[:-1]
281
287
  return text
282
- if (not text) or (last_text == text) or self._really_done:
288
+ if (not text) or (last_text == text):
283
289
  return
284
290
  last_text = text
285
291
  if (self._disabled or self._done) and sentinel_internal in text:
@@ -298,9 +304,6 @@ class ProgressBar:
298
304
  text = replace_first(text, "s/ ", "/s ")
299
305
  sys_stdout_write(text)
300
306
  sys.stdout.flush()
301
- if self._done:
302
- self._really_done = True
303
- return
304
307
  if self._captured_output_for_testing is not None:
305
308
  # For testing only we replace vacilliting values in the out like rate,
306
309
  # time elapsed, and ETA with static values; so that something like this:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.8.3.1b8
3
+ Version: 8.8.3.1b10
4
4
  Summary: Utility package for interacting with the 4DN Data Portal and other 4DN resources
5
5
  Home-page: https://github.com/4dn-dcic/utils
6
6
  License: MIT
@@ -48,7 +48,7 @@ dcicutils/obfuscation_utils.py,sha256=fo2jOmDRC6xWpYX49u80bVNisqRRoPskFNX3ymFAmj
48
48
  dcicutils/opensearch_utils.py,sha256=V2exmFYW8Xl2_pGFixF4I2Cc549Opwe4PhFi5twC0M8,1017
49
49
  dcicutils/portal_object_utils.py,sha256=gDXRgPsRvqCFwbC8WatsuflAxNiigOnqr0Hi93k3AgE,15422
50
50
  dcicutils/portal_utils.py,sha256=Xm0IqL2dA9C2gx98cPEbvlo81V76bEmpUpxb_8S3VqM,30480
51
- dcicutils/progress_bar.py,sha256=j6dZdh5EeZo52GWIBu2JL5254-V6eOhKHHB2eCkgevI,16569
51
+ dcicutils/progress_bar.py,sha256=OFgLXJL-03tQw2WM6JVDr8_YhxN3eay090iUhiAJKZ4,16830
52
52
  dcicutils/project_utils.py,sha256=qPdCaFmWUVBJw4rw342iUytwdQC0P-XKpK4mhyIulMM,31250
53
53
  dcicutils/qa_checkers.py,sha256=cdXjeL0jCDFDLT8VR8Px78aS10hwNISOO5G_Zv2TZ6M,20534
54
54
  dcicutils/qa_utils.py,sha256=TT0SiJWiuxYvbsIyhK9VO4uV_suxhB6CpuC4qPacCzQ,160208
@@ -72,8 +72,8 @@ dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
72
72
  dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
73
73
  dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
74
74
  dcicutils/zip_utils.py,sha256=rnjNv_k6L9jT2SjDSgVXp4BEJYLtz9XN6Cl2Fy-tqnM,2027
75
- dcicutils-8.8.3.1b8.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
76
- dcicutils-8.8.3.1b8.dist-info/METADATA,sha256=saFsKdu4mbE4RBPh2331yy2nC-ZUcE5n3fT740wn9iY,3356
77
- dcicutils-8.8.3.1b8.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
78
- dcicutils-8.8.3.1b8.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
79
- dcicutils-8.8.3.1b8.dist-info/RECORD,,
75
+ dcicutils-8.8.3.1b10.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
76
+ dcicutils-8.8.3.1b10.dist-info/METADATA,sha256=tpCuqrVIZ1fN1xzI_5_0ZnAMDzGC-Iqf9axDT66sdNw,3357
77
+ dcicutils-8.8.3.1b10.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
78
+ dcicutils-8.8.3.1b10.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
79
+ dcicutils-8.8.3.1b10.dist-info/RECORD,,