Repository navigation
v0.2.5
修复多 profile 下数据目录选错、国际版活动赠送包不可见与「9999 年」假日期。 无 breaking、无需改配置。
修复
- 多 profile 下插件数据目录可能落到错误的 profile(#15,感谢 @jipika):当
profiles/下存在一个把整棵node_modules软链到别的 profile 的残留目录时,它和真正在跑的 profile 会同时通过 realpath 比较,胜负被交给readdirSync顺序 —— 插件于是把凭据写进一个空目录,状态路由显示未登录,看起来像"升级把凭据弄丢了"。现在:- 整目录软链的 profile 一律出局(单候选时也一样),并打 warn;
- 宿主报告的运行中 profile(
profileContext.dir)优先于任何目录推断; - 候选无法判定(0 个或 ≥2 个合格)时打 warn 并列出候选,不再静默挑一个;
- 顺带修掉"数据目录在
apply()早期就被冻结"的时序问题。
- 国际版活动赠送包完全不可见(#16,感谢 @JeffTsuiCUG):国际版把活动包放在
dedicatedResourcePackages数组里,此前从未被读取,所以 Qoder 网页上明明有的一笔额度(如「SOTA 专属积分」2,000)在侧栏与「Qoder 额度」明细里都不存在。现在它会按上游给出的多语言标题单独成行,并携带该包自己的到期日(活动代号不会出现在界面上)。 9999-12-31被当成真实日期(同 PR #16):上游对个人账号的"不设到期"回的是253402214400000哨兵,此前被原样渲染成重置时间:9999年12月31日,并被复制给每一行、覆盖掉包级真实到期日。现在哨兵被识别为"没有到期":界面不再出现9999,账号整体无到期时改为显示 PAT 授权时间。- 额度面板底部两行文案会并列出现:「PAT 授权于…」现在只在账号确实没有整体到期时间时才出现,不再与真实的「到期 …」同时显示(与插件卡片状态页口径一致)。
说明
- 本次改动涉及路径判定与额度解析,未改变任何请求协议、配置文件格式或凭据存放位置(数据目录仍是
<profile>/.dsh-qoder-connect/)。 - 关于 #15 为何长期未暴露(触发它需要两个候选解析到同一实体,常规安装形态下候选天然唯一),见 #15 的回复。
安装 / 升级
dsh plugin --profile web add dsh-qoder-connect@0.2.5
# 或跟随 latest
dsh plugin --profile web add dsh-qoder-connect@latest升级后建议重启一次宿主并硬刷新页面,让 host 侧与浏览器端产物一起生效。