Skip to content
This repository was archived by the owner on Apr 1, 2026. It is now read-only.

Commit a6600f8

Browse files
committed
update text
1 parent 1cf0dfd commit a6600f8

File tree

4 files changed

+29
-18
lines changed

4 files changed

+29
-18
lines changed

bigframes/core/events.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,11 @@ class Event:
7272
pass
7373

7474

75+
@dataclasses.dataclass(frozen=True)
76+
class SessionClosed(Event):
77+
session_id: str
78+
79+
7580
class ExecutionStarted(Event):
7681
pass
7782

bigframes/formatting_helpers.py

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ def progress_callback(
121121
):
122122
previous_display_html = ""
123123
current_display_id = str(random.random())
124-
current_display = display.HTML("Starting execution.")
124+
current_display = display.HTML("Starting.")
125125
display.display(
126126
current_display,
127127
display_id=current_display_id,
@@ -153,7 +153,12 @@ def progress_callback(
153153
)
154154
elif isinstance(event, bigframes.core.events.ExecutionFinished):
155155
display.update_display(
156-
display.HTML(f"{previous_display_html} Execution done."),
156+
display.HTML(f"✅ Completed. {previous_display_html}"),
157+
display_id=current_display_id,
158+
)
159+
elif isinstance(event, bigframes.core.events.SessionClosed):
160+
display.update_display(
161+
display.HTML(f"Session {event.session_id} closed."),
157162
display_id=current_display_id,
158163
)
159164
elif progress_bar == "terminal":
@@ -231,9 +236,7 @@ def render_query_references(
231236
request_id: Optional[str],
232237
) -> str:
233238
query_id = ""
234-
if job_id:
235-
query_id = f" with job ID {project_id}:{location}.{job_id}"
236-
elif request_id:
239+
if request_id and not job_id:
237240
query_id = f" with request ID {project_id}:{location}.{request_id}"
238241
return query_id
239242

@@ -250,7 +253,7 @@ def render_job_link_html(
250253
job_id=job_id,
251254
)
252255
if job_url:
253-
job_link = f' <a target="_blank" href="{job_url}">Open Job</a>'
256+
job_link = f' [<a target="_blank" href="{job_url}">Job {project_id}:{location}.{job_id} details</a>]'
254257
else:
255258
job_link = ""
256259
return job_link
@@ -268,7 +271,7 @@ def render_job_link_plaintext(
268271
job_id=job_id,
269272
)
270273
if job_url:
271-
job_link = f" Open Job: {job_url}"
274+
job_link = f" Job {project_id}:{location}.{job_id} details: {job_url}"
272275
else:
273276
job_link = ""
274277
return job_link
@@ -440,12 +443,12 @@ def render_bqquery_finished_event_html(
440443

441444
bytes_str = ""
442445
if event.total_bytes_processed is not None:
443-
bytes_str = f" {humanize.naturalsize(event.total_bytes_processed)} processed."
446+
bytes_str = f" {humanize.naturalsize(event.total_bytes_processed)}"
444447

445448
slot_time_str = ""
446449
if event.slot_millis is not None:
447450
slot_time = datetime.timedelta(milliseconds=event.slot_millis)
448-
slot_time_str = f" Slot time: {humanize.naturaldelta(slot_time)}."
451+
slot_time_str = f" in {humanize.naturaldelta(slot_time)} of slot time"
449452

450453
job_link = render_job_link_html(
451454
project_id=event.billing_project,
@@ -459,7 +462,7 @@ def render_bqquery_finished_event_html(
459462
request_id=None,
460463
)
461464
return f"""
462-
Query{query_id} finished.{bytes_str}{slot_time_str}{job_link}
465+
Query processed{bytes_str}{slot_time_str}{query_id}.{job_link}
463466
"""
464467

465468

bigframes/session/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,10 +377,14 @@ def close(self):
377377

378378
remote_function_session = getattr(self, "_function_session", None)
379379
if remote_function_session:
380-
self._function_session.clean_up(
380+
remote_function_session.clean_up(
381381
self.bqclient, self.cloudfunctionsclient, self.session_id
382382
)
383383

384+
publisher_session = getattr(self, "_publisher", None)
385+
if publisher_session:
386+
publisher_session.send(self.session_id)
387+
384388
@overload
385389
def read_gbq( # type: ignore[overload-overlap]
386390
self,

tests/unit/test_formatting_helpers.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ def test_render_bqquery_received_event_html():
146146
query_plan=[mock_plan_entry],
147147
)
148148
html = formatting_helpers.render_bqquery_received_event_html(event)
149-
assert "Query with job" in html
149+
assert "Query" in html
150150
assert "my-job-id" in html
151151
assert "is RUNNING" in html
152152
assert "<details>" in html
@@ -162,7 +162,7 @@ def test_render_bqquery_received_event_plaintext():
162162
query_plan=[],
163163
)
164164
text = formatting_helpers.render_bqquery_received_event_plaintext(event)
165-
assert "Query with job" in text
165+
assert "Query" in text
166166
assert "my-job-id" in text
167167
assert "is RUNNING" in text
168168
assert "Query Plan" not in text
@@ -177,11 +177,10 @@ def test_render_bqquery_finished_event_html():
177177
slot_millis=2000,
178178
)
179179
html = formatting_helpers.render_bqquery_finished_event_html(event)
180-
assert "Query with job" in html
180+
assert "Query" in html
181181
assert "my-job-id" in html
182-
assert "finished" in html
183-
assert "1.0 kB processed" in html
184-
assert "Slot time: 2 seconds" in html
182+
assert "processed 1.0 kB" in html
183+
assert "2 seconds of slot time" in html
185184

186185

187186
def test_render_bqquery_finished_event_plaintext():
@@ -193,7 +192,7 @@ def test_render_bqquery_finished_event_plaintext():
193192
slot_millis=2000,
194193
)
195194
text = formatting_helpers.render_bqquery_finished_event_plaintext(event)
196-
assert "Query with job" in text
195+
assert "Query" in text
197196
assert "my-job-id" in text
198197
assert "finished" in text
199198
assert "1.0 kB processed" in text

0 commit comments

Comments
 (0)