首页
/ stlite v0.76.0 版本发布:桌面端与浏览器端的重要更新

stlite v0.76.0 版本发布:桌面端与浏览器端的重要更新

2025-07-02 08:36:34作者:殷蕙予

stlite 是一个基于 Streamlit 的轻量级实现,它允许开发者在不依赖 Python 服务器的情况下运行 Streamlit 应用。这个项目特别适合需要将 Streamlit 应用嵌入到网页或桌面应用中的场景。最新发布的 v0.76.0 版本带来了一系列重要的改进和修复。

核心更新内容

Streamlit 框架升级至 1.41.0

本次更新将底层依赖的 Streamlit 框架从之前的版本升级到了 1.41.0。这个升级带来了 Streamlit 最新的功能和性能优化,包括:

  • 更高效的数据处理能力
  • 改进的组件渲染性能
  • 新增的 API 功能
  • 修复了多个已知问题

桌面端重大改进

stlite 的桌面版本在这个版本中获得了显著增强:

  1. Electron 框架升级至 33 版本:这带来了更好的跨平台兼容性和性能提升,特别是在 Windows 和 macOS 系统上。

  2. IPC 通信机制修复:解决了进程间通信(IPC)的消息命名问题,确保了主进程和渲染进程之间更可靠的数据传输。

  3. Worker 线程优化:改进了 CrossOriginWorker 的实现,使其能够更好地支持 type=module 的脚本加载方式。

  4. 打包优化:移除了打包后的 *.whl 文件中的哈希部分,简化了文件命名和管理。

构建系统与开发工具改进

开发团队对项目的构建系统进行了多项优化:

  1. Makefile 修复:解决了嵌套路径下的 sentinel 目标问题,并改进了 find 命令的使用方式,使构建过程更加可靠。

  2. 依赖项更新:升级了多个关键开发依赖,包括:

    • rollup 从 4.21.3 升级到 4.30.1
    • react-icons 从 5.0.1 升级到 5.4.0
    • react-router-dom 从 6.21.1 升级到 7.1.1
    • 以及其他多个工具链更新
  3. 构建配置优化:移除了不再必要的 eslint-webpack-plugin,并禁用了 @stlite/desktop 的 sourcemap 生成,减少了构建产物体积。

用户体验改进

  1. 错误提示优化:修复了 ErrorToastContent 的布局问题,使错误信息展示更加清晰美观。

  2. 共享功能修复:改进了 sharing/public/manifest.json 的配置,提升了应用共享时的兼容性。

  3. React Toastify 升级:将 react-toastify 升级到 v11 版本,带来了更现代化的通知提示效果。

技术实现细节

在底层实现上,这个版本有几个值得注意的技术点:

  1. 模块化加载:通过改进 CrossOriginWorker 对 type=module 的支持,使得现代 JavaScript 模块能够更顺畅地在 Worker 中运行。

  2. 构建产物优化:通过移除 *.whl 文件中的哈希部分,简化了依赖管理,同时保持了内容的完整性校验。

  3. TypeScript 支持增强:更新了 ts-proto 和相关类型定义,提升了类型安全性和开发体验。

开发者建议

对于使用 stlite 的开发者,这个版本建议:

  1. 如果是桌面应用开发者,建议尽快升级以利用 Electron 33 的新特性和性能改进。

  2. 对于需要共享应用的场景,新版本修复的 manifest.json 问题将提供更好的兼容性。

  3. 构建系统的改进使得开发环境更加稳定,建议更新所有开发依赖以获得最佳体验。

stlite v0.76.0 通过这一系列的更新和修复,进一步巩固了其作为轻量级 Streamlit 运行时的地位,为开发者提供了更稳定、更高效的开发体验。无论是嵌入到网页中还是构建桌面应用,这个版本都值得升级。

登录后查看全文
热门项目推荐
相关项目推荐