对于 PyApp 构建,如果不再更新,提醒用户
作者: meejah创建于 2026年3月17日更新于 2026年5月18日
(与 Pete 交谈) 我们想通过 PyApp 探索 Mac、Windows 等版本。如果我们能够提醒用户运行 `wormhole self update` 以获取新版本,那就太好了。 我们不希望任何客户端版本在未经请求的情况下进行网络活动。因此,存在一个 24 条件,我们希望了解新版本(或者告诉用户“已经有一段时间了,为什么不检查一下”)。 选项: - 服务器可以(再次)说明当前的版本 - 以前使用过这种方法("推荐的版本"),但现在有多个客户端实现 - 可以使用类似于 `"Python": "0.23.0"` 来表示当前版本 - 优点:我们已经与该服务器联系,因此不需要额外的网络流量 - 缺点:服务器运营商需要在每个客户端版本中更新某些内容 - 本地状态(保存在哪里?)可以向客户端发出信号,要求用户运行 `wormhole self update` - 如果 "超过 6 个月" 且 "自上次提醒以来已超过 30 天",则提醒用户 - 保存到哪里? ("操作系统将用户信息保存在哪里" 通过库等) 结论:采用某种形式的 "本地状态" 选项,即: - 在 `platformdirs` 指定的文件中保存 "最后 bugged 用户" 的本地状态 - 如果 "此版本的发布日期已超过 6 个月" 且 "我们最近没有 bug 用户",则 bug 用户,并记住我们已经这样做(在上面的文件中) - 直到最近的几天过去,才不要再 bug 用户 - "最近" 是 30 天 - 边界情况: - 如果 `platformdirs` 建议的目录出现任何原因而无法写入,则我们永远不会 bug 用户
内容来源: magic-wormhole/magic-wormhole