2020 release notes

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

发布日期:2020年12月17日

显著变化

  • 🐍 Streamlit 现在可以在 Python 3.9 上安装了。Streamlit 组件尚未兼容 Python 3.9,必须使用 3.8 或更早的版本。
  • 🧱 Streamlit 组件现在允许同源,启用浏览器提供的功能,例如网络摄像头组件。
  • 🐙 修复了在 Git 版本 2.7.0 或更早版本上运行的用户的 Streamlit 共享部署体验。
  • 🧰 处理st.file_uploader上传文件的意外关闭。

发布日期:2020年12月2日

显著变化

  • 🌈 建立一个主题框架并迁移现有组件。
  • 📱 改善移动设备的侧边栏体验。
  • 🧰 更新 st.file_uploader 以减少重新运行。

发布日期:2020年11月11日

显著变化

  • 📁 更新了 st.file_uploader 以在应用重新运行时自动重置缓冲区。
  • 📊 优化图表的默认渲染,减少初始渲染时的问题。

发布日期:2020年10月28日

显著变化

  • 🧪 st.set_page_configst.color_picker 现在已经被移入 Streamlit 命名空间。这些功能将于2021年1月28日从测试版中移除。了解更多关于我们的测试流程 这里
  • 📊 改进离散值条形图的显示。

发布日期:2020年10月15日

亮点:

  • 🎁 介绍 Streamlit 分享,这是部署、管理和分享您的公共 Streamlit 应用程序的最佳方式——完全免费。在我们的博客文章中了解更多信息,或在此注册!
  • 添加了st.experimental_rerun以编程方式重新运行您的应用程序。感谢SimonBiggs

显著变化

  • 📹 更好的跨浏览器支持 st.video 的开始和停止时间。
  • 🖼 修复了间歇性失败的媒体文件的错误
  • 📦 修复了自定义组件与Safari的兼容性问题。请确保升级到最新的 streamlit-component-lib

发布日期:2020年10月8日

亮点:

  • ⌗ 介绍Streamlit的新布局选项!让开,垂直布局。 为...水平布局腾出一点空间!查看我们的 博客文章
  • 💾 文件上传器重新设计,新增了多文件上传功能,并更好地支持处理上传的文件。这可能会导致一些破坏性更改。请参阅我们的文档中的新API。

显著变化

  • 🎈 st.balloon 已经进行了外观升级,拥有更漂亮的气球和更流畅的动画效果。
  • 🚨 重大变更:自2020年1月st.deck_gl_chart被弃用以来,我们现在已经完全移除了该API。请改用st.pydeck_chart
  • 🚨 重大变更:继2020年1月弃用st.altair_chartst.graphviz_chartst.plotly_chartst.vega_lite_chartwidthheight参数后,我们现在已完全移除这些参数。请在相应的图表库中设置宽度和高度。

发布日期:2020年9月16日

亮点:

  • 🦷 Streamlit 组件现在可以向您的 Streamlit 应用程序返回字节。要创建一个返回字节的组件,请确保升级到最新的 streamlit-component-lib

显著变化

  • 📈 弃用警告:从2020年12月1日开始,st.pyplot() 将需要提供一个图表。要禁用弃用警告,请将 deprecation.showPyplotGlobalUse 设置为 False
  • 🎚 st.multiselectst.select 在处理大型数据集时现在非常快。感谢 masa3141

发布日期:2020年9月1日

亮点:

  • ✏️ st.write 现在可以在侧边栏中使用了!
  • 🎚 现在可以使用 st.select_slider 来为不同的或非数值的值提供一个滑块。
  • ⌗ Streamlit 组件现在可以将数据框返回到您的 Streamlit 应用程序中。查看我们的 SelectableDataTable 示例
  • 📦 我们在Streamlit组件模板中使用的Streamlit组件库现在可以作为npm包(streamlit-component-lib)使用,以简化未来升级到最新版本的过程。现有的组件不需要迁移。

显著变化

  • 🐼 支持从pandas 1.0.0版本开始的StringDtype
  • 🧦 支持在Unix套接字上运行Streamlit

发布日期:2020年8月12日

亮点:

  • ⚙️ 能够通过 st.beta_set_page_config() 设置页面标题、网站图标、侧边栏状态和宽屏模式。详情请参阅我们的 文档
  • 📝 通过使用 st.experimental_set_query_params 和 st.experimental_get_query_params 添加有状态行为。感谢 @zhaoooyue
  • 🐼 改进了对 st.radio、st.selectbox 和 st.multiselect 的 pandas dataframe 支持。
  • 🛑 使用 st.stop 中断你的 Streamlit 应用。
  • 🖼 支持在 st.image 中使用内联 SVG。

标注:

  • 🚨弃用警告:st.image 参数格式已更名为 output_format。

发布日期:2020年7月23日

亮点:

  • 📊 默认情况下,matplotlib 以紧凑布局显示图表。要禁用此功能,请将 bbox_inches 设置为 None、以字符串形式表示的英寸或 Bbox
  • 🗃 对 st.file_uploader 自动编码的弃用警告
  • 🙈 如果 gatherUserStatsFalse,甚至不要加载 Segment 库。 感谢 @tanmaylaud

发布日期:2020年7月13日

亮点:

  • 🧩 支持 Streamlit 组件!!! 查看 文档 获取更多信息。
  • 🕗 支持在 st.slider中使用日期时间。当然,就像你在st.slider中使用的任何其他值一样,你也可以传入一个包含两个元素的列表来获得一个日期时间范围滑块。

