1.53.0
Breaking Changes📦 streamlitView on GitHub →
⚠ 2 breaking✨ 35 features🐛 24 fixes🔧 17 symbols
Summary
This release introduces significant feature enhancements, including markdown support in metrics and sliders, configurable sidebar width, and improved chat input UI. It also addresses numerous bugs related to accessibility, component state management, and theme application.
⚠️ Breaking Changes
- The parameter `isolate_styles` in CCv2 components has been moved. Check usage related to Component Cloud v2 styling.
- Some external types used in CCv2 have been renamed. Review Component Cloud v2 integrations for necessary renames.
Migration Steps
- If you were using the `isolate_styles` parameter in Component Cloud v2 components, update its usage based on its new location.
- If you were relying on specific external type names in Component Cloud v2 integrations, check the release notes for renamed types and update your code accordingly.
✨ New Features
- Support for markdown in the `value` and `delta` parameters of `st.metric`.
- Default sidebar width is now configurable via configuration.
- Updated chat input UI with improved layout and styling.
- Added support for setting metric delta colors from the color palette in `st.metric`.
- Support configuring the `format` parameter in `st.metric`.
- Support for markdown in options for `st.select_slider`.
- The Streamlit logo now navigates to the home page when clicked.
- Added `max_upload_size` parameter to `st.file_uploader` and `st.chat_input`.
- Allow only adding or deleting rows in `st.data_editor`.
- Added `icon_position` support for button-like components.
- Added CSS Custom Properties for heading font sizes (headingFontSize1-6) and weights (headingFontWeight1-6).
- Enhanced `st.chat_input` file upload UI with improved file chips and retry functionality.
- Added icon support to dialogs.
- Allow dynamic changes to `selectbox` options when a `key` is provided.
- Added path tooltip on `st.json` value click.
- Support passing a list of pydantic objects as a dataframe-like structure.
- Updated AGENTS rules for better accessibility practices.
- Updated eslint rules for better accessibility support.
- Exposed OIDC tokens.
- Support pre-defined formats in the `format` parameter of `st.slider`.
- Added `on_release` callback to `st.cache_resource`.
- Added gaps and sizes (xxsmall, xsmall, xlarge, xxlarge) for `st.container`, `st.columns`, and `st.space`.
- Added new `session_duration_seconds_total` stats.
- Added session scoping to caches.
- Simplified chat input UI with a single-row layout for basic configurations.
- Added session-scoped connection support.
- Allow for optional `js`, `css`, and `html` parameters in CCv2 components.
- Allow dynamically changing `min`, `max`, and `step` in `st.number_input`.
- Added optional support for running Streamlit with Starlette.
- Allow OAuth `redirect_uri` to reference the current port.
- Make `st.logout` use `end_session_endpoint` if provided in OIDC config (V2).
- Added dynamic layout switching for `st.chat_input`.
- Added `SnowflakeCallersRightsConnection`.
- Allow dynamic changes to `multiselect` options when a `key` is provided.
- Added experimental ASGI app entry point for advanced server configuration.
🐛 Bug Fixes
- Improved width/height error message to specify "positive integer".
- Fixed unexpected shrinking of the logo when using top navigation.
- Disabled rendering of sidebar navigation when top navigation is enabled.
- Implemented transient spinners.
- Included default in the key for CCv2 instances.
- Ensured key down targeting works correctly for elements inside the Shadow DOM.
- Fixed a data editor regression when starting from an empty column.
- Prevented `st.dialog` from showing elements from a previous dialog instance.
- Fixed authentication-related issues caused by dependency updates.
- Fixed theme preference persistence across reloads.
- Handled undefined theme properties in CCv2.
- Ensured the `crossOrigin` attribute is properly set for CCv2 stylesheets.
- Fixed the spinner time text alignment.
- Fixed tooltip text leaking newlines when present in help text.
- Ensured anchor links in Markdown headers are accessible via keyboard.
- Ensured help Tooltips are accessible.
- Fixed `st.html` handling of list indentation.
- Fixed `st.selectbox` not restoring initial value when set via session state.
- Fixed Altair charts using `vconcat` and `hconcat`.
- Fixed custom theme application when embedded using `embed_options`.
- Improved precision for `st.number_input`.
- Added ability to clear transient nodes when the script is run.
- Corrected `justifyContents` to `justifyContent` in Icon styled-components.
- Fixed upload button functionality after drag-drop and delete operations in `st.chat_input`.