Change8

1.58.0

Breaking Changes
📦 streamlitView on GitHub →
2 breaking6 features🐛 19 fixes🔧 8 symbols

Summary

This release introduces several new features, including st.pagination, custom script error handling, and parallel fragment execution. It also resolves numerous bugs related to OAuth, widget behavior, and security.

⚠️ Breaking Changes

  • Removed the deprecated 'add_rows' feature. Users relying on this must refactor their code.
  • Removed the langchain callback handler integration. Users relying on this integration must find an alternative.

Migration Steps

  1. Remove calls to the deprecated 'add_rows' feature.
  2. Remove reliance on the Streamlit langchain callback handler integration.

✨ New Features

  • Added custom script error handling via st.App.
  • Added st.pagination widget.
  • Added 'type' parameter to st.expander and st.status for compact style.
  • Added parallel=True dispatch to st.fragment.
  • Added API restrictions for parallel fragments.
  • Added 'streamlit skills' CLI command.

🐛 Bug Fixes

  • Fixed selectbox first item being hidden when 7 options were selected.
  • Deferred sys.modules eviction to script-run boundary.
  • Fixed OAuth MismatchingStateError regression introduced in 1.57.0.
  • Fixed programmatically closed popovers/expanders reopening on interaction with another widget.
  • Added support for symlinks in Starlette static file serving.
  • Synchronized URL when session_state updates query-param-bound widgets.
  • Added usedforsecurity=False to blake2b for FIPS compatibility.
  • Prevented stale auto-reruns from crashing apps in fragments.
  • Blocked javascript: and vbscript: URLs in markdown links.
  • Set Max-Age on st.login() cookies to restore 30-day persistence.
  • Fixed Vega-Lite chart tooltips appearing incorrectly in dialogs.
  • Added help icon for unsafe_allow_html=True in st.markdown.
  • Fixed discovery of script-level .streamlit/config.toml when st.App runs under uvicorn.
  • Added warning when st.button shortcut is browser-reserved.
  • Migrated provider tokens to joserfc for authentication fixes.
  • Fixed browser Back/Forward navigation issues for pages with Unicode URL paths.
  • Restored Starlette OAuth PKCE behavior.
  • Disabled 'Select all' functionality in multiselect when there are 1000 or more options.
  • Fixed accidental overscrolling in table, dataframe, and data_editor components.

Affected Symbols