Streamlit Versions Save

Streamlit โ€” A faster way to build and share data apps.

1.28.0

6 months ago

What's Changed

Breaking Changes ๐Ÿ› 

New Features ๐ŸŽ‰

Bug Fixes ๐Ÿ›

Other Changes

New Contributors

Full Changelog: https://github.com/streamlit/streamlit/compare/1.27.2...1.28.0

1.27.0

7 months ago

What's Changed

Highlights

  • โœจ Introducing st.scatter_chart โ€” a new, simple chart element to build scatter charts Streamlit-y fast and easy! See our documentation.
  • ๐Ÿ”— Introducing st.link_button! Want to open an external link in a new tab with a bit more pizazz than a plain-text link? Check out our documentation to see how.
  • ๐Ÿƒ Announcing the general availability of st.rerun, a command to interrupt your script and trigger an immediate rerun.

Notable Changes

Other Changes

  • ๐Ÿ› Bug fix: st.multiselect now shows a correct message when no result matches a userโ€™s search (#7205, #7116).
  • ๐Ÿชฒ Bug fix: st.experimental_user now defaults to [email protected] (#7219, #7215).
  • ๐Ÿœ Bug fix: st.slider labels donโ€™t overlap when small ranges are selected (#7221, #3385).
  • ๐Ÿ Bug fix: Type-checking correctly identifies all string types to avoid hashing errors (#7255, #6455).
  • ๐Ÿž Bug fix: JSON is parsed with JSON5 to avoid errors from null values when using st.pydeck_chart (#7256, #5799).
  • ๐Ÿ•ท๏ธ Bug fix: Identical widgets on different pages are correctly interpreted by Streamlit as distinct (#7264, #6146).
  • ๐Ÿฆ‹ Bug fix: Visual tweaks to widgets for responsive behavior (#7145).
  • ๐Ÿชณ Bug fix: SVGs are accurately displayed (#7183, #3882).
  • ๐Ÿชฐ Bug fix: st.video correctly updates with changes to start_time (#7257, #7126).
  • ๐Ÿฆ  Bug fix: Additional error handling was added to st.session_state (#7280, #7206).
  • ๐ŸฆŸ Bug fix: st.map correctly refreshes with new data (#7307, #7294).
  • ๐Ÿฆ‚ Bug fix: The decorative app header line is no longer covered by the sidebar (#7297, #6264).
  • ๐Ÿฆ— Bug fix: st.code no longer triggers a CachedStFunctionWarning (#7306, #7055).
  • ๐Ÿ•ธ๏ธ Bug fix: st.download_button no longer resets with different data (#7316, #7308).
  • ๐ŸŒ Bug fix: Widgets consistently recognize user interaction while a page is still running, with or without fastRerun enabled (#7283, #6643).
  • ๐ŸฆŽ Bug fix: st.tabs was improved to better handle and render conditionally appearing tabs (#7287, #7310, #5454, #7040).

New Contributors

Full Changelog: https://github.com/streamlit/streamlit/compare/1.26.0...1.27.0

1.26.0

7 months ago

What's Changed

Highlights

  • ๐Ÿค– Introducing st.status to display output from long-running processes and external API calls. Works great with st.chat_message! See our documentation for how to use this feature.
  • ๐Ÿšฅย Introducing st.toggle โ€” an alternative to st.checkbox when you need an on/off switch.

Notable Changes

Other Changes

  • ๐Ÿž Bug fix: Toast messages are no longer blocked by st.chat_input (#7204, #7115).
  • ๐Ÿ•ธ๏ธย Bug fix: Widget IDs are now stable to prevent inconsistent statefulness (#7003).
  • ๐ŸฆŸย Bug fix: Browser autofill is correctly recognized within forms now (#7150, #7101, #7084).
  • ๐Ÿชฑ Bug fix: st.file_uploader no longer causes session state to reset when a websocket connection is dropped and reconnected (#7149, #7025).
  • ๐ŸŽ๏ธ Bug fix: Pydeck JSON data is cached for improved performance (#7113, #5532).
  • ๐Ÿฆ‹ Bug fix: st.chat_input no longer submits prematurely while typing with an input method editor (#6993).
  • ๐Ÿž Bug fix: Label backgrounds for st.tabs are now transparent (#7070, #5707).
  • ๐Ÿ Bug fix: Page width is no longer ignored when using the help parameter in st.button (#7033, #6161).
  • ๐Ÿœ Bug fix: Tweaked Altair color specification for improved visibility in dark mode (#7061, #3343).
  • ๐Ÿชฒย Bug fix: st.chat_message can correctly use local images as avatars (#7130).
  • ๐Ÿ› Bug fix: Specified that MD5 is not used for security (#7122, #7120).
  • ๐Ÿช„ Bug fix: Async function docstrings are ignored by Streamlit magic (#7143, #7137).

New Contributors

Full Changelog: https://github.com/streamlit/streamlit/compare/1.25.0...1.26.0

1.25.0

9 months ago

What's Changed

Highlights

  • ๐Ÿž Introducing st.toast โ€” a command to briefly show toast messages to users in the bottom-right corner of apps. See our documentation on how to use this feature.

Notable Changes

  • ๐Ÿ—บ๏ธ st.map now has parameters for latitude, longitude, color, and size to customize data points (#6896).
  • ๐Ÿšฉ st.multiselect supports setting placeholders and specifying the maximum number of selections via the placeholder and max_selections keyword-only arguments, respectively (#6901, #4750). Thanks, @fhiroki!
  • ๐Ÿ“… Customize the date format for st.date_input with the format parameter (#6974, #5234).
  • โ†ฉ๏ธ Forms can now be submitted with Enter/Return while inside st.text_input, st.number_input, or st.text_area (#6911, #3790).
  • ๐Ÿข The app menu icon in the upper-right corner of apps has been changed from "โ˜ฐ" to "โ‹ฎ" (#6947).

Other Changes

  • โ›“๏ธ Minimum required versions increased for multiple Python dependencies, including numpy>=1.19.3 and pandas>=1.3.0 (#6802).
  • ๐Ÿ›ก๏ธ protobufjs was bumped from 7.2.1 to 7.2.4 (#6959).
  • โœจ Visual design tweaks to Streamlit's input widgets (#6944).
  • ๐Ÿฆ‹ Bug fix: st.slider now accepts general number types like numpy.int64 instead of just int and float (#6816, #6815). Thanks, @milliams!
  • ๐Ÿœ Bug fix: Data labels for st.slider and st.select_slider no longer overflow when inside st.expander (#6828, #6297).
  • ๐Ÿ› Bug fix: Elements no longer re-render from scratch with each rerun (#6923, #6920).
  • ๐Ÿž Bug fix: st.data_editor hashes styler objects correctly for stability across reruns (#6815, #6898).
  • ๐Ÿ Bug fix: Fixed the padding for embedded apps using st.chat_input to prevent messages being cutoff (#6979).

Full Changelog: https://github.com/streamlit/streamlit/compare/1.24.0...1.25.0

1.24.1

9 months ago

1.24.0

10 months ago

What's Changed

Highlights

  • ๐Ÿ’ฌ Introducing st.chat_message and st.chat_input โ€” two new chat elements that let you build conversational apps. Learn how to use these features in your LLM-powered chat apps in our tutorial.
  • ๐Ÿ’พ Streamlit's caching decorators now allow you to customize Streamlit's hashing of input parameters with the keyword-only argument hash_funcs.

Notable Changes

  • ๐Ÿ We've deprecated support for Python 3.7 in the core library and Streamlit Community Cloud (#6868).
  • ๐Ÿ“… st.cache_data and st.cache_resource can hash timezone-aware datetime objects (#6812, #6690, #5110).

Other Changes

  • โœจ Visual design tweaks to Streamlit's input widgets (#6817).
  • ๐Ÿ› Bug fix: st.write pretty-prints dataclasses using st.help (#6750).
  • ๐Ÿชฒ Bug fix: st.button's height is consistent with that of other widgets (#6738).
  • ๐Ÿœ Bug fix: Upgraded the react-range frontend dependency to fix the memory usage of sliders (#6764, #5436). Thanks @wolfd!
  • ๐Ÿ Bug fix: Pydantic validators no longer result in exceptions on app reruns (#6664, #3218).
  • ๐Ÿž Bug fix: streamlit config show honors newlines (#6758, #2868).
  • ๐Ÿชฐ Bug fix: Fixed a race condition to ensure Streamlit reruns the latest code when the file changes (#6884).
  • ๐Ÿฆ‹ Bug fix: Apps no longer rerun when users click anchor links (#6834, #6500).
  • ๐Ÿ•ธ๏ธ Bug fix: Added robust out-of-bounds checks for min_value and max_value in st.number_input (#6847, #6797).

Full Changelog: https://github.com/streamlit/streamlit/compare/1.23.1...1.24.0

1.23.1

11 months ago

Highlights

  • โœ‚๏ธ Announcing the general availability of st.data_editor, a widget that allows you to edit DataFrames and many other data structures in a table-like UI. Breaking change: the data editorโ€™s representation used in st.session_state was altered. Find out more about the new format in Access edited data.
  • โš™๏ธ Introducing the Column configuration API with a suite of methods to configure the display and editing behavior of st.dataframe and st.data_editor columns (e.g. their title, visibility, type, or format). Keep an eye out for a detailed blog post and in-depth documentation upcoming in the next two weeks.
  • ๐Ÿ”Œ Learn to use st.experimental_connection to create and manage data connections in your apps with the new Connecting to data docs and video tutorial.

Notable Changes

  • ๐Ÿ“Š Streamlit now supports Protobuf 4 and Altair 5 (#6215, #6618, #5626, #6622).
  • โ˜Ž๏ธ st.dataframe and st.data_editor can hide index columns with hide_index, specify the display order of columns with column_order, and disable editing for individual columns with the disabled parameter.
  • โฑ๏ธ The ttl parameter in st.cache_data and st.cache_resource accepts formatted strings, so you can simply say ttl="30d", ttl="1h30m" and any other combination of w, d, h, m, s supported by Pandasโ€™s Timedelta constructor (#6560).
  • ๐Ÿ“‚ st.file_uploader now interprets the type parameter more accurately. For example, "jpg" or ".jpg" now accept both "jpg" and "jpeg" extensions. This functionality has also been extended to "mpeg/mpg", "tiff/tif", "html/htm", and "mpeg4/mp4".
  • ๐Ÿคซ The new global.disableWidgetStateDuplicationWarning configuration option allows the silencing of warnings triggered by setting widget default values and keyed session state values concurrently (#3605, #6640). Thanks, @antonAce!

Other Changes

  • ๐Ÿƒโ€โ™€๏ธImproved startup time by lazy loading some dependencies (#6531).
  • ๐Ÿ‘‹ Removed st.beta_* and st.experimental_show due to deprecation and low-use (#6558)
  • ๐Ÿš€ Further improvements to st.dataframe and st.data_editor:
    • Improved editing on mobile devices for the data editor (#6548).
    • All editable columns have an icon in their column header and support tooltips (#6550, #6561).
    • Enable editing for columns containing datetime, date, or time values (#6025).
    • New input validation options for columns in the data editor, such as max_chars and validate for text columns, and min_value, max_value and step for number columns (#6563).
    • Improved type parsing capabilities in the data editor (#6551).
    • Unified missing values to None in returned data structures (#6544).
    • A warning is shown in cells when integers exceed the maximum safe value of (2^53) -1 (#6311, #6549).
    • Prevented editing the sessions state by showing a warning (#6634).
    • Fixed issues with list columns sometimes breaking the frontend (#6644).
    • Fixed a display issue with index columns using category dtype (#6680, #6598).
    • Fixed an issue that prevented a rerun when adding empty rows (#6598).
    • Unified the behavior between st.data_editor and st.dataframe related to auto-hiding the index column(s) based on the input data (#6659, #6598)
  • ๐Ÿ›ก๏ธ Streamlitโ€™s Security Policy can be found in its GitHub repository (#6666).
  • ๐Ÿค Documented the integer size limit for st.number_input and st.slider (#6724).
  • ๐Ÿ The majority of Streamlit's Python dependencies have set a maximum allowable version, with the standard upper limit set to the next major version, but not inclusive of it (#6691).
  • ๐Ÿ’… UI design improvements to in-app modals (#6688).
  • ๐Ÿž Bug fix: st.date_input's date selector is equally visible in dark mode (#6072, #6630).
  • ๐Ÿœ Bug fix: the sidebar navigation expansion indicator in multipage apps is restored (#6731).
  • ๐Ÿ› Bug fix: The docstring and exception message for st.set_page_config have been updated to clarify that this command can be invoked once for each page within a multipage app, rather than once per entire app (#6594).
  • ๐Ÿ Bug fix: st.json no longer collapses multiple spaces in both keys and values with single space when rendered (#6657, #6663).