2025 release notes
This page contains release notes for Streamlit versions released in 2025. For the latest version of Streamlit, see Release notes.
Version 1.42.0
Release date: February 4, 2025
Highlights
- π©βπ» Introducing
st.login()
andst.logout()
to authenticate users with any OpenID Connect provider.
Notable Changes
- β£οΈ
st.table
supports Markdown (#8785, #10088). - β²οΈ
st.spinner
can show elapsed time withshow_time=True
(#6805, #10072). - π
st.image
supports Markdown in thecaption
parameter (#6808, #10075). - βοΈ
st.code
has aheight
parameter (#7418, #10080). - βοΈ Most charts default to using
use_container_width=True
(#10064). - βοΈ
SnowflakeConnection
was updated to match the current Snowflake API, which changes its handling of keyword arguments in some cases (#10122). - π Users can drag and drop dataframe columns to rearrange them (#8796, #10099).
Other Changes
- π Dataframes have column menus for users to sort and pin columns (#10206).
- π¦ Dataframes support categorical indices (#9647, #10195).
- πΈ Dataframes show a hover highlight on rows (#8096, #10104).
- β οΈ When dataframes have cell values that are inconsistent with their configured type, Streamlit shows a tooltip describing the error (#8253, #9899).
- β° If there is an existing asyncio event loop when a Streamlit app starts, the app will reuse it instead of creating a new one (#10164). Thanks, DeltaGa!
- πΌοΈ Streamlit recognizes
pyspark.sql.connect.dataframe.DataFrame
objects as dataframes (#9953, #9954). Thanks, OSalama! - π We've updated emoji validation for new emojis (#10149).
- π£ Material Symbols have been updated with the latest icons (#10247).
- π Visual tweaks and improvements (#8705, #9823, #10047, #10048, #10083, #10087, #10225).
- β
st.image
displays rounded corners for consistent design (#9999). - π© Bug fix: Top margin is applied correctly in
st.columns
(#10265, #10268). - π© Bug fix:
react-syntax-highlighter
is aliased to prevent rendering errors inst.code
(#10231, #10244). - π§Ή Bug fix: We improved error messages for
st.query_params
(#10111, #10237). - πͺ± Bug fix: Linting for
st.altair_chart
recognizes all Altair chart types (#10202). - βοΈ Bug fix:
st.dataframe
supports raw Arrow data (#5606, #10191). - π Bug fix:
st.navigation
andst.page_link
work when running in pure Python tests (#10163). - β οΈ Bug fix: Retries were added to prevent a possible race condition when files are removed while Streamlit is running (#10148).
- π½ Bug fix: When printing an app,
st.logo
will only print once (#10165, #10171). - π Bug fix: Material icons are marked to prevent translation (#10168, #10174).
- π» Bug fix:
st.vega_lite_chart
correctly caches and updates its data (#6689, #10125). - π¦ Bug fix: When a fragment ID is not found, Streamlit logs a warning but doesn't raise an error (#9921, #10130).
- π¦ Bug fix: The label on
st.expander
correctly fades when stale (#10085). - π¦ Bug fix:
st.date_input
provides better type hinting for its return value (#9477, #9620). Thanks, pranaybattu! - π Bug fix: In dataframes, small float values display their first significant figure instead of displaying as 0 (#10060).
- πΈοΈ Bug fix: When
rich
is installed, errors are only logged once. (#10097). - π¦ Bug fix:
st.text
preserves whitespace (#10055, #10062). - π¦ Bug fix: Dataframe
width
is not ignored whenheight
is changed (#9762, #10036). - π¦ Bug fix: Multi index columns correctly handle empty labels (#9749, #10035).
- π¦ Bug fix: Pinned columns respect
column_order
in when configured inst.dataframe
(#9997, #10034). - πͺ° Bug fix: Tooltips don't overflow to the left or right (#9288, #9452, #9983).
- πͺ³ Bug fix: Disabled feedback widgets correctly show their value (#10030).
- π·οΈ Bug fix: Widgets correctly submit values if a user edits the value and immediately clicks a button (#10007, #10018).
- π Bug fix: Some MIME types have been hardcoded to protect against browser misconfiguration (#10004, #10010).
- π Bug fix: Files that unnecessarily inflated Streamlit's installation size were removed (#10008, #10011).
- π Bug fix:
st.date_input
gives the correct type hint for thevalue
parameter (#10005, #10006). - πͺ² Bug fix:
st.write
passes tost.html
when._repr_html()
is present for an object (#9910). - π Bug fix:
st.html
preservestarget=_blank
if set in an HTML string (#9972, #9994).
Still have questions?
Our forums are full of helpful information and Streamlit experts.