mirror of
https://github.com/shadowsocks/ShadowsocksX-NG.git
synced 2026-11-14 18:23:50 +00:00
feat: add GUI-scoped subscription automatic updates (#1516)
* feat: add GUI-scoped subscription automatic updates * fix: drain newly due subscription updates during a batch * style: use segmented subscription update pickers
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
# 订阅自动更新由 GUI 应用运行期间执行
|
||||
|
||||
订阅自动更新由 GUI 应用负责,仅保留菜单栏或静默启动时也执行;不交由生命周期独立的后台代理服务执行,也不为更新唤醒电脑。应用重新启动或电脑唤醒时,已到期订阅只补更新一次,以满足 GUI 存活边界并避免追赶多个错过周期。
|
||||
|
||||
供应商可提供关闭、每天或每周的设置,并决定是否允许用户覆盖;禁止覆盖时供应商设置生效,允许覆盖时用户可显式覆盖或恢复跟随供应商。供应商未提供配置时默认关闭,默认间隔为每天;供应商要求开启时,首次成功获取该配置即可启用,无需用户再次开启。
|
||||
|
||||
供应商策略与用户覆盖分别保存。供应商暂时禁止覆盖时保留用户选择,重新允许覆盖后恢复;成功响应缺失策略视为撤回,格式错误或更新失败则保留上次有效策略。修改订阅 URL 时清除旧供应商策略、保留用户选择,避免把旧地址的约束施加到新地址。
|
||||
|
||||
在现有 `x_shadowsocksx_ng`、`schema_version: 1` 中增加可选 `auto_update` 对象;自动更新策略与分组树独立解析,避免一个扩展功能的错误破坏另一个功能。
|
||||
|
||||
每天、每周分别表示本次更新结束后 24 小时、7 天,再加入基础间隔 0~10% 的随机延后。手动和自动更新无论成功或失败,都重新安排下一次,不额外短时重试;关闭时不产生自动计划。下次计划时间持久保存,重启不重新抽取抖动;最后更新时间仍仅表示最后成功更新。
|
||||
Reference in New Issue
Block a user