发布日期:2020年6月21日

亮点:

  • 📨 能够通过配置选项server.enableWebsocketCompression来开启或关闭WebSocket压缩。如果你的服务器剥离了HTTP头信息,并且你无法更改这种行为,这将非常有用。
  • 🗝️ 开箱即用的CSRF保护支持,使用 Cookie-to-header token 技术。这意味着如果你从多个副本提供你的Streamlit应用程序,你需要配置它们使用相同的cookie密钥,通过server.cookieSecret配置选项。 要关闭XSRF保护,请设置server.enableXsrfProtection=false

显著的错误修复:

  • 🖼️ 为图像缓存过期逻辑添加了一个宽限期,以修复多个相关错误,其中使用 st.imagest.pyplot 发送的图像有时会丢失。

发布日期:2020年6月2日

亮点:

  • 📅 支持在 st.date_picker 中使用日期范围。更多信息请参见 docs ,简而言之:只需传递一个列表/元组作为默认日期,它将被解释为一个范围。
  • 🗣️ 你现在可以选择st.echo是在回显块的输出上方还是下方打印代码。要了解更多信息,请参考docs中的code_location参数。
  • 📦 改进了对Keras模型和Tensorflow saved_models@st.cache支持。

发布日期:2020年5月18日

亮点:

  • ↕️ 能够使用 height 参数设置 st.text_area 的高度 (以像素为单位表示)。更多信息请参见 docs
  • 🔡 能够设置st.text_areast.text_input中允许的最大字符数。请查看docs中的max_chars参数。
  • 🗺️ 更好的DeckGL支持H3地理空间索引系统。所以现在你可以在st.pydeck_chart中使用像H3HexagonLayer这样的东西。
  • 📦 改进了对 PyTorch TensorBase 和 Model 的 @st.cache 支持。

发布日期:2020年5月5日

亮点:

  • 🎨 新的颜色选择器小部件!使用 st.beta_color_picker()
  • 🧪 引入 st.beta_*st.experimental_* 函数前缀,以便更快地发布 Streamlit 功能。更多信息请参阅 文档
  • 📦 改进了对SQL Alchemy对象、CompiledFFI、PyTorch张量和builtins.mappingproxy@st.cache支持。

发布日期:2020年4月22日

亮点:

  • 💼 使 st.selectbox 过滤不区分大小写。
  • ㈬ 在@st.cache中更好地支持Tensorflow会话。
  • 📊 更改了 st.pyplot 的行为,仅在使用全局 Matplotlib 图形时自动清除图形(即仅在调用 st.pyplot() 而不是 st.pyplot(fig) 时)。

发布日期:2020年3月26日

亮点:

  • ⏲️ 能够通过设置@st.cache函数的max_entriesttl参数来设置过期选项。参见docs
  • 🆙 改进了st.file_uploader背后的机制,现在它的性能更好了!同时将默认上传限制增加到200MB(可通过server.max_upload_size配置)。
  • 🔒 现在,server.address 配置选项将服务器绑定到该地址以增强安全性。
  • 📄 为@st.cache的错误信息添加了更多细节,以便更容易调试。

发布日期:2020年2月15日

亮点:

  • 📄 改进了 st.cache 的错误信息。错误信息现在还会指向我们刚刚发布的新缓存文档。阅读更多 这里

重大变更:

  • 🐍 正如上个月宣布的Streamlit 不再支持 Python 2。 要使用 Streamlit,你需要 Python 3.5 或更高版本。

发布日期:2020年2月4日

亮点:

  • 📺 能够直接从Streamlit录制屏幕录像! 这使您可以轻松录制并分享关于您的模型、分析、数据等的解释。只需点击☰然后选择“录制屏幕录像”。试试看吧!

发布日期:2020年1月29日

亮点:

  • ⌨️ 支持密码字段!只需将 type="password" 传递给 st.text_input()

显著的修复:

  • ✳️ 众多 st.cache 改进,包括对复杂对象的更好支持。
  • 🗣️ 修复了侧边栏中多个用户之间的串扰问题。

重大变更:

  • 如果你正在使用SessionState hack Gist,你应该重新下载它! 根据你使用的hack,这里有一些链接可以节省你的时间:

发布日期:2020年1月14日

亮点:

  • 🗺️ 支持所有DeckGL功能!只需使用 Pydeck 而不是 st.deck_gl_chart。 要做到这一点,只需将PyDeck对象传递给 st.pydeck_chart, st.write, 或 magic

    请注意,作为预览版,近期可能会有变化。 期待在稳定API之前听到社区的反馈!

    目标是让这个替换st.deck_gl_chart 因为它 做了旧API所做的所有事情甚至更多!

  • 🆕 改进了开发过程中对Streamlit升级的处理。如果浏览器标签显示的应用程序使用的Streamlit版本比标签运行的版本更新,我们现在会自动重新加载浏览器标签。

  • 👑 新的网站图标,带有我们的新标志!

显著的修复:

  • Magic 现在在 Python 3.8 中正常工作。它不再导致应用程序中的文档字符串渲染。

重大变更:

  • 更新了我们计算所有图表类型的默认宽度和高度的方法。 我们现在将图表大小调整交给您的图表库本身处理,因此请参考 库的文档。

    因此,大多数图表命令中的widthheight参数已被弃用, 并且use_container_width已被引入到各处,以允许您使图表尽可能 填充水平空间(这曾经是默认行为)。

forum

还有问题吗?

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