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:
Terminal
pip install --upgrade streamlit
Version 1.62.0 (latest)
Release date: August 19, 2026
Highlights
- β¨ Introducing client-side validation (
validate) and specialized email, URL, phone, and search types (type) forst.text_input, with smart defaults for validation, autofill, mobile keyboards, icons, and placeholders (#15752, #15714, #8790, #7348, #16385, #6704, #10744). - π§© Introducing the new
wrapparameter, which lets you choose whether horizontal layouts, widgets, and labels wrap or remain on one scrollable or truncated row:st.columnsand horizontalst.containerlayouts can remain on one horizontally scrollable row withwrap=False(#16131, #16367, #5003, #2313, #16484, #9544, #12582).st.buttonand other button-like controls,st.checkbox, andst.togglecan keep labels on one line when desired (#16325, #16470).st.multiselectcan keep selected chips on one horizontally scrollable row (#16509, #12644).
- π Announcing the public
streamlit.typingnamespace for stable imports of Streamlit-owned types, including fully typed selection and data editor state values (#16094, #16275, #16295, #7801, #16351, #16471).
Notable Changes
- π¨ Date and datetime inputs have a more accessible, keyboard-friendly editing experience:
st.date_inputnow uses segmented fields and an accessible calendar for single dates and ranges (#16460, #7865, #8556, #12699, #9667, #7100, #4941, #9946).st.datetime_inputnow offers segmented date and time fields with an integrated calendar and time editor (#16501, #16502).- Bug fix: Date and datetime values stay within their input borders in narrow containers, and calendars indicate today's date (#16565).
- π You can configure chart categorical, sequential, and diverging colors separately for light, dark, and sidebar themes (#16357, #16355).
- π€ Theme font-weight settings support increments of 50 for finer typography control (#16396, #16354).
- π» The long-deprecated
st.cachecommand has been removed; usest.cache_dataorst.cache_resourceinstead (#15787). - β οΈ Passing Matplotlib
savefigkeyword arguments tost.pyplotis deprecated; save the figure directly and display it withst.imageinstead (#16450). - π» Calling
st.pyplotwithout an explicit figure is no longer supported (#16464).
Other Changes
- πͺ When Streamlit raises an uncaught error during local development, the error display can offer to install Streamlit's agent skills for supported coding agents (#15693).
- π
st.tableuses a 14-pixel font size consistent with other Streamlit widgets (#16397, #16389). - π¨ Invalid enum-like parameter values consistently raise
StreamlitValueErrorwhile preserving compatibility with existing specialized exception classes (#16422). - π¦ Streamlit no longer requires the
tenacitydependency for SQL and Snowflake connection retries (#16497). - π Bug fix:
st.popoverkeeps its contents visible and scrollable in narrow or embedded viewports (#16173, #9340). - π¦ Bug fix:
st.pyplotsupports SVG output throughformat="svg"(#16283, #11489). - πͺ² Bug fix:
runner.cacheHashSeedlets apps change the sample used to hash large pandas, Polars, and NumPy objects without invalidating existing caches by default (#16284, #14622). - π Bug fix: Heading anchors update when heading text changes during a rerun (#16286, #8793).
- π Bug fix: Altair charts reconstructed with
alt.Chart.from_jsonpreserve their inline datasets (#16288, #6269). - π Bug fix: Nested
st.fragmentfunctions with queued periodic reruns no longer execute twice and create duplicate element IDs (#16314, #10719). - π·οΈ Bug fix: Multiple Streamlit servers correctly advance to the next available port on Windows (#16315, #16296).
- πͺ³ Bug fix: Updating
st.statusthrough a container created outside a fragment no longer corrupts the app's element tree (#16316, #16281). - πͺ° Bug fix: Streamlit falls back to MD5 for element IDs, cache keys, and file watching on FIPS-enabled systems whose BLAKE2b implementation rejects custom digest sizes (#16324, #15148).
- π¦ Bug fix: Embedded Streamlit-in-Snowflake apps can receive same-window authentication messages while retaining host-message spoofing protections (#16327).
- π¦ Bug fix: Streamlit remains compatible with newer Starlette gzip middleware while preserving correct media, download, and range-response handling (#16342, #16344, #16341, #16462).
- π¦ Bug fix: Malformed WebSocket messages are rejected without exposing tracebacks or absolute server paths to the browser (#16392, #16391).
- π¦ Bug fix: The startup warning for
server.enableCORS=falseaccurately describes CORS and XSRF behavior instead of claiming the setting is overridden (#16393, #16390). - πΈοΈ Bug fix: Derived code and dataframe-header background colors respect custom theme background settings (#16401, #16398).
- π Bug fix: Timelike
st.slidervalues are validated against the frontend's safe numeric range instead of silently changing (#16475, #16474). - π¦ Bug fix:
st.toastnotifications remain visible when immediately followed byst.rerun()(#16498, #7740). - π¦ Bug fix:
st.color_pickerremains interactive inside dialogs (#16541, #16538). - π½ Bug fix:
st.metricrestores its sparkline after chart data becomes empty and is populated again (#16543, #16539).
Older versions of Streamlit
- 2026 release notes
- 2025 release notes
- 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.