2021 release notes

本页面包含2021年发布的Streamlit版本的发布说明。有关Streamlit的最新版本,请参阅发布说明

发布日期:2021年12月16日

显著变化

  • 💯 支持在 st.metric 中使用 NumPy 值。
  • 🌐 支持在 PyDeck 中使用网格图层。
  • 📊 更新了 Plotly 图表版本以支持最新功能。
  • 🏀 st.spinner 元素具有视觉动画的旋转器。
  • 🍰 st.caption 支持通过 unsafe_allow_html 参数在文本中使用 HTML。

其他变更

  • 🪲 错误修复:允许使用 st.session_state 设置 number_input 值而不发出警告 (#4047)。
  • 🪲 错误修复:修复宽模式下页脚对齐问题 (#4035).
  • 🐞 错误修复:更好地支持容器中的Graphviz和Bokeh图表(列、扩展器等)(#4039)。
  • 🐞 错误修复:支持在Vega-Lite中使用内联数据值 (#4070).
  • ✍️ 类型:更新了实验性记忆和单例装饰器的类型注解。
  • ✍️ 类型:改进了 st.selectboxst.select_sliderst.radiost.number_inputst.multiselect 的类型注解。

发布日期:2021年11月11日

显著变化

  • ✏️ st.text_input 和 st.text_area 现在有一个 placeholder 参数,用于在字段为空时显示文本。
  • 📏 观众现在可以调整st.text_area中的输入框大小。
  • 📁 当子目录中的文件发生变化时,Streamlit 可以自动重新加载。
  • 🌈 我们已经将Bokeh支持升级到2.4.1!我们建议您将Bokeh库更新到2.4.1以保持功能。今后,如果您的Bokeh版本不匹配,我们会通过错误提示通知您。
  • 🔒 开发者可以通过属性符号访问密钥(例如 st.secrets.keyst.secrets["key"]),就像访问会话状态一样。
  • ✍️ 根据PEP 561发布类型注解。用户现在在运行mypy时可以获得Streamlit的类型注解(#4025)。

其他变更

发布日期:2021年10月21日

亮点

  • 🧠 内存改进:Streamlit 应用程序现在随着时间的推移分配的内存更少。

显著变化

  • ♻️ 当secrets.toml的内容发生变化时,应用程序现在会自动重新运行(在此之前,您必须手动刷新页面)。

其他变更

  • 🔗 将一些链接重定向到我们的全新文档站点,例如在异常中。
  • 🪲 错误修复:允许使用会话状态初始化范围滑块 (#3586).
  • 🐞 错误修复:在使用带有datetime索引的add_rows时刷新图表 (#3653).
  • ✍️ 在我们的代码库中添加了更多的类型注解 (#3908).

发布日期:2021年10月5日

亮点

  • 🎈宣布 Streamlit 1.0 发布!想了解更多信息,请查看我们的 1.0 博客文章

其他变更

  • 🐞 修复了在使用Arrow时使用df.dtypes显示DF数据类型失败的问题(#3709),图像标题保持在图像宽度内并且可读(#3530)。

发布日期:2021年9月22日

亮点

  • 💰 介绍 st.experimental_memoexperimental_singleton,一个新的缓存原语!查看 我们的博客文章
  • 🍔 Streamlit 允许开发者配置他们的汉堡菜单,使其更加以用户为中心。

显著变化

  • 💅 我们更新了用户界面,采用了新字体,使其看起来更加精致。
  • 🎨 我们现在支持在发送到自定义组件时,在主题对象中使用 theme.base
  • 🧠 我们已经修改了会话状态,以便在它们的任何参数发生变化时重置小部件,即使它们提供了键。
    • 一些小部件的行为可能已经改变,但我们相信这一改变是最合理的。我们已经在我们的文档中添加了一个部分,描述了它们的行为。

其他变更

  • 🐞 错误修复:支持来自URL的SVG(#3809)以及不以标签开头的SVG(#3789)。

发布日期:2021年9月2日

亮点

  • ⬇️ 介绍 st.download_button,一个新的按钮小部件,用于轻松下载文件。

显著变化

  • 🛑 我们对Streamlit Community Cloud上的异常信息处理进行了改进。当client.showErrorDetails=true时,异常会显示错误类型和回溯信息,但会隐藏实际的错误文本以防止数据泄露。

发布日期:2021年8月19日

亮点

  • 🔢 介绍 st.metric,一个用于显示关键绩效指标(KPI)的 API。查看展示功能的 demo app

其他变更

  • 🐞 错误修复: 文件上传器在扩展器关闭时保留状态 (#3557), 使用 st.empty 时的 setIn 错误 (#3659), 文档中缺少的 IFrame 嵌入 (#3706), 修复写入某些 PNG 文件时的错误 (#3597).

发布日期:2021年8月5日

亮点

  • 🎓 我们的布局原语已经从测试版毕业了!你现在可以使用 st.columnsst.containerst.expander,而不需要 beta_ 前缀。

显著变化

  • 📱 当使用 st.columns 时,如果视口大小小于640px,列将垂直堆叠,以便在较小的视口上保持一致的列布局并更加整洁。(#3594).

其他变更

  • 🐞 错误修复: 修复了 st.date_input 如果为空时崩溃的问题 (#3194), 使用 utf-8 打开文件 (#3022), st.select_slider 在交互时重置其状态 (#3600).

发布日期:2021年7月22日

亮点

  • 🏹 Streamlit 现在使用 Apache Arrow 来序列化数据帧,当它们从 Streamlit 服务器发送到前端时。请参阅我们的 博客文章.
    • (希望继续使用旧版数据帧序列化的用户可以通过在他们的 config.toml 中将 dataFrameSerialization 配置选项设置为 "legacy" 来实现).

其他变更

  • 🐞 错误修复:无响应的pydeck示例(#3395),JSON解析错误消息(#2324),工具提示渲染(#3300),在Streamlit Sharing上颜色选择器无法工作(#2689)。

发布日期:2021年7月1日

亮点

  • 🧠 引入 st.session_state 和小部件回调,允许您为应用程序添加状态。查看 博客文章

显著变化

  • 🪄 st.text_input 现在有一个 autocomplete 参数,允许使用密码管理器

其他变更

  • 使用 st.set_page_config 设置页面标题时,不再在该标题后附加 "Streamlit" (#3467)
  • NumberInput: 当小部件已经达到其最大值(或最小值)时,禁用加减按钮 (#3493)

发布日期:2021年6月17日

亮点

  • 🛣️ 更新了Streamlit文档,包含逐步指南,展示如何将Streamlit应用程序连接到各种数据库和API

显著变化

  • 📄 st.form 现在有一个 clear_on_submit 参数,当表单提交时,它会“重置”表单中的所有小部件。

其他变更

发布日期:2021年5月13日

显著变化

  • ♻️ 通过在脚本运行之间强制进行垃圾回收来改进内存管理。

发布日期:2021年4月29日

亮点

  • 📝 介绍 st.formst.form_submit_button,允许您批量输入小部件。查看我们的 博客文章
  • 🔤 引入 st.caption,以便您可以在应用程序的任何位置添加解释性文本。
  • 🎨 主题更新,包括能够构建一个继承自我们任何默认主题的主题。
  • 🚀 从应用菜单到 Streamlit 共享的部署体验改进。

其他更改

  • 支持自定义组件中的二进制文件 (#3144)

发布日期:2021年4月8日

亮点

  • 🔐 Streamlit 现在支持为部署到 Streamlit Sharing 的应用程序进行秘密管理!
  • ⚓️ 标题和标题现在带有自动生成的锚点链接。只需将鼠标悬停在任何标题上并点击🔗即可获取链接!

其他更改

  • 为自定义组件添加了allow-downloads功能 (#3040)
  • 修复了暗黑主题下的Markdown表格显示问题 (#3020)
  • 改进了自定义主题对话框中的颜色选择器小部件 (#2970)

发布日期:2021年3月18日

亮点

  • 🌈 引入对自定义主题的支持。查看我们的 博客文章
  • 🌚 此版本还引入了暗黑模式!
  • 🛠️ 支持所有输入小部件的工具提示

其他更改

  • 修复了关于文件编码(#1936, #2606)和缓存函数(#2728)的错误

发布日期:2021年3月4日

功能

  • 如果您正在使用Streamlit for Teams测试版,我们对secrets的工作方式做了一些更新。请查看测试版文档以获取更多信息!
  • Dataframes 现在显示所有 DateTime 和 Time 列时区,并显示应用时区的时间,而不是 UTC 时间

显著的错误修复

  • st.beta_columns中的列对齐进行了各种改进
  • 移除了长期弃用的format参数从st.image,并替换为output_format

发布日期:2021年2月23日

功能

  • 新增了一个配置选项 client.showErrorDetails,允许开发者控制错误消息的详细程度。这在部署应用程序时非常有用,可以隐藏用户可能敏感的跟踪信息。

显著的错误修复

  • 修复了bug,其中st.image无法正确渲染某些类型的SVG。
  • 修复了regression,其中st.slider的当前值仅在悬停时显示。

发布日期:2021年2月4日

显著变化

  • 🎨 st.color_picker 现已退出测试版。这意味着在过去3个月中被标记为弃用的旧版 beta_color_picker 函数,现在已被 color_picker 取代。
  • 🐍 当Streamlit脚本直接作为python script.py运行时显示警告。
  • st.imageuse_column_width 现在默认为 auto 选项,如果图像超过列宽,将调整图像大小以适应列宽。
  • ✂️ 修复了内容在st.beta_expander中被截断的错误(24372247
  • 📜 修复了bugst.dataframe中,滚动条与最后一列内容重叠的问题。
  • 💾 修复了bug,针对st.file_uploader,其中返回的文件数据不是最近上传的文件。
  • ➕ 修复了一些 LaTeX 命令无法正确渲染的错误 (20862556)。

发布日期:2021年1月21日

显著变化

  • 🕳 st.empty 以前会在脚本结束时清除组件。现在已更新为立即清除组件。
  • 🛹 之前在宽屏模式下,网页周围的边距较薄。现在已增加边距,以提供更好的视觉体验。

发布日期:2021年1月6日

显著变化

  • 💾 st.file_uploader. 已经稳定,弃用警告 和相关的配置选项 (deprecation.showfileUploaderEncoding) 已被移除。
  • 📊 st.bokeh_chart 在页面加载时不再重复。
  • 🎈 修复了页面图标以支持带有变体(即 🤦‍♀️ 与 🤦🏼‍♀️)或破折号(即 🌙 - 新月)的表情符号。
forum

还有问题吗?

我们的 论坛 充满了有用的信息和Streamlit专家。