Skip to content

Commit 2017cc2

Browse files
authored
feat: remove redundant "started." messages from progress output (#2440)
Follow-up to #2419 Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly: - [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/python-bigquery-dataframes/issues/new/choose) before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea - [ ] Ensure the tests and linter pass - [ ] Code coverage does not decrease (if any source code was changed) - [ ] Appropriate docs were updated (if necessary) Context: b/479944983 🦕
1 parent 1274167 commit 2017cc2

2 files changed

Lines changed: 436 additions & 51 deletions

File tree

‎bigframes/formatting_helpers.py‎

Lines changed: 30 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,6 @@
2727
importhumanize
2828

2929
ifTYPE_CHECKING:
30-
fromIPythonimportdisplay
31-
3230
importbigframes.core.events
3331

3432
GenericJob=Union[
@@ -134,16 +132,14 @@ def repr_query_job_html(query_job: Optional[bigquery.QueryJob]):
134132
returnres
135133

136134

137-
current_display: Optional[display.HTML] =None
138135
current_display_id: Optional[str] =None
139-
previous_display_html: str=""
140136

141137

142138
defprogress_callback(
143139
event: bigframes.core.events.Event,
144140
):
145141
"""Displays a progress bar while the query is running"""
146-
globalcurrent_display, current_display_id, previous_display_html
142+
globalcurrent_display_id
147143

148144
try:
149145
importbigframes._config
@@ -162,59 +158,44 @@ def progress_callback(
162158
ifprogress_bar=="notebook":
163159
importIPython.displayasdisplay
164160

165-
if (
166-
isinstance(event, bigframes.core.events.ExecutionStarted)
167-
orcurrent_displayisNone
168-
orcurrent_display_idisNone
169-
):
170-
previous_display_html=""
171-
current_display_id=str(random.random())
172-
current_display=display.HTML("Starting.")
173-
display.display(
174-
current_display,
175-
display_id=current_display_id,
176-
)
161+
display_html=None
162+
163+
ifisinstance(event, bigframes.core.events.ExecutionStarted):
164+
# Start a new context for progress output.
165+
current_display_id=None
166+
167+
elifisinstance(event, bigframes.core.events.BigQuerySentEvent):
168+
display_html=render_bqquery_sent_event_html(event)
177169

178-
ifisinstance(event, bigframes.core.events.BigQuerySentEvent):
179-
previous_display_html=render_bqquery_sent_event_html(event)
180-
display.update_display(
181-
display.HTML(previous_display_html),
182-
display_id=current_display_id,
183-
)
184170
elifisinstance(event, bigframes.core.events.BigQueryRetryEvent):
185-
previous_display_html=render_bqquery_retry_event_html(event)
186-
display.update_display(
187-
display.HTML(previous_display_html),
188-
display_id=current_display_id,
189-
)
171+
display_html=render_bqquery_retry_event_html(event)
172+
190173
elifisinstance(event, bigframes.core.events.BigQueryReceivedEvent):
191-
previous_display_html=render_bqquery_received_event_html(event)
192-
display.update_display(
193-
display.HTML(previous_display_html),
194-
display_id=current_display_id,
195-
)
174+
display_html=render_bqquery_received_event_html(event)
175+
196176
elifisinstance(event, bigframes.core.events.BigQueryFinishedEvent):
197-
previous_display_html=render_bqquery_finished_event_html(event)
198-
display.update_display(
199-
display.HTML(previous_display_html),
200-
display_id=current_display_id,
201-
)
202-
elifisinstance(event, bigframes.core.events.ExecutionFinished):
203-
ifprevious_display_html:
177+
display_html=render_bqquery_finished_event_html(event)
178+
179+
elifisinstance(event, bigframes.core.events.SessionClosed):
180+
display_html=f"Session {event.session_id} closed."
181+
182+
ifdisplay_html:
183+
ifcurrent_display_id:
204184
display.update_display(
205-
display.HTML(f"✅ Completed. {previous_display_html}"),
185+
display.HTML(display_html),
186+
display_id=current_display_id,
187+
)
188+
else:
189+
current_display_id=str(random.random())
190+
display.display(
191+
display.HTML(display_html),
206192
display_id=current_display_id,
207193
)
208194

209-
elifisinstance(event, bigframes.core.events.SessionClosed):
210-
display.update_display(
211-
display.HTML(f"Session {event.session_id} closed."),
212-
display_id=current_display_id,
213-
)
214195
elifprogress_bar=="terminal":
215-
ifisinstance(event, bigframes.core.events.ExecutionStarted):
216-
print("Starting execution.")
217-
elifisinstance(event, bigframes.core.events.BigQuerySentEvent):
196+
message=None
197+
198+
ifisinstance(event, bigframes.core.events.BigQuerySentEvent):
218199
message=render_bqquery_sent_event_plaintext(event)
219200
print(message)
220201
elifisinstance(event, bigframes.core.events.BigQueryRetryEvent):
@@ -226,8 +207,6 @@ def progress_callback(
226207
elifisinstance(event, bigframes.core.events.BigQueryFinishedEvent):
227208
message=render_bqquery_finished_event_plaintext(event)
228209
print(message)
229-
elifisinstance(event, bigframes.core.events.ExecutionFinished):
230-
print("Execution done.")
231210

232211

233212
defwait_for_job(job: GenericJob, progress_bar: Optional[str] =None):

0 commit comments

Comments
 (0)