|
1 | | -# [3.2.3-beta.5] - 2026-02-22 |
| 1 | +# [3.2.3] - 2026-02-23 |
2 | 2 |
|
3 | 3 | ## Backend |
4 | 4 |
|
|
9 | 9 | - 10 个工具:list_anime、get_anime、search_anime、subscribe_anime、unsubscribe_anime、list_downloads、list_rss_feeds、get_program_status、refresh_feeds、update_anime |
10 | 10 | - 4 个资源:anime/list、anime/{id}、status、rss/feeds |
11 | 11 | - 本地网络 IP 白名单安全中间件(RFC 1918 + 回环地址),无需 JWT 认证 |
| 12 | +- 新增通知系统重构,支持多通知渠道同时启用 |
| 13 | + - 支持 Telegram、Bark、Server 酱、企业微信、Discord、Gotify、Pushover、Webhook 八种渠道 |
| 14 | + - 新增通知管理 API:`GET/PUT /api/notification/providers` |
| 15 | +- 新增 E2E 集成测试套件,覆盖 RSS→下载→重命名全流程 |
12 | 16 |
|
13 | | ---- |
| 17 | +### Fixes |
14 | 18 |
|
15 | | -# [3.2.3-beta.4] - 2026-02-22 |
16 | | - |
17 | | -## Backend |
| 19 | +- 修复第 0 集(SP/OVA)被错误重命名为第 1 集的问题 (#977) |
| 20 | + - Episode 0 现在免受集数偏移影响,不再覆盖正常集数文件 |
| 21 | +- 修复 RSS 过滤器包含特殊字符(如 `[字幕组`)时导致程序崩溃的问题 (#974) |
| 22 | + - 无效正则表达式自动降级为字面量匹配 |
| 23 | +- 修复聚合 RSS 解析时 `title_raw` 为空导致 `TypeError` 崩溃的问题 (#976) |
| 24 | +- 修复解析器处理无括号种子名称时 `IndexError` 崩溃的问题 (#973) |
| 25 | +- 修复删除番剧时未清理关联种子记录的问题 |
| 26 | +- 修复认证路由、JWT 刷新和 WebAuthn 注册流程的多个安全问题 |
| 27 | +- 修复程序生命周期管理和后台任务取消逻辑 |
| 28 | +- 修复数据库迁移在部分场景下未正确执行的问题 |
18 | 29 |
|
19 | 30 | ### Performance |
20 | 31 |
|
21 | | -- 优化日志系统性能,适配长时间运行的 Docker 环境 |
22 | | - - `RotatingFileHandler` 替代 `FileHandler`(5 MB 轮转,最多 3 个备份 = 20 MB 上限) |
23 | | - - `QueueHandler` + `QueueListener` 实现异步日志写入,不阻塞事件循环 |
24 | | - - `GET /api/log` 仅读取最后 512 KB,防止大日志文件导致 OOM |
25 | | - - 所有 `logger.debug(f"...")` 转为惰性 `%s` 格式化(~80 处),避免禁用 debug 时的无效字符串拼接 |
26 | | - - 移除高频缓存命中的 debug 日志噪音(Mikan、TMDB 解析器) |
27 | | - |
28 | | ---- |
29 | | - |
30 | | -# [3.2.3-beta.3] - 2026-01-30 |
31 | | - |
32 | | -## Backend |
| 32 | +- 优化日志系统:`RotatingFileHandler` 轮转(5 MB × 3)、`QueueHandler` 异步写入、`GET /api/log` 限读 512 KB |
| 33 | +- 优化重命名器:批量数据库查询,并发获取种子文件列表 |
| 34 | +- 所有 `logger.debug(f"...")` 转为惰性 `%s` 格式化(~80 处) |
33 | 35 |
|
34 | | -### Fixes |
35 | | - |
36 | | -- 修复第 0 集被错误重命名为第 1 集的问题 (#977) |
37 | | - - Episode 0 (S01E00) 现在会正确保留,不再被转换为 E01 |
38 | | -- 修复聚合 RSS 解析时 `title_raw` 为空导致崩溃的问题 (#976) |
39 | | - - `match_list()` 现在会跳过空的标题,避免 `TypeError` |
40 | | - |
41 | | ---- |
| 36 | +### Tests |
42 | 37 |
|
43 | | -# [3.2.3-beta.2] - 2026-01-28 |
| 38 | +- 新增 26 个回归测试覆盖 #974、#976、#977、#986 |
| 39 | +- 扩展 raw_parser、torrent_parser、path_parser 测试覆盖率 |
44 | 40 |
|
45 | | -## Backend |
| 41 | +## Frontend |
46 | 42 |
|
47 | 43 | ### Fixes |
48 | 44 |
|
49 | | -- 修复解析器处理无括号种子名称时崩溃的问题 (#973) |
50 | | - - `get_group()` 现在对无 `[字幕组]` 格式的名称返回空字符串 |
| 45 | +- 修复认证路由守卫和 i18n 初始化顺序问题 |
| 46 | +- 修复通知设置组件与项目设计系统的对齐问题 |
| 47 | +- 修复组件生命周期管理问题 |
51 | 48 |
|
52 | | -### Performance |
| 49 | +## Docs |
53 | 50 |
|
54 | | -- 优化重命名器:批量数据库查询,减少阻塞操作 |
| 51 | +- README 移除未实现的 Aria2 和 Transmission 下载器 (#987) |
55 | 52 |
|
56 | 53 | --- |
57 | 54 |
|
|
0 commit comments