Highlights
Announcing user selections for charts! Use st.plotly_chart,st.altair_chart, andst.vega_lite_chartto make chart widgets for even more interactive apps.
Announcing user selections for dataframes. Get row and column selections from users with st.dataframe.
Introducing st.logoto add an image in the sidebar, above navigation.
Notable Changes
st.page_linksupports Material icons (#8593).
Anchor button for headers display inline at the end of headers for a more beautiful and consistent appearance (#8587).
SQLConnectionacceptsqueryas asqlalchemy.URL.createparameter so you can specify character sets (#8581). Thanks, LucianLiu6!
Other Changes
Bug fix: A fallback method was added for CSV downloads to increase browser compatibility (#8452, #8210).
Bug fix: Column config is deep-copied when cloned to prevent unintentional modifications (#8677).
Bug fix: st.data_editorrenders correctly when usingnum_rows=dynamicwith null values in added rows (#8640, #7458).
Bug fix: streamlit runwill display thelocalhostaddress when initializing Streamlit withserver.headless=true(#8647, #8629).
Bug fix: Scroll margin matches the new toolbar (app chrome) height (#8641, #8554).
Bug fix: Enum coercion is compatible with StrEnum (#8622, #8500). Thanks, 97k!
Bug fix: Focus is returned to chat input after clicking submit for a better mobile experience (#8637).
Bug fix: Internal parameter and view names for Altair charts are stabilized for better performance (#8628).
Bug fix: Typing was improved for st.query_params.update()andst.query_params.from_dict()(#8614, #8613). Thanks, Asaurus1!
Bug fix: The fullscreen button no longer appears for st.tableto prevent unwanted side scrolling (#8621, #2358).
Bug fix: Streamlit correctly clears stale elements when using st.rerun(#8599, #8360).
Bug fix: Custom components can be executed standalone for testing and scripting (#8620, #8606).
Bug fix: Plotly charts no longer render cached data when updated (#8191, #5902)
Plotly chart widths will not overflow its parent container when rendered in a bordered container (#8191, #8244).
Plotly charts using webglrender correctly on M1/M2 chipsets for macOS (#8191, #8169).
Plotly charts are sized correctly when rendered vertically adjacent (#8191, #7597).
Bug fix: Plotly charts retain their state when the app window is resized (#8191, #6324).
Bug fix: Plotly charts in st.tabsno longer flicker when changing tabs (#8191, #8575).
Bug fix: Plotly charts respect use_container_widthif this parameter is changed between reruns (#8191, #8576).