You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/deploy/community-cloud/share-your-app/embed-your-app.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,7 +87,7 @@ The only noteworthy differences between the methods is that iframing allows you
87
87
88
88
When [Embedding with iframes](#embedding-with-iframes), Streamlit allows you to specify one or more instances of the `?embed_options` query parameter for granular control over the embedding behavior.
89
89
90
-
Both `?embed` and `?embed_options` are invisible to [`st.query_params`](/develop/api-reference/caching-and-state/st.query_params) and its precursors, [`st.experimental_get_query_params`](/develop/api-reference/caching-and-state/st.experimental_get_query_params) and [`st.experimental_set_query_params`](/develop/api-reference/caching-and-state/st.experimental_set_query_params). You can't get or set their values.
90
+
Both `?embed` and `?embed_options` are invisible to [`st.query_params`](/develop/api-reference/caching-and-state/st.query_params). You can't get or set their values.
91
91
92
92
The supported values for `?embed_options` are listed below:
Copy file name to clipboardExpand all lines: content/develop/api-reference/caching-and-state/experimental_get_query_params.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,4 +5,4 @@ description: st.experimental_get_query_params returns query parameters currently
5
5
keywords: experimental_get_query_params, query parameters, url, browser, deprecated, experimental, get
6
6
---
7
7
8
-
<Autofunctionfunction="streamlit.experimental_get_query_params"deprecated={true}deprecatedText="<code>st.experimental_get_query_params</code> was deprecated in version 1.30.0. Use <a href='/develop/api-reference/caching-and-state/st.query_params'><code>st.query_params</code></a> instead." />
8
+
<Autofunctionfunction="streamlit.experimental_get_query_params"deprecated={true}deprecatedText="<code>st.experimental_get_query_params</code> was deprecated in version 1.30.0 and removed in version 1.54.0. Use <a href='/develop/api-reference/caching-and-state/st.query_params'><code>st.query_params</code></a> instead." />
Copy file name to clipboardExpand all lines: content/develop/api-reference/caching-and-state/experimental_set_query_params.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,4 +5,4 @@ description: st.experimental_set_query_params sets query parameters shown in the
5
5
keywords: experimental_set_query_params, query parameters, url, browser, deprecated, experimental, set
6
6
---
7
7
8
-
<Autofunctionfunction="streamlit.experimental_set_query_params"deprecated={true}deprecatedText="<code>st.experimental_set_query_params</code> was deprecated in version 1.30.0. Use <a href='/develop/api-reference/caching-and-state/st.query_params'><code>st.query_params</code></a> instead." />
8
+
<Autofunctionfunction="streamlit.experimental_set_query_params"deprecated={true}deprecatedText="<code>st.experimental_set_query_params</code> was deprecated in version 1.30.0 and removed in version 1.54.0. Use <a href='/develop/api-reference/caching-and-state/st.query_params'><code>st.query_params</code></a> instead." />
Copy file name to clipboardExpand all lines: content/develop/concepts/architecture/widget-behavior.md
+4-5Lines changed: 4 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,16 +28,15 @@ The last three points (widget identity and widget deletion) are the most relevan
28
28
29
29
**Recent changes to widget behavior**
30
30
31
-
From v1.46.0 through v1.52.0, significant changes to widget statefulness were introduced:
31
+
From v1.46.0 through v1.54.0, significant changes to widget statefulness were introduced:
32
32
33
33
-**v1.46.0**: When navigating between pages, widget keys in `st.session_state` are deleted at the beginning of the new page's script run instead of the end.
34
-
-**v1.50.0-1.52.0**: When a key is provided, the widget identity is determined by the key and select parameters (min/max and options). This is a transitional period during implementation until widgets are fully converted to key-only identity.
35
-
-**v1.53.0**: `st.selectbox`, `st.multiselect`, and `st.number_input` are fully converted to key-based identity, but other widgets still use `options` and `min/max` parameters to determine widget identity.
34
+
-**v1.50.0-1.52.0**: When a key is provided, the widget identity is determined by the key and parameters that can invalidate the widget's state: `min`/`max`, `options`, `format`, `step`, `selection_mode`, and `accept_new_options`. This is a transitional period during implementation until widgets are fully converted to key-only identity. Only `st.dataframe` and elements with selection modes, like charts, are not yet converted to key-based identity.
35
+
-**v1.53.0**: `st.number_input` is fully converted to key-based identity. In addition to their keys, `st.selectbox` only depends on `accept_new_options`, and `st.multiselect` only depends on `accept_new_options` and `max_selections`.
36
+
-**v1.54.0**: `st.select_slider` and `st.radio` are fully converted to key-based identity. `st.date_input` and `st.datetime_input` aren't dependent on `min`/`max` but are still dependent on `format` and `step`. `st.dataframe` and elements with selection modes, like charts, use key-based identity, but are still dependent on `selection_mode`.
36
37
37
38
These changes affect how widgets maintain state across page navigation and parameter changes. To review which widgets have been converted to key-based identity, see the release notes for [v1.50.0](https://docs.streamlit.io/release-notes/v1.50.0), [v1.51.0](https://docs.streamlit.io/release-notes/v1.51.0), and [v1.52.0](https://docs.streamlit.io/release-notes/v1.52.0).
38
39
39
-
As of v1.52.0, the following widgets **haven't** been converted to key-based identity: `st.data_editor` and elements with selection modes, like `st.dataframe` and charts.
Copy file name to clipboardExpand all lines: content/develop/quick-references/release-notes/2026.md
+46Lines changed: 46 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,52 @@ keywords: changelog, release notes, version history
9
9
10
10
This page contains release notes for Streamlit versions released in 2026. For the latest version of Streamlit, see [Release notes](/develop/quick-reference/release-notes).
11
11
12
+
## **Version 1.54.0**
13
+
14
+
_Release date: February 4, 2026_
15
+
16
+
**Notable Changes**
17
+
18
+
- 🎨 The `color` parameter of [`st.area_chart`](/develop/api-reference/charts/st.area_chart), [`st.bar_chart`](/develop/api-reference/charts/st.bar_chart), [`st.line_chart`](/develop/api-reference/charts/st.line_chart), and [`st.scatter_chart`](/develop/api-reference/charts/st.scatter_chart) supports the basic color palette which can be configured with theming ([#13739](https://github.com/streamlit/streamlit/pull/13739), [#12694](https://github.com/streamlit/streamlit/issues/12694)).
19
+
- ☯️ You can use the new [`theme.chartDivergingColors`](/develop/api-reference/configuration/config.toml#theme) to set default diverging colors for Plotly, Altair, and Vega-Lite charts.
20
+
- 🔗 You can configure the display of error help links with a new configuration option, [`client.showErrorLinks`](/develop/api-reference/configuration/config.toml#client) ([#13472](https://github.com/streamlit/streamlit/pull/13472), [#11238](https://github.com/streamlit/streamlit/issues/11238)). Thanks, [karubian](https://github.com/karubian)!
21
+
- 😃 [`st.logo`](/develop/api-reference/media/st.logo) supports Material icons and emojis ([#13416](https://github.com/streamlit/streamlit/pull/13416)). Thanks, [rahuld109](https://github.com/rahuld109)!
22
+
- 🥷 To prevent widgets from resetting when you change a parameter, widgets are transitioning to an identity based only on their keys (if provided). The following widgets use only their key for their identity:
23
+
-`st.dataframe` (with selections)
24
+
-`st.area_chart`
25
+
-`st.bar_chart`
26
+
-`st.line_chart`
27
+
-`st.scatter_chart`
28
+
-`st.altair_chart`
29
+
-`st.vegalite_chart`
30
+
-`st.pydeck_chart`
31
+
-`st.date_input`
32
+
-`st.datetime_input`
33
+
-`st.radio`
34
+
-`st.select_slider`
35
+
- 👆 [`ListColumn`](/develop/api-reference/data/st.column_config/st.column_config.listcolumn) and [`MultiselectColumn`](/develop/api-reference/data/st.column_config/st.column_config.multiselectcolumn) let users select the text of their pills for copying ([#13663](https://github.com/streamlit/streamlit/pull/13663)).
36
+
- 👻 `st.experimental_get_query_params` and `st.experimental_set_query_params` have been removed. Use [`st.query_params`](/develop/api-reference/caching-and-state/st.query_params) instead.
37
+
- ☠️ `st.experimental_user` has been removed. Use [`st.user`](/develop/api-reference/user/st.user) instead.
38
+
39
+
**Other Changes**
40
+
41
+
- 👽 The warning about the proposed removal of `.add_rows()` shows in the browser. Please leave feedback ([#13063](https://github.com/streamlit/streamlit/issues/13063)).
42
+
- 🦎 When a `.streamlit/config.toml` file is created after a Streamlit app is running, the file watcher will recognize it without restarting the Streamlit server ([#13625](https://github.com/streamlit/streamlit/pull/13625), [#11296](https://github.com/streamlit/streamlit/issues/11296)).
43
+
- 🔐 Bug fix: Path security validation improves protection against Server-Side Request Forgery (SSRF) and path traversal vulnerabilities ([#13733](https://github.com/streamlit/streamlit/pull/13733)).
44
+
- 🕸️ Bug fix: Wildcard URLs display as `localhost` in the browser URL and console output ([#13720](https://github.com/streamlit/streamlit/pull/13720), [#13712](https://github.com/streamlit/streamlit/issues/13712)).
45
+
- 🦗 Bug fix: Modals and drop-down menus don't collapse the sidebar ([#13653](https://github.com/streamlit/streamlit/pull/13653)).
46
+
- 🦂 Bug fix: `st.bar_chart` doesn't raise a `KeyError` when sorting melted data ([#13695](https://github.com/streamlit/streamlit/pull/13695)).
47
+
- 🦟 Bug fix: `st.multiselect` and `st.selectbox` don't clear state when a custom class object is selected ([#13648](https://github.com/streamlit/streamlit/pull/13648), [#13646](https://github.com/streamlit/streamlit/issues/13646)).
48
+
- 🦠 Bug fix: Transient nodes used for spinners will correctly anchor themselves in the Streamlit DOM to avoid an empty delta path ([#13674](https://github.com/streamlit/streamlit/pull/13674)).
49
+
- 🪰 Bug fix: Snowflake connections will re-initialize if closed ([#13665](https://github.com/streamlit/streamlit/pull/13665)).
50
+
- 🪳 Bug fix: Nested containers under a spinner don't raise a `Bad delta path index` error ([#13659](https://github.com/streamlit/streamlit/pull/13659), [#13658](https://github.com/streamlit/streamlit/issues/13658)).
51
+
- 🕷️ Bug fix: `SnowflakeConnection.query()` correctly passes the `params` argument to caching ([#13652](https://github.com/streamlit/streamlit/pull/13652), [#13644](https://github.com/streamlit/streamlit/issues/13644)).
52
+
- 🐞 Bug fix: `client.toolbarMode="viewer"` correctly hides developer options from the settings menu ([#13623](https://github.com/streamlit/streamlit/pull/13623)).
53
+
- 🐝 Bug fix: When using the experimental Starlette configuration, Streamlit auth can log users out of your identity provider and surface user tokens, consistent with recent updates ([#13571](https://github.com/streamlit/streamlit/pull/13571)).
54
+
- 🐜 Bug fix: Streamlit will defensively not load packaged components with missing or invalid component names in their manifests ([#13612](https://github.com/streamlit/streamlit/pull/13612)).
55
+
- 🪲 Bug fix: The width of file chips in `st.chat_input` was increased to reduce filename truncation ([#13589](https://github.com/streamlit/streamlit/pull/13589)).
56
+
- 🐛 Bug fix: `st.bar_chart` doesn't raise an error about y-axis minimum and maximum when the bars have all the same value ([#13590](https://github.com/streamlit/streamlit/pull/13590), [#13584](https://github.com/streamlit/streamlit/issues/13584)).
0 commit comments