Release notes
This page lists highlights, bug fixes, and known issues for the latest release of Streamlit. If you're looking for information about nightly releases or experimental features, see Pre-release features.
Upgrade Streamlit
Tip
To upgrade to the latest version of Streamlit, run:
pip install --upgrade streamlit
Version 1.41.0 (latest)
Release date: December 10, 2024
Notable Changes
- 🔲
st.metric
andst.columns
have a parameter to show an optional border (#9927, #9928). - 🎨 Text and background color in Markdown can use the "primary" color from the
theme.primaryColor
configuration option (#9676). - 🥶 You can freeze columns with column configuration to make them always visible when scrolling horizontally (#9535, #7078).
- 3️⃣ The
type
parameter for buttons accepts a new option,"tertiary"
(#9923). - 🚶♂️ Streamlit supports
pathlib.Path
objects everywhere you can use a string path (#9711, #9783). - ⏱️
st.date_input
andst.time_input
accept ISO formatted strings for initial values (#9753). - 💬
st.write_stream
accepts async generators, which it converts internally to sync generators (#8724, #8161). - 🪵 The
client.showErrorDetails
configuration option has additional values to show or hide more information (#9909). - 🔎 When Streamlit shows stack traces in the app for uncaught exceptions, internal code is omitted or reduced for easier debugging (#9913).
- 📈
st.line_chart
shows tooltips for the nearest point on hover (#9674). - 🌐
st.html
will attempt to convert non-string objects with._repr_html_()
before falling back tostr()
(#9877). - 🐍 Streamlit supports Python 3.13 and no longer supports Python 3.8 (#9635).
Other Changes
- 🔣 Material Symbols have been updated with the latest icons (#9813, #9810).
- 👽 Streamlit supports Watchdog version 6 (#9785). Thanks, RubenVanEldik.
- 🌀 Bug fix: Streamlit only shows cached function spinners on cache misses and doesn't show spinners for nested cached functions (#9956, #9951).
- 🔈 Bug fix: Streamlit's audio buffer handles channels better to correctly play audio recordings in Firefox (#9885, #9799).
- 🦊 Bug fix: URL patterns are matched correctly to allow Community Cloud developer tools to display correctly in Firefox (#9849, #9848).
- ☠️ Bug fix: Corrected a performance and alignment problem with containers (#9901, #9456, #9560).
- 👻 Bug fix:
st.rerun
will raise an error if an invalidscope
is passed to it (#9911, #9908). - 🦋 Bug fix: Dataframe toolbars show correctly in dialogs (#9897, #9461).
- 🦀 Bug fix:
LinkColumn
regex fordisplay_text
uses the correct URI decoding (#9895, #9893). - 🦎 Bug fix:
st.dataframe
has correct type hinting whenon_selection="ignore"
(#9898, #9669). - 🐌 Bug fix: Padding is applied consistently for wide and centered layout mode (#9882, #9707).
- 🕸️ Bug fix:
st.graphviz_chart
is displayed correctly whenuse_container_width=True
(#9867, #9866). - 🦗 Bug fix: The overloaded definitions of
st.pills
andst.segmented_control
use the correct selection-mode default (#9801). Thanks, RubenVanEldik! - 🦂 Bug fix:
st.text_area
(and other widgets) are correctly submitted in a form when usingCtrl+Enter
(#9847, #9841). - 🦟 Bug Fix:
st.write
rendersDeltaGenerator
objects withst.help
(#9828, #9827). - 🦠 Bug fix:
st.text_area
correctly matches the value in Session State when used with a key (#9829, #9825). - 🪰 Bug fix:
st.text_input
does not trigger a rerun when a user submits an unchanged value (#9826). - 🪳 Bug fix: Improved styling for
st.exception
to fix overflow and incorrect padding (#9818, #9817, #9816). - 🕷️ Bug fix: Large dataframe don't overflow and cover the dataframe toolbar in fullscreen mode (#9803, #9798).
- 🐞 Bug fix:
st.audio_input
shows the correct time on recording in time zones with a half-hour offset (#9791, #9631). - 🐝 Bug fix: In iOS,
st.number_input
shows a number pad instead of a keyboard when in focus (#9766, #9763). - 🐜 Bug fix: Widget keys containing hyphens are correctly added to HTML classes in the DOM with an
st-key-
prefix (#9793). - 🪲 Bug fix: Audio files created by
st.audio_input
include a timestamp to ensure unique file names (#9768). - 🐛 Bug fix: Double slash URL pathnames do not create a 301 redirect (#9754, #9690).
Older versions of Streamlit
- 2024 release notes
- 2023 release notes
- 2022 release notes
- 2021 release notes
- 2020 release notes
- 2019 release notes
Still have questions?
Our forums are full of helpful information and Streamlit experts.