What's Changed
Breaking Changes 🛠
- [chore] Make /_stcore/metrics memory stats cheap by default by @lukasmasuch in #15472
- [chore] Remove deprecated Snowpark connection by @lukasmasuch in #15784
New Features 🎉
- [feature] Add
ButtonColumntost.column_configby @lukasmasuch in #14544 st.set_page_config- Add"locked"option forinitial_sidebar_stateby @mayagbarnes in #15459- [feature] Add list support to programmatic secrets by @lukasmasuch in #15491
- [feature] Recommend installing skills on app startup by @lukasmasuch in #15437
- [feature] Add AppTest support for download_button and image by @lukasmasuch in #15528
- [feature] Add column statistics submenu to
st.dataframeby @lukasmasuch in #14307 - [feature] Add
streamlit docs <command>lookup by @lukasmasuch in #15547 - [feat] Add MarkdownColumn for st.dataframe and st.data_editor by @lukasmasuch in #13931
- [feature] Add
App.run()to launch viapython app.pyoruv run app.pyby @lukasmasuch in #15563 - [feature] Support pasting files into st.chat_input by @lukasmasuch in #15558
- [feature] Add
server.xsrfCookieSameSiteconfig option by @lukasmasuch in #15634 - [feat] Add mermaid diagram support in st.markdown by @lukasmasuch in #14022
- [feature] Support OpenAI Responses API streams in st.write_stream by @lukasmasuch in #15559
- [fragmentOutsideWrites][feature] Reset outside wrappers across fragment reruns by @sfc-gh-lwilby-1 in #15620
- [fragmentOutsideWrites][feature] Allow fragments to write into outside containers by @sfc-gh-lwilby-1 in #15623
- [feature] Add per-user analytics on metrics endpoint by @lukasmasuch in #15557
- [feature] Add skeleton element for loading placeholder UI by @lukasmasuch in #15169
- [feat] Add
anchorsparameter tost.markdownby @sfc-gh-dbyttow in #15722 - [feature] Add resolution parameter to st.camera_input by @sfc-gh-lwilby-1 in #15766
- [feature] Add in-app install-skills nudge toast by @sfc-gh-nbellante in #15473
- [feature] Add
submit_modeparameter tost.chat_inputby @lukasmasuch in #14344 - [feature] Add persist_state widget parameter by @sfc-gh-lwilby-1 in #15645
Bug Fixes 🐛
- [fix] Metrics endpoint error with SQLAlchemy connections by @lukasmasuch in #15334
- [fix] TypeError in _run_with_thread_state when using @st.fragment(run_every=...) by @sfc-gh-lwilby-1 in #15376
- [fix] P-mode PIL palette hashing to prevent hash collisions by @sfc-gh-lwilby-1 in #15397
- [fix] Use named Snowflake connection from config file by @lukasmasuch in #15382
- [fix] Bind IPv6 dual-stack wildcard for default server address by @lukasmasuch in #15400
- [fix] Clear stale and invalid auth cookies on login by @lukasmasuch in #15420
- Fix: sync widgetMgr to fix tab.open lazy loading by @mayagbarnes in #15460
- [fix] Discover installed CCv2 components in AppTest by @lukasmasuch in #15488
- [fix] Prevent resetting page title on rerun by @lukasmasuch in #15527
- [fix] Accept formatted labels in AppTest format_func widgets by @lukasmasuch in #15564
- Fix:
st.pills&st.segmented_controlcallback by @mayagbarnes in #15522 - [fix] Default to polling file watcher in WSL by @lukasmasuch in #15562
- [fix] Prevent "Missing Submit Button" flash on app load by @lukasmasuch in #15561
- [fix] Explain multi-replica cause in invalid session upload error by @lukasmasuch in #15635
- [fix] Keep selectbox selection when format_func depends on object identity by @sfc-gh-lwilby-1 in #15639
- [fix] Prevent ESC from clearing st.multiselect selection by @sfc-gh-lwilby-1 in #15646
- [fix] Validate StreamlitPage source matches registered page (#10572) by @sfc-gh-dbyttow in #15721
- [fix] Ignore dataframe Ctrl+F shortcut when search is disabled by @lukasmasuch in #15764
- [fix] Prevent line wrapping in dataframe column menu by @lukasmasuch in #15772
Other Changes
- [chore] Update emojis/material icons by @github-actions[bot] in #15396
- [chore] Release v1.58.0 by @github-actions[bot] in #15361
- [chore] Update emojis/material icons by @github-actions[bot] in #15475
- [perf] VegaLiteChart: Use Vega's native resize API for faster resizing by @lukasmasuch in #15302
- [docs] Add parallel fragment guidance to developing-with-streamlit skill by @sfc-gh-lwilby-1 in #15503
- [docs] Remove experimental warning from App docstring by @lukasmasuch in #15536
- [chore] Redesign pagination widget selected state styling by @lukasmasuch in #15550
- [chore] Update emojis/material icons by @github-actions[bot] in #15587
- [chore] Remove deprecated st.bokeh_chart command by @lukasmasuch in #15636
- [chore] Update emojis/material icons by @github-actions[bot] in #15665
- [docs] Add API reference to developing-with-streamlit skill by @lukasmasuch in #15539
Basewebremoval fixes by @mayagbarnes in #15737- [chore] Update emojis/material icons by @github-actions[bot] in #15758
New Contributors
- @sfc-gh-lmasuch made their first contribution in #15633
- @sfc-gh-dbyttow made their first contribution in #15721
- @HXRIkumar made their first contribution in #15441
Full Changelog: 1.58.0...1.59.0