Skip to content

Commit 8a207b6

Browse files
Release 1.41.0 (#1197)
* Python version support update * Updated button example * Update streamlit.json * Release notes * Cheat sheet * Bump app versions * What's new * Update config-toml.md
1 parent cf99f6b commit 8a207b6

File tree

26 files changed

+10902
-144
lines changed

26 files changed

+10902
-144
lines changed

content/deploy/tutorials/kubernetes.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ Docker builds images by reading the instructions from a `Dockerfile`. A `Docke
8888
Here's an example `Dockerfile` that you can add to the root of your directory.
8989

9090
```docker
91-
FROM python:3.8-slim
91+
FROM python:3.9-slim
9292
9393
RUN groupadd --gid 1000 appuser \
9494
&& useradd --uid 1000 --gid 1000 -ms /bin/bash appuser

content/develop/api-reference/configuration/config-toml.md

+41-30
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ level = "info"
6969
# Python's documentation for available attributes:
7070
# https://docs.python.org/3/library/logging.html#formatter-objects
7171
# Default: "%(asctime)s %(message)s"
72-
messageFormat = "%(asctime)s %(levelname) -7s %(name)s: %(message)s"
72+
messageFormat = "%(asctime)s %(message)s"
7373
```
7474

7575
#### Client
@@ -78,26 +78,39 @@ messageFormat = "%(asctime)s %(levelname) -7s %(name)s: %(message)s"
7878
[client]
7979

8080
# Controls whether uncaught app exceptions and deprecation warnings
81-
# are displayed in the browser. By default, this is set to True and
82-
# Streamlit displays app exceptions and associated tracebacks, and
83-
# deprecation warnings, in the browser.
84-
# If set to False, deprecation warnings and full exception messages
85-
# will print to the console only. Exceptions will still display in the
86-
# browser with a generic error message. For now, the exception type and
87-
# traceback show in the browser also, but they will be removed in the
88-
# future.
89-
# Default: true
90-
showErrorDetails = true
81+
# are displayed in the browser. This can be one of the following:
82+
# - "full" : In the browser, Streamlit displays app deprecation
83+
# warnings and exceptions, including exception types,
84+
# exception messages, and associated tracebacks.
85+
# - "stacktrace" : In the browser, Streamlit displays exceptions,
86+
# including exception types, generic exception messages,
87+
# and associated tracebacks. Deprecation warnings and
88+
# full exception messages will only print to the
89+
# console.
90+
# - "type" : In the browser, Streamlit displays exception types and
91+
# generic exception messages. Deprecation warnings, full
92+
# exception messages, and associated tracebacks only
93+
# print to the console.
94+
# - "none" : In the browser, Streamlit displays generic exception
95+
# messages. Deprecation warnings, full exception
96+
# messages, associated tracebacks, and exception types
97+
# will only print to the console.
98+
# - True : This is deprecated. Streamlit displays "full"
99+
# error details.
100+
# - False : This is deprecated. Streamlit displays "stacktrace"
101+
# error details.
102+
# Default: "full"
103+
showErrorDetails = "full"
91104

92105
# Change the visibility of items in the toolbar, options menu,
93106
# and settings dialog (top right of the app).
94107
# Allowed values:
95-
# * "auto" : Show the developer options if the app is accessed through
108+
# - "auto" : Show the developer options if the app is accessed through
96109
# localhost or through Streamlit Community Cloud as a developer.
97110
# Hide them otherwise.
98-
# * "developer" : Show the developer options.
99-
# * "viewer" : Hide the developer options.
100-
# * "minimal" : Show only options set externally (e.g. through
111+
# - "developer" : Show the developer options.
112+
# - "viewer" : Hide the developer options.
113+
# - "minimal" : Show only options set externally (e.g. through
101114
# Streamlit Community Cloud) or through st.set_page_config.
102115
# If there are no options left, hide the menu.
103116
# Default: "auto"
@@ -140,9 +153,9 @@ enforceSerializableSessionState = false
140153
# during a script re-run. For more information, check out the docs:
141154
# https://docs.streamlit.io/develop/concepts/design/custom-classes#enums
142155
# Allowed values:
143-
# * "off" : Disables Enum coercion.
144-
# * "nameOnly" : Enum classes can be coerced if their member names match.
145-
# * "nameAndValue" : Enum classes can be coerced if their member names AND
156+
# - "off" : Disables Enum coercion.
157+
# - "nameOnly" : Enum classes can be coerced if their member names match.
158+
# - "nameAndValue" : Enum classes can be coerced if their member names AND
146159
# member values match.
147160
# Default: "nameOnly"
148161
enumCoercion = "nameOnly"
@@ -162,11 +175,11 @@ folderWatchBlacklist = []
162175
# Change the type of file watcher used by Streamlit, or turn it off
163176
# completely.
164177
# Allowed values:
165-
# * "auto" : Streamlit will attempt to use the watchdog module, and
178+
# - "auto" : Streamlit will attempt to use the watchdog module, and
166179
# falls back to polling if watchdog is not available.
167-
# * "watchdog" : Force Streamlit to use the watchdog module.
168-
# * "poll" : Force Streamlit to always use polling.
169-
# * "none" : Streamlit will not watch files.
180+
# - "watchdog" : Force Streamlit to use the watchdog module.
181+
# - "poll" : Force Streamlit to always use polling.
182+
# - "none" : Streamlit will not watch files.
170183
# Default: "auto"
171184
fileWatcherType = "auto"
172185

@@ -201,19 +214,17 @@ port = 8501
201214
# Default: ""
202215
baseUrlPath = ""
203216

204-
# Enables support for Cross-Origin Resource Sharing (CORS) protection, for
205-
# added security.
206-
# Due to conflicts between CORS and XSRF, if `server.enableXsrfProtection` is
207-
# on and `server.enableCORS` is off at the same time, we will prioritize
208-
# `server.enableXsrfProtection`.
217+
# Enables support for Cross-Origin Resource Sharing (CORS) protection,
218+
# for added security.
219+
# If XSRF protection is enabled and CORS protection is disabled at the
220+
# same time, Streamlit will enable them both instead.
209221
# Default: true
210222
enableCORS = true
211223

212224
# Enables support for Cross-Site Request Forgery (XSRF) protection, for
213225
# added security.
214-
# Due to conflicts between CORS and XSRF, if `server.enableXsrfProtection` is
215-
# on and `server.enableCORS` is off at the same time, we will prioritize
216-
# `server.enableXsrfProtection`.
226+
# If XSRF protection is enabled and CORS protection is disabled at the
227+
# same time, Streamlit will enable them both instead.
217228
# Default: true
218229
enableXsrfProtection = true
219230

content/develop/concepts/custom-components/components-api.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ To make the process of creating bi-directional Streamlit Components easier, we'v
9191

9292
To build a Streamlit Component, you need the following installed in your development environment:
9393

94-
- Python 3.8 - Python 3.12
95-
- Streamlit 1.11.1 or higher
94+
- Python 3.9 - Python 3.13
95+
- Streamlit
9696
- [nodejs](https://nodejs.org/en/)
9797
- [npm](https://www.npmjs.com/) or [yarn](https://yarnpkg.com/)
9898

content/develop/quick-references/api-cheat-sheet.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ slug: /develop/quick-reference/cheat-sheet
55

66
# Streamlit API cheat sheet
77

8-
This is a summary of the docs for the latest version of Streamlit, [v1.40.0](https://pypi.org/project/streamlit/1.40.0/).
8+
This is a summary of the docs for the latest version of Streamlit, [v1.41.0](https://pypi.org/project/streamlit/1.41.0/).
99

1010
<Masonry>
1111

content/develop/quick-references/release-notes/2024.md

+46
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,52 @@ keywords: changelog, release notes, version history
99

1010
This page contains release notes for Streamlit versions released in 2024. For the latest version of Streamlit, see [Release notes](/develop/quick-reference/release-notes).
1111

12+
## **Version 1.41.0 (latest)**
13+
14+
_Release date: December 10, 2024_
15+
16+
**Notable Changes**
17+
18+
- 🔲 [`st.metric`](/develop/api-reference/data/st.metric) and [`st.columns`](/develop/api-reference/layout/st.columns) have a parameter to show an optional border ([#9927](https://github.com/streamlit/streamlit/pull/9927), [#9928](https://github.com/streamlit/streamlit/pull/9928)).
19+
- 🎨 Text and background color in [Markdown](/develop/api-reference/text/st.markdown) can use the "primary" color from the `theme.primaryColor` configuration option ([#9676](https://github.com/streamlit/streamlit/pull/9676)).
20+
- 🥶 You can freeze columns with [column configuration](/develop/api-reference/data/st.column_config) to make them always visible when scrolling horizontally ([#9535](https://github.com/streamlit/streamlit/pull/9535), [#7078](https://github.com/streamlit/streamlit/issues/7078)).
21+
- 3️⃣ The `type` parameter for [buttons](/develop/api-reference/widgets/st.button) accepts a new option, `"tertiary"` ([#9923](https://github.com/streamlit/streamlit/pull/9923)).
22+
- 🚶‍♂️ Streamlit supports `pathlib.Path` objects everywhere you can use a string path ([#9711](https://github.com/streamlit/streamlit/pull/9711), [#9783](https://github.com/streamlit/streamlit/pull/9783)).
23+
- ⏱️ [`st.date_input`](/develop/api-reference/widgets/st.date_input) and [`st.time_input`](/develop/api-reference/widgets/st.time_input) accept ISO formatted strings for initial values ([#9753](https://github.com/streamlit/streamlit/pull/9753)).
24+
- 💬 [`st.write_stream`](/develop/api-reference/write-magic/st.write_stream) accepts async generators, which it converts internally to sync generators ([#8724](https://github.com/streamlit/streamlit/pull/8724), [#8161](https://github.com/streamlit/streamlit/issues/8161)).
25+
- 🪵 The [`client.showErrorDetails`](/develop/api-reference/configuration/config.toml#client) configuration option has additional values to show or hide more information ([#9909](https://github.com/streamlit/streamlit/pull/9909)).
26+
- 🔎 When Streamlit shows stack traces in the app for uncaught exceptions, internal code is omitted or reduced for easier debugging ([#9913](https://github.com/streamlit/streamlit/pull/9913)).
27+
- 📈 [`st.line_chart`](/develop/api-reference/charts/st.line_chart) shows tooltips for the nearest point on hover ([#9674](https://github.com/streamlit/streamlit/pull/9674)).
28+
- 🌐 [`st.html`](/develop/api-reference/utilities/st.html) will attempt to convert non-string objects with `._repr_html_()` before falling back to `str()` ([#9877](https://github.com/streamlit/streamlit/pull/9877)).
29+
- 🐍 Streamlit supports Python 3.13 and no longer supports Python 3.8 ([#9635](https://github.com/streamlit/streamlit/pull/9635)).
30+
31+
**Other Changes**
32+
33+
- 🔣 Material Symbols have been updated with the latest icons ([#9813](https://github.com/streamlit/streamlit/pull/9813), [#9810](https://github.com/streamlit/streamlit/issues/9810)).
34+
- 👽 Streamlit supports Watchdog version 6 ([#9785](https://github.com/streamlit/streamlit/pull/9785)). Thanks, [RubenVanEldik](https://github.com/RubenVanEldik).
35+
- 🌀 Bug fix: Streamlit only shows cached function spinners on cache misses and doesn't show spinners for nested cached functions ([#9956](https://github.com/streamlit/streamlit/pull/9956), [#9951](https://github.com/streamlit/streamlit/issues/9951)).
36+
- 🔈 Bug fix: Streamlit's audio buffer handles channels better to correctly play audio recordings in Firefox ([#9885](https://github.com/streamlit/streamlit/pull/9885), [#9799](https://github.com/streamlit/streamlit/issues/9799)).
37+
- 🦊 Bug fix: URL patterns are matched correctly to allow Community Cloud developer tools to display correctly in Firefox ([#9849](https://github.com/streamlit/streamlit/pull/9849), [#9848](https://github.com/streamlit/streamlit/issues/9848)).
38+
- ☠️ Bug fix: Corrected a performance and alignment problem with containers ([#9901](https://github.com/streamlit/streamlit/pull/9901), [#9456](https://github.com/streamlit/streamlit/issues/9456), [#9560](https://github.com/streamlit/streamlit/issues/9560)).
39+
- 👻 Bug fix: `st.rerun` will raise an error if an invalid `scope` is passed to it ([#9911](https://github.com/streamlit/streamlit/pull/9911), [#9908](https://github.com/streamlit/streamlit/issues/9908)).
40+
- 🦋 Bug fix: Dataframe toolbars show correctly in dialogs ([#9897](https://github.com/streamlit/streamlit/pull/9897), [#9461](https://github.com/streamlit/streamlit/issues/9461)).
41+
- 🦀 Bug fix: `LinkColumn` regex for `display_text` uses the correct URI decoding ([#9895](https://github.com/streamlit/streamlit/pull/9895), [#9893](https://github.com/streamlit/streamlit/issues/9893)).
42+
- 🦎 Bug fix: `st.dataframe` has correct type hinting when `on_selection="ignore"` ([#9898](https://github.com/streamlit/streamlit/pull/9898), [#9669](https://github.com/streamlit/streamlit/issues/9669)).
43+
- 🐌 Bug fix: Padding is applied consistently for wide and centered layout mode ([#9882](https://github.com/streamlit/streamlit/pull/9882), [#9707](https://github.com/streamlit/streamlit/issues/9707)).
44+
- 🕸️ Bug fix: `st.graphviz_chart` is displayed correctly when `use_container_width=True` ([#9867](https://github.com/streamlit/streamlit/pull/9867), [#9866](https://github.com/streamlit/streamlit/issues/9866)).
45+
- 🦗 Bug fix: The overloaded definitions of `st.pills` and `st.segmented_control` use the correct selection-mode default ([#9801](https://github.com/streamlit/streamlit/pull/9801)). Thanks, [RubenVanEldik](https://github.com/RubenVanEldik)!
46+
- 🦂 Bug fix: `st.text_area` (and other widgets) are correctly submitted in a form when using `Ctrl+Enter` ([#9847](https://github.com/streamlit/streamlit/pull/9847), [#9841](https://github.com/streamlit/streamlit/issues/9841)).
47+
- 🦟 Bug Fix: `st.write` renders `DeltaGenerator` objects with [`st.help`](http://st.help) ([#9828](https://github.com/streamlit/streamlit/pull/9828), [#9827](https://github.com/streamlit/streamlit/issues/9827)).
48+
- 🦠 Bug fix: `st.text_area` correctly matches the value in Session State when used with a key ([#9829](https://github.com/streamlit/streamlit/pull/9829), [#9825](https://github.com/streamlit/streamlit/issues/9825)).
49+
- 🪰 Bug fix: `st.text_input` does not trigger a rerun when a user submits an unchanged value ([#9826](https://github.com/streamlit/streamlit/pull/9826)).
50+
- 🪳 Bug fix: Improved styling for `st.exception` to fix overflow and incorrect padding ([#9818](https://github.com/streamlit/streamlit/pull/9818), [#9817](https://github.com/streamlit/streamlit/issues/9817), [#9816](https://github.com/streamlit/streamlit/issues/9816)).
51+
- 🕷️ Bug fix: Large dataframe don't overflow and cover the dataframe toolbar in fullscreen mode ([#9803](https://github.com/streamlit/streamlit/pull/9803), [#9798](https://github.com/streamlit/streamlit/issues/9798)).
52+
- 🐞 Bug fix: `st.audio_input` shows the correct time on recording in time zones with a half-hour offset ([#9791](https://github.com/streamlit/streamlit/pull/9791), [#9631](https://github.com/streamlit/streamlit/issues/9631)).
53+
- 🐝 Bug fix: In iOS, `st.number_input` shows a number pad instead of a keyboard when in focus ([#9766](https://github.com/streamlit/streamlit/pull/9766), [#9763](https://github.com/streamlit/streamlit/issues/9763)).
54+
- 🐜 Bug fix: Widget keys containing hyphens are correctly added to HTML classes in the DOM with an `st-key-` prefix ([#9793](https://github.com/streamlit/streamlit/pull/9793)).
55+
- 🪲 Bug fix: Audio files created by `st.audio_input` include a timestamp to ensure unique file names ([#9768](https://github.com/streamlit/streamlit/pull/9768)).
56+
- 🐛 Bug fix: Double slash URL pathnames do not create a 301 redirect ([#9754](https://github.com/streamlit/streamlit/pull/9754), [#9690](https://github.com/streamlit/streamlit/issues/9690)).
57+
1258
## **Version 1.40.0**
1359

1460
_Release date: November 6, 2024_

0 commit comments

Comments
 (0)