Repository navigation
Releases: 907739769/OSR
Release list
Release v3.4.36
这一版修复作品识别的一个误判:标题相同的续作,会被认成早年就完结的那一部。资源搜索、重命名、刮削共用同一套识别,三处一并修正。
✨ 新增功能
无
🐛 Bug Fixes
- 同标题的续作被认成了早年完结的那部。
- 现象:
The Prince of Tennis II S03E02 2026 1080p CR WEB-DL ...在资源搜索页显示成《新网球王子》(2012),TMDb 链接也指向它;实际是《新网球王子 U-17世界杯篇》的第 3 季。重命名同一个文件也会认错。 - 成因:TMDb 上《新网球王子》(2012) 的英文名逐字就是
The Prince of Tennis II,而《U-17世界杯篇》的英文名是The Prince of Tennis II U-17 WORLD CUP。标题完全相同的候选优先级最高,年份和热度都压不过它;集数也拦不住,第 2 集放在哪部剧上都说得通。真正能分开两者的是「第 3 季 + 2026 年」——2012 那部只有 1 季、当年就播完了,而《U-17世界杯篇》的第 3 季正是 2026 年 10 月开播——这条信息原先没有参与判断。 - 现在:选中的作品如果在「第几季 + 年份」上说不通(没有这一季且早已播完,或年份不在这一季的播出时间里),会接着看排在后面的候选;其中有标题也对得上、而且这一季正是这一年开播的,就改用它。
- 没有更合适的候选时仍然采纳原来那个,不会变成识别不出:文件名里的年份有时只是压制年份(如
The.Office.S03E05.2019),不能单凭它否决。 - 资源搜索页同一组里混着老种和新季时也分得开:
S01 2012仍是《新网球王子》,S03 2026是《U-17世界杯篇》。
- 现象:
⚙️ Improvements
无
📦 Breaking Changes
无
📝 Notes
- 无数据库迁移脚本,无新增配置项。
- 只在文件名/种子标题里同时有季号和年份时才会做这项核对;缺任何一个,识别结果与上一版相同。
- 已经按错误作品重命名或刮削过的文件不会自动更正,需要对它们重新执行一次重命名/刮削。
- 核对用的是识别时本来就要取的剧集信息(有缓存),一般不会多发请求;只有确实需要改选时才为后面的候选各多取一次。
Full Changelog: v3.4.35...v3.4.36
Release v3.4.35
这一版修复上一版「资源搜索」作品识别的一个误判:同名的两部剧会被标成同一部。
✨ 新增功能
无
🐛 Bug Fixes
- 资源搜索把动画标成了同名的真人版。
- 现象:搜「One Piece」,
One Piece S23E1171 1999 1080p CR WEB-DL ...这条动画《航海王》(1999) 的种子,标题下显示的却是真人版《海贼王》(2023),TMDb 链接也指向真人版。重命名同一个文件是对的。 - 成因:为了少发 TMDb 请求,资源搜索把结果按「片名 + 电影/剧集」归成组,每组只拿做种最多的那条去问 TMDb,答案套给全组。动画和真人版片名都是
One Piece、都是剧集,落在同一组;做种最多的是真人版,整组就都成了真人版。重命名是逐个文件识别的,第 1171 集放在只有十几集的真人版上会被直接否决,所以它没有这个问题。 - 现在:认出一组的作品之后,会拿它核对组里其余每条种子——集号是不是远超这部剧的总集数、标的年份是不是既不在首播年附近也不在它那一季的播出时间里。对不上的挑出来单独再问一次 TMDb。反过来也分得开:做种最多的是动画时,真人版的
S01 2023会因为不在动画第 1 季的播出年份里而被挑出来。 - 仍然分不开的情况:种子标题里既没有年份、集号也不出格(如
One Piece S01E05 1080p),没有任何依据可以核对,会跟着同组做种最多的那条走。这种请点 TMDb 链接或站点详情页自己核对。
- 现象:搜「One Piece」,
⚙️ Improvements
无
📦 Breaking Changes
无
📝 Notes
- 无数据库迁移脚本,无新增配置项。
- 只影响资源搜索页显示的作品名、TMDb 链接和「已订阅」标记;下载、订阅匹配、重命名都不受影响,上一版里因为这个误判点了「直接下载」的种子,下到的内容本身没有问题。
- 核对用的是识别时已经取回的剧集信息,一般不会让搜索变慢;只有结果里确实混着同名剧时,才会为挑出来的那部分多问一次。
Full Changelog: v3.4.34...v3.4.35
Release v3.4.34
这一版给「资源搜索」页加上作品识别:搜出来的每条种子会标出它是 TMDb 上的哪部作品、你订没订过,并能直接点开站点详情页。
✨ 新增功能
-
资源搜索页识别每条结果是哪部作品。
- 现象:此前搜出来的是一排种子标题,标题下只有从文件名里解析出的片名。
Stranger Things S04 ...和Stranger Things Tales From 85 ...是不是同一部、哪条是你已经订阅的剧,都得自己辨认。 - 现在:每条结果的标题下显示识别出的作品名和年份(如「怪奇物语 (2016)」),旁边是 TMDb 链接;已经在订阅列表里的作品带「已订阅」标记。筛选栏右侧有一句小结,如「识别出 2 个作品,3 组标题识别不出」。
- 同一部剧的各季、各集归成一组只问一次 TMDb,不会因为结果多就把配额打光。站点(Prowlarr / Jackett)给种子附了 TMDb ID 时优先用它,没有才按标题匹配。
- 「已订阅」只看你自己看得到的订阅:管理员看全部,其他人看自己的和公共订阅。
- 现象:此前搜出来的是一排种子标题,标题下只有从文件名里解析出的片名。
-
罗马音 / 拼音命名的种子也能认出来。
- 现象:国内站的日本动画常用罗马音命名(
Sousou no Frieren S01 ...),而 TMDb 上这部作品的中文名、日文原名、英文名里都没有罗马音,按标题对不上。实测搜「Sousou no Frieren」,100 条结果里 83 条认不出。 - 现在:标题对不上时,改用种子描述里站点自己写的别名(如「葬送的芙莉莲 / 葬送のフリーレン」)再问一次。同一次搜索变成 99 条认出。
- 这条路比按标题匹配更严:搜到的作品名必须与别名完全一致才采纳。描述是站点自填的文字,常带「【原盘首发】」「2026年1月新番」这类修饰,宁可认不出也不乱认。
- 现象:国内站的日本动画常用罗马音命名(
-
每条结果显示站点详情页链接和别名。 标题下多了一行种子描述的第一段(通常是站点写的中文名和别名),以及一个跳到站点详情页的图标。识别不出时,这两样是自己判断「这是哪部剧」最直接的依据。站点没有提供详情页地址的种子不显示这个图标。
-
「转为订阅」带上识别出的作品名。 识别出作品后点「转为订阅」,订阅页会用 TMDb 上的规范名去搜,一搜就是它;此前用的是文件名里解析出的片名,罗马音命名的种子多半搜不到。
🐛 Bug Fixes
无
⚙️ Improvements
- 识别没做完时会明说,不留空白。 以下四种情况都会在筛选栏右侧给出提示,而不是让那些行悄悄空着(空着会被读成「这些种子不是任何作品」):
- 识别功能被关闭;
- TMDb key 没有配置;
- 结果里的标题种类太多(如长寿动画的各季、剧场版、各字幕组写法各不相同),只识别了种子最多的那一部分;
- 在时间预算内没有识别完。
📦 Breaking Changes
无
📝 Notes
- 无数据库迁移脚本。
- 需要先配置 TMDb key 才有识别。 用的就是重命名 / 刮削那一个 key,没配的话搜索照常可用,只是不带作品信息,页面会提示「TMDb key 未配置」。
- 搜索会比以前多等一会儿。 识别是在搜索结果返回前做的,第一次搜某个关键词时:结果里只有几部作品的多等几秒,十几部的多等十几秒;标题种类很多的情况(如搜一部长寿动画的罗马音名)可能多等 20 多秒,偶尔会提示「识别未跑完」。这时再搜一次即可,已经查过的作品会直接命中缓存。
- 识别只是标注,不影响下载和过滤。 「直接下载」「转为订阅」和全局过滤规则的标注都与上一版一致;作品认错或认不出时,可以点 TMDb 链接或站点详情页自己核对。
- 新增三个可调配置项(
application.yml的pt.search段,一般不用改):tmdb-lookup(默认true):是否识别作品。嫌搜索变慢可以关掉。tmdb-lookup-max(默认20):一次搜索最多识别多少组不同的标题,超过时只识别种子最多的这些组。tmdb-lookup-budget-ms(默认30000):识别最多等多久(毫秒)。
Full Changelog: v3.4.33...v3.4.34
Release v3.4.33
这一版修复一个刮削误配:非英语的电影(土耳其语、法语、西语等)可能被识别成同名的花絮/幕后纪录片。
✨ 新增功能
无
🐛 Bug Fixes
- 非英语电影被刮成同名花絮纪录片。
- 现象:
Once.Upon.A.Time.In.Anatolia.2011...被重命名到「Making of Once Upon A Time in Anatolia (2011)」,而不是正片「小亚细亚往事 (2011)」。 - 成因:TMDb 上正片的中文名是「小亚细亚往事」、原名是土耳其语
Bir Zamanlar Anadolu'da,和英文文件名一个字都对不上;同年的花絮没有中文译名,英文标题里正好包含片名,于是排到了第一。OSR 本来会在这种情况下补查一次候选的英文名来纠正,但此前只对中日韩作品补查,把「原名是拉丁字母」误当成「已经比过英文名」。 - 现在:候选作品的原始语言不是英语时,也会补查它在 TMDb 上的英文名。正片的英文名与文件名完全一致,会被优先采纳。英语作品不多发请求,每次搜索的补查次数上限不变。
- 现象:
⚙️ Improvements
无
📦 Breaking Changes
无
📝 Notes
- 无数据库迁移脚本,无新增配置项。
- 已经刮错的文件不会自动纠正:升级后对相关文件重新执行一次重命名/刮削即可归到正确目录;之前生成的错误目录(如
Making of ...)需要手动删除,或用「重命名一致性检查」清理。
Full Changelog: v3.4.32...v3.4.33
Release v3.4.32
这一版主要解决「新集已经下好、却要等很久才出现在媒体库里」的问题:OSR 写完文件后会直接通知 Emby / Jellyfin / Plex 只扫描对应目录,随后提前对账一轮,订阅几分钟内就显示已入库。另外新增资源搜索页、下载器剩余空间告警(自动删种可以按剩余空间触发),字幕体检可以一键找带中字的版本。
✨ 新增功能
- 新文件入库后通知媒体服务器刷新(媒体服务器配置里按台开启,默认关闭)。
- 以前的现象:OSR 写完 .strm、重命名、刮削之后从不通知媒体服务器,新文件要等它自己的定时扫描才出现;订阅的「已入库」也跟着晚,最多要等 10 分钟一轮的对账。
- 现在:打开「新文件入库后通知刷新媒体库」后,STRM 生成、重命名、刮削完成、清理产物删掉文件,都会通知这台服务器只扫描对应的目录。文件先攒 30 秒、按目录合并后再发,一季几十集只算一处;同一个库里目录太多时直接刷整个库。
- 开了刮削的文件,等 NFO 和图片写完才通知。先通知的话,媒体服务器会抢在 NFO 写好之前联网匹配,之后写入的 NFO 要等下一次元数据刷新才生效。
- 删除文件时,空的季目录、剧目录会被一并回收,所以通知的是最近一个还存在的上级目录,媒体服务器重扫时会把已经不在的条目移出库。
- 路径映射:OSR 容器里的路径和媒体服务器看到的路径不同时(比如
/data/media对/media),每行填一条OSR路径 => 媒体服务器路径。映射写错时媒体服务器照样返回成功、什么都不做,所以加了「检查路径映射」按钮:逐条列出 STRM 输出目录、重命名目标目录分别落在哪个媒体库,保存前就能看出对不对。
- 通知发出后提前对账一轮。 等媒体服务器扫完目录(默认 3 分钟)就提前跑一轮入库对账,「下载完成 → 订阅显示已入库」从最多十几分钟缩短到几分钟。同一批新集只多跑一轮;正好碰上定时对账在跑时会稍后重试,刚对过账就跳过。
- 资源搜索页(PT 追剧 → 资源搜索)。
- 不用先建订阅,按关键词直接搜全部站点(可以只选部分站点),看站上有什么版本。
- 结果不按过滤规则淘汰,会被全局过滤规则挡掉的会标出原因(比如「分辨率不在白名单」,鼠标悬停可以看到实际值和阈值),正好用来回答「为什么我订了却没自动下」。可以只看规则会放行的。
- 每条结果可以「转订阅」:跳到订阅页,自动打开建订阅弹窗并用解析出的片名搜好 TMDb。
- 管理员可以「直接下载」:推给选定的下载器,保存路径跟订阅推送一样按智能分类决定。直接下载不进下载记录,OSR 不追踪它的进度,也不下发 H&R 分享限制(推送弹窗里写明了);想被追踪就用「转订阅」。
- 下载器剩余空间告警。
- 下载器卡片上显示剩余空间(每 15 分钟读一次)。
- 下载器设置里可以填「剩余空间告警线」:低于时进首页待办、并发通知。通知只在刚低于、持续低位每满一天、恢复这三个时刻各发一次。
- 自动删种可以按剩余空间触发。 下载器的自动删种设置里新增「仅在剩余空间低于 X GB 时删种」:空间够时不删;不够时从最大的辅种组开始删,腾够就停。规则里只删种子、不删文件的组腾不出空间,不计入腾出量。读不到剩余空间时一个都不删。删种预览里会写明「剩余空间充足,暂不删除」「前面的组已腾够空间」等原因。
- 字幕体检可以一键「找中字版本」。
- 国内字幕源基本都停了,媒体服务器的字幕插件搜不出东西;而 PT 站上同一集几乎总有带中字的发布。
- 字幕体检里缺中字的作品后面多了「找中字版本」:按集搜全部站点,只要这一集的单集资源、且标题或描述带中字标识(CHS / CHT / 中字 / 简繁英 / 双语等,与「外语片需中字」过滤是同一套判断),照常过过滤规则后择优,走洗版通道推送,下完自动换上。
- 旧版本不会自动删除,新旧两份会同时存在,与洗版一样需要手动清理。
- 一次最多处理 6 集;每集结果分开显示:已推送中字版、站上没有中字版、被过滤规则挡掉、没搜到、暂不能换(不是已入库状态)、推送失败。
🐛 Bug Fixes
无
⚙️ Improvements
- 首页待办新增「下载器空间不足」一项,排在「下载器离线」之后。
- 洗版推送没成功时,会把具体原因带回给用户,与匹配日志里的是同一句话(目前「找中字版本」在用)。
📦 Breaking Changes
无
📝 Notes
- 本版新增三个数据库迁移脚本:
20260812(媒体服务器表新增library_notify、path_mapping两列)、20260813(新增「资源搜索」菜单)、20260814(下载器表新增free_space_warn_gb、auto_delete_free_below_gb两列)。启动时自动执行,不需要手动跑 SQL。 - 新功能的开关默认都是关的,升级后行为不变:媒体服务器的「入库后通知刷新」要逐台打开;下载器的告警线与「按空间删种」默认为空。
- 新增可调配置(
application.yml):pt.library.early-sync-delay-seconds(通知后多久提前对账,默认 180 秒,0 关闭)、pt.downloader.space-check-minutes(剩余空间检查间隔,默认 15 分钟)。 - 开启刷新通知后,建议先点一次「检查路径映射」。STRM 输出目录如果只是重命名的来源、本身不在媒体库里,显示「不在任何媒体库下」是正常的。
- 剩余空间:qBittorrent 从
sync/maindata读(旧版本可能没有这个字段),Transmission 需要 2.80 以上,且下载器上配置的保存路径要在 Transmission 那台机器上真实存在。读不到时卡片显示「未读取」,不会告警,也不会按空间删种。 - Plex 的媒体库刷新目前只在模拟环境验证过,用 Plex 的话欢迎反馈结果。
Full Changelog: v3.4.31...v3.4.32
Release v3.4.31
这一版主要解决「补搜只会下季包、单集要自己一集一集手动搜」的问题,尤其是动漫:站上的「季包」经常只有半季,以前会被反复推送、反复白跑,单集永远轮不到。另外,缺集体检现在可以自动为缺集的订阅打开自动补搜。
✨ 新增功能
- 季包不含要补的集后,这部剧的补搜自动改为「单集优先」。
- 以前的现象:缺 3 集及以上时,补搜先推季包。动漫的季包标题常写
S01,实际只有 1~12 集,缺第 13 集往后时就会「推季包 → 下载器文件列表显示包里没有 → 中止、集退回缺失 → 下一轮换个字幕组的季包再推」。站上有几个版本就白跑几轮,每轮之间隔一个补搜周期;季包推送期间这些集处于「在途」,同一轮里单集那一步直接跳过,所以站上明明有单集也不会下。 - 现在:整季包一旦被下载器文件列表证实不含(或只含一部分)要补的集,这条订阅就自动改为「单集优先」:以后不论缺几集,补搜都先搜单集,单集补不上的才用季包兜底。自动改的那一刻,「种子内不含任何目标集」或「季包实际不含全季」通知末尾会多一句说明。
- 只对整季包生效。区间包、单集对不上集号,只说明那一个种子标错了,不会触发。
- 订阅卡片「更多」里可以手动「改为单集优先 / 恢复季包优先」(电脑端和手机端都有)。已知季包只有半季的长篇动漫可以直接设成单集优先,省掉第一次白跑。策略不是默认时,卡片上会显示「单集优先」标签,鼠标悬停能看到是你设的还是系统自动改的。系统自动改的不会自己恢复,要你手动点「恢复季包优先」。
- 只影响补搜的先后顺序。RSS 里新出现的季包照常匹配。
- 以前的现象:缺 3 集及以上时,补搜先推季包。动漫的季包标题常写
- 缺集体检可以自动开启自动补搜(参数设置 → PT 订阅,默认关闭)。
- 自动补搜默认关,是为了避免追完的老剧一直空转。代价是订阅建完没去开的剧,缺了集也不会有人去搜,以前只能看到体检提醒后逐条去点开。
- 打开这个开关后,每天体检时,对播出超过 3 天仍缺集、又没开自动补搜的订阅自动打开补搜,由原有的补搜任务按正常节奏接手。当天的逾期提醒里,这些剧会写「已自动开启自动补搜」。
- 补齐后会自动关回去:订阅完结或暂停时关;或者没有缺集、也没有下载中的集,且开启和最近一次下载都已超过 7 天时关。只关它自己打开的那些。你在订阅卡片、订阅页批量操作或体检页手动动过开关的订阅,之后都归你管,它不会再碰。
🐛 Bug Fixes
- 自动补搜的几处问题。
- 只剩未播集、实际不需要搜的订阅,以前也被计为「已检索」,并且每 30 分钟刷一条 INFO 日志。现在不再计入。
- 单集补发每轮有集数上限(默认 5 集)。以前超出上限时总是取集号最小的那几集,如果这几集站上确实没有单集资源,后面站上有的集永远轮不到。现在按「最久没被补搜过」轮换。
- 季包只占位已经播出的缺失集。以前连未播集也一起占位,下载器文件列表回来后再退回,同时发一条「季包实际不含全季」的假警报;而且在这期间新播出的集没法被 RSS 认领。
- 季搜索时如果没有任何索引器成功应答(全部离线或超时),不再继续补发单集检索,避免对着同一批故障站点再打满一轮请求。
- 「无目标集」的失败记录不再出现在首页「下载失败待处理」。 这类种子已经自动中止删除,相关集也已退回重新匹配,没有需要人处理的事,以前却一直挂在首页。存量记录由迁移脚本补齐。统计仪表盘的失败数和成功率不受影响。
⚙️ Improvements
- 修改订阅的接口补上了归属校验:非管理员不能再通过这个接口改别人的订阅。
📦 Breaking Changes
无
📝 Notes
- 本版新增两个数据库迁移脚本:
20260810(补齐「无目标集」记录的已忽略标记)和20260811(订阅表新增season_pack_policy、health_auto_search_time两列,并新增一条参数配置)。启动时自动执行,不需要手动跑 SQL。 - 新增可调配置:参数设置 → PT 订阅 →「缺集体检自动开启补搜」(
openlist.pt.health.autosearch),默认关闭。 - 升级后所有订阅的季包策略都是默认的「自动」(缺 3 集及以上先试季包,阈值仍由
pt.search.season-pack-min-missing决定)。之后每遇到一次季包不含目标集,相应订阅就会自动改为单集优先,所以升级后头几天可能陆续收到带「此后补搜改为单集优先」说明的通知,这是正常的。 - 已知情况:如果 TMDb 上这一季比实际多列了集(比如特别篇),一个完整的季包也可能被判成「不全」,那部剧就会改为单集优先。影响只是先搜单集,季包仍会兜底,需要的话在卡片上改回即可。
- 配置备份暂不包含季包策略,恢复后所有订阅都是默认策略。
Full Changelog: v3.4.30...v3.4.31
Release v3.4.30
这一版修正种子标题的发布组识别:带声道(5.1、7.1)或音轨数(2Audios)的标题,发布组不再被识别成 1-DST、2Audios-HHWEB 这种错误的值;DD 5.1 的音频编码也能识别出来了。
✨ 新增功能
无
🐛 Bug Fixes
- 发布组不再带上声道残片或音轨数。
- 以前的现象:
We'll Find Happiness 2025 1080p WEB-DL H.264 DD 5.1-DST的发布组被识别成1-DST,... DDP5.1 2Audios-HHWEB被识别成2Audios-HHWEB,... Atmos TrueHD7.1-HDH被识别成1-HDH,... DTS-HD MA 5.1-FULLBRUTALiTY被识别成1-FULLBRUTALiTY。 - 影响:发布组黑名单按全名匹配,拉黑
DST永远匹配不上这些种子,照样会下;发布组优先级同样失效;重命名产出的文件名结尾也会带上这段错误的组名。 - 成因:解析时会把
5.1里的点换成空格,变成5 1。声道没跟着音频编码一起被识别掉时,标题结尾剩下1-DST。而发布组的判定规则是「这一段中间有连字符,就整段算组名」(为了支持lijiang-tv这种本身带连字符的组名),于是1-、2Audios-也被算了进去。 - 现在:结尾那段开头如果是声道残片(一两位数字)或音轨数(
2Audio/2Audios),就去掉这部分,只取后面的内容当组名。lijiang-tv这类组名、01-03这类集号区间的处理都不变。
- 以前的现象:
DD 5.1的音频编码识别为 AC3。 以前音频识别只认DD+/DDP,不认单独的DD,这类种子的音频编码是空的,「必需标签 AC3」之类的过滤条件对它们不起作用。DDP5.1仍识别为 EAC3,不受影响。
⚙️ Improvements
无
📦 Breaking Changes
无
📝 Notes
- 本版没有新增数据库迁移脚本。
- 本版没有新增或改动可调配置项。
- 修复只作用于之后解析的标题和文件:已经生成的文件名、已经存进下载记录的发布组不会自动更正,需要的话重新刮削即可更名。
- 如果之前在下载记录里点过「拉黑发布组」,黑名单里可能存的是
1-DST、2Audios-HHWEB这种错误的值,建议去黑名单页面检查一下,改成正确的组名。
Full Changelog: v3.4.29...v3.4.30
Release v3.4.29
这一版让 Telegram 机器人的配置改完就生效:在参数设置里改了 Bot Token 或用户 ID,保存后约 2 秒机器人自动按新配置重新连上,不用再重启后端。
✨ 新增功能
- Telegram 机器人配置改完即生效,不用重启。
- 以前的问题:Telegram 分两部分。发通知那部分每次都读最新配置,改完就能收到;但收指令那部分(
/strm、/sub这些指令,以及通知上的按钮)只在后端启动时连一次,之后再也不看配置。于是改了 Token 或用户 ID 之后,通知已经换了,指令和按钮却还是旧的,只能重启后端。 - 现在保存
openlist.tg.*的任意参数后,约 2 秒机器人会停掉旧连接、按新配置重新连上。参数设置页、配置备份恢复、「刷新缓存」这几种改法都会触发。 - 等 2 秒是有意的:备份恢复会逐条写入 Token 和用户 ID,这段时间里的多次改动合并成一次,避免中途拿「新 Token + 旧用户 ID」连一次错的。
- 把 Token 或用户 ID 清空,机器人会停下来,不再接收指令。
- Token 填错导致连接失败时,改对后保存即可,原样再保存一次也会重试。
- 以前的问题:Telegram 分两部分。发通知那部分每次都读最新配置,改完就能收到;但收指令那部分(
🐛 Bug Fixes
- 后端关闭时机器人现在会正常断开。 以前关闭后端时没有主动停掉机器人,它的本地数据文件也不会被正常关闭;现在会先停机器人、关好文件再退出。
⚙️ Improvements
无
📦 Breaking Changes
无
📝 Notes
- 本版没有新增数据库迁移脚本。
- 本版没有新增或改动可调配置项。
- 只改用户 ID、Token 不变时,日志里可能短暂出现一条
409 Conflict。原因是旧连接要等 Telegram 那边超时才真正断开,这段时间新旧连接会冲突。这是正常现象,不会丢消息,一分钟内自行消失。 - 重连成功时日志里会有一行「Telegram 机器人已按新配置重启,管理员 userId=…」,可以用它确认新配置已经生效。
Full Changelog: v3.4.28...v3.4.29
Release v3.4.28
这一版给下载记录页加了三样东西:正在下载的种子能看到实时速度和剩余时间,可以直接暂停 / 继续,也可以删除下载。删除有明确的边界:H&R 保种考核期内的种子一律不给删。
✨ 新增功能
-
下载记录页显示实时速度和剩余时间。
- 以前的问题:卡片上只有一根进度条,而且 30 秒才更新一次。看不出种子是在正常下载、下得很慢,还是根本没有连上做种者。
- 现在下载中的卡片在进度条下方多了一行,例如「↓ 2.0 MB/s · 剩余 10 分钟」,每 5 秒刷新一次,进度条也跟着走。没速度时会写「暂无下载速度,正在等待连接做种者」。
- 只在有人看的时候才去问下载器:当前页有下载中的记录、页面在前台、浏览器标签页可见,三个条件都满足才刷新,切走就停。速度是瞬时值,不写数据库。
- 下载器连不上时不弹错误,只是不显示速度;离线提醒仍然由首页「待办提醒」负责。
-
可以暂停 / 继续一个下载中的种子。
- 卡片上多了「暂停」按钮,暂停后显示「已暂停」,按钮变成「继续」。移动端按钮在卡片上,和「重试」并排。
- 为什么要在 OSR 里暂停,而不是去下载器里点:OSR 对下载有两道按时间判的兜底——推送后 24 小时仍没下完判为「下载超时」,还有「种子无响应」的判定。如果直接在下载器里暂停一天,这个种子会被判成下载超时;没下完、也没做过种的种子还会被 OSR 当成废种从下载器里删掉。在 OSR 里暂停的时长会从这两道判定里扣掉。
- 只有「下载中」的记录能暂停。已下载完成的种子暂停等于停止做种,会让 H&R 考核的做种时长停下来,所以不给这个按钮;点暂停的那一刻如果种子其实刚好下完,也会被拒绝。
- 多集包选完目标集之后,OSR 原本会自动启动种子;现在如果你暂停了它,就不会被自动启动。
- 如果暂停之后你直接在下载器里点了继续,OSR 会在下一轮追踪时发现并撤掉暂停标记,下载超时的计时恢复正常。
-
可以删除下载。
- 卡片上多了「删除下载」(移动端在「…」菜单里),点了会先弹确认框,写清楚这次会删掉什么。
- H&R 保种考核中的种子一律不给删,考核结果不明的也不给(比如站点是后来才开的 H&R、没有达标记录)。这是硬边界,页面上不显示按钮,后端也会再拦一次。
- 正在下载的:从下载器删掉任务,可以勾选「同时删除已下载的文件」(默认不勾)。这条记录会变成失败,原因记作「用户删除」,并自动标为「已忽略」,不会出现在首页待办里;对应的集退回缺失,之后的自动补搜 / RSS 可能推送别的种子,但不会再自动选中这一个。想要回这个种子,仍然可以点「重试」。
- 已下载完成的(H&R 已达标或站点不考核):只从下载器移除任务、不再做种,文件一律保留——媒体库或 STRM 可能正在使用它们。这种情况下没有「同时删除文件」的选项。
- 下载超时判失败、但种子还留在下载器里的:可以在这里顺手清掉。其他失败原因的记录,种子本来就不在下载器里了,不显示删除按钮。
- 只按 OSR 推送时打的标签或种子 hash 找种子,不按种子名找:IYUU 辅种的兄弟种子名字往往一字不差,按名字找可能删错。
- 有 H&R 的站点,删除一个下载了一部分的种子时,确认框会额外提醒:部分站点对下载过一部分的种子也会计入考核,删除前请确认站点规则。
🐛 Bug Fixes
- 修掉了下载追踪可能把刚处理完的记录「改回去」的隐患。
- 下载追踪每 30 秒更新一次进度,原来是把整条记录读出来、改完再整行写回。如果这期间用户在页面上暂停或删除了这条记录,这次写回会用旧值覆盖掉,比如刚删掉的记录又变回「下载中」。
- 现在追踪只更新进度和状态这几列,而且只在记录仍是「已推送 / 下载中」时才写。
⚙️ Improvements
- 统计仪表盘的失败原因饼图多了一类「用户删除」,用最淡的中性色,和真正的失败区分开。下载记录页的「失败原因」筛选里也可以单独筛出它。
📦 Breaking Changes
无
📝 Notes
- 新增数据库迁移脚本
20260809-pt-download-record-user-pause.sql,给下载记录表加了两列(暂停开始时间、累计暂停秒数)。启动时自动执行,不需要手动跑 SQL;已有记录默认都是「未暂停」。 - 没有新增或改动配置项。
- 暂停中的种子仍然占用该下载器的「最大并发数」名额。暂停太多个,新集的推送会因为下载器已满而排队。
- 「用户删除」在统计里仍然算失败:统计仪表盘的失败数与成功率照常计算,只是不进首页待办。
- 删除下载是「OSR 从不删种」这条原则的第三个受控例外(另外两个是清理从没下载成功的废种,以及你为某个下载器显式开启的自动删种)。它只在你逐条手动点击时发生,OSR 不会自己删除。
Full Changelog: v3.4.27...v3.4.28
Release v3.4.27
Full Changelog: v3.4.26...v3.4.27