Describe the bug
I have a calculation that takes some time and I want to stream the intermediate results of the calculation to a dataframe. When running the calculation the dataframe only correctly streams the first row. Further rows are only shown when clicking on the dataframe.
I tried various configurations with row_count, interactive, ... but none seemed to work.
Edit: Streaming to a markdown works just fine.
Have you searched existing issues? 🔎
Reproduction
import time
import gradio as gr
import pandas as pd
def stream_dataframe(n_steps: int = 5):
rows = [
{"Step": i + 1, "Value": f"Result {i + 1}"} for i in range(n_steps)
]
for i in range(n_steps):
time.sleep(0.5) # Simulate some processing time
yield pd.DataFrame(rows[: i + 1])
with gr.Blocks(title="Streaming Dataframe MWE") as demo:
result_table = gr.Dataframe(
row_count=(1, "dynamic"),
interactive=True,
label="Results"
)
run_btn = gr.Button("Run")
run_btn.click(stream_dataframe, outputs=[result_table])
if __name__ == "__main__":
demo.launch()
Screenshot
Logs
System Info
Gradio Environment Information:
------------------------------
Operating System: Linux
gradio version: 6.20.0
gradio_client version: 2.5.0
------------------------------------------------
gradio dependencies in your environment:
anyio: 4.14.2
audioop-lts is not installed.
brotli: 1.2.0
fastapi: 0.139.0
gradio-client: 2.5.0
groovy: 0.1.2
hf-gradio: 0.4.1
httpx: 0.28.1
huggingface-hub: 1.23.0
jinja2: 3.1.6
markupsafe: 3.0.3
numpy: 2.5.1
orjson: 3.11.9
packaging: 26.2
pandas: 3.0.3
pillow: 12.3.0
pydantic: 2.13.4
pydub: 0.25.1
python-multipart: 0.0.32
pytz: 2026.2
pyyaml: 6.0.3
safehttpx: 0.1.7
semantic-version: 2.10.0
starlette: 1.3.1
tomlkit: 0.14.0
typer: 0.26.8
typing-extensions: 4.15.0
uvicorn: 0.51.0
mcp is not installed.
pydantic: 2.13.4
authlib is not installed.
itsdangerous is not installed.
gradio_client dependencies in your environment:
fsspec: 2026.6.0
httpx: 0.28.1
huggingface-hub: 1.23.0
packaging: 26.2
typing-extensions: 4.15.0
Severity
Blocking usage of gradio
Describe the bug
I have a calculation that takes some time and I want to stream the intermediate results of the calculation to a dataframe. When running the calculation the dataframe only correctly streams the first row. Further rows are only shown when clicking on the dataframe.
I tried various configurations with row_count, interactive, ... but none seemed to work.
Edit: Streaming to a markdown works just fine.
Have you searched existing issues? 🔎
Reproduction
Screenshot
Logs
System Info
Severity
Blocking usage of gradio