Migrating to Streamlit 1.57.0
Version 1.57.0 introduces 4 breaking changes. This guide details how to update your code.
Released: 4/28/2026
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
plotly_chartvega_lite_chart_get_websocket_headersst.menu_buttonst.popoverAppTestst.alertst.Appst.bottomst.dataframest.data_editorst.radiost.text_areaBreaking Changes
●Issue #1
Starlette is now the default server; Tornado has been removed. Users relying on Tornado must switch to Starlette or another supported server.
●Issue #2
Deprecated keyword arguments have been removed from `plotly_chart` and `vega_lite_chart`.
●Issue #3
The internal function `_get_websocket_headers` has been removed.
●Issue #4
Direct conversion from polars to arrow now bypasses pandas.
Migration Steps
- 1If your application relied on Tornado as the server, you must update your configuration to use Starlette or another supported server.
- 2Review calls to `plotly_chart` and `vega_lite_chart` to remove any previously deprecated keyword arguments.
Release Summary
This release switches the default server to Starlette, removes Tornado, and introduces several new features like animated loading text (:shimmer[]) and the st.bottom container. Numerous bug fixes address compatibility with pandas 3.0+ and improve widget behavior.
Need More Details?
View the full release notes and all changes for Streamlit 1.57.0.
View Full Changelog