|
9 | 9 | - 支持多设备凭证(iCloud Keychain 等)备份检测 |
10 | 10 | - 支持克隆攻击防护(sign_count 验证) |
11 | 11 | - 认证策略模式,统一密码登录和 Passkey 登录接口 |
12 | | -- 数据库层新增异步支持(aiosqlite),为 Passkey 操作提供非阻塞 I/O |
13 | | -- `UserDatabase` 支持同步/异步双模式,兼容新旧代码路径 |
14 | | -- `Database` 上下文管理器同时支持 `with`(同步)和 `async with`(异步) |
| 12 | +- 新增日历视图,集成 Bangumi.tv 放送时间表 |
| 13 | +- 新增下载器 API 和管理接口 |
| 14 | +- 全面异步化改造 |
| 15 | + - 数据库层新增异步支持(aiosqlite),为 Passkey 操作提供非阻塞 I/O |
| 16 | + - `UserDatabase` 支持同步/异步双模式,兼容新旧代码路径 |
| 17 | + - `Database` 上下文管理器同时支持 `with`(同步)和 `async with`(异步) |
| 18 | + - RSS 引擎、下载器、检查器、解析器全面转为异步 |
| 19 | + - 网络请求从 `requests` 迁移至 `httpx`(AsyncClient) |
| 20 | +- 后端迁移至 `uv` 包管理器(pyproject.toml + uv.lock) |
| 21 | +- 服务器启动使用后台任务,避免阻塞 |
15 | 22 |
|
16 | 23 | ### Changes |
17 | 24 |
|
18 | 25 | - 升级 WebAuthn 依赖至 py_webauthn 2.7.0 |
19 | 26 | - `_get_webauthn_from_request` 优先使用浏览器 Origin header,修复跨端口开发环境下的验证问题 |
20 | 27 | - `auth_user` 和 `update_user_info` 转为异步函数 |
| 28 | +- `TitleParser.tmdb_parser` 转为异步函数 |
| 29 | +- `RSSEngine` 方法全面异步化(`pull_rss`、`refresh_rss`、`download_bangumi`、`add_rss`) |
| 30 | +- `Checker.check_downloader` 转为异步函数 |
| 31 | +- `ProgramStatus` 从 threading 迁移至 asyncio(Event、Lock) |
21 | 32 |
|
22 | 33 | ### Bugfixes |
23 | 34 |
|
24 | 35 | - 修复 `aaguid` 类型错误(py_webauthn 2.7.0 中为 `str`,不再是 `bytes`) |
25 | 36 | - 修复 `credential_backup_eligible` 字段不存在的问题(改用 `credential_device_type`) |
26 | 37 | - 修复 `verify_authentication_response` 传入无效参数 `credential_id` 导致 TypeError |
27 | | -- 修复程序启动错误 |
28 | | -- 修复程序重启错误 |
29 | | -- 修复 episode 解析支持 int 和 float 类型 |
30 | | -- 修复 #805、#855 |
31 | | -- 修复多行标题解析后处理问题 |
32 | | -- 修复全局 RSS 过滤器需要重启才能生效的问题 |
| 38 | +- 修复程序启动阻塞服务器的问题 |
| 39 | +- 修复搜索接口导出与组件不匹配的问题 |
| 40 | +- 修复 poster 端点路径检查错误拦截所有请求 |
| 41 | +- 修复 OpenAI 解析器安全问题 |
| 42 | +- 修复数据库测试使用异步会话与同步代码不匹配 |
33 | 43 |
|
34 | 44 | ## Frontend |
35 | 45 |
|
|
45 | 55 | - 设备名称自动识别 |
46 | 56 | - Passkey 列表展示与删除 |
47 | 57 | - 登录页新增 Passkey 指纹登录按钮 |
48 | | -- 新增可调比例图片组件 |
49 | | -- 新增移动端搜索样式 |
50 | | -- 优化移动端 Bangumi 列表样式 |
| 58 | +- 新增日历视图页面 |
| 59 | +- 新增下载器管理页面 |
| 60 | +- 新增 Bangumi 卡片悬停覆盖层(显示标题和标签) |
| 61 | +- 新增 `resolvePosterUrl` 工具函数,统一处理外部 URL 和本地路径 |
| 62 | +- 重新设计 LLM 设置面板 |
| 63 | +- 重新设计设置、下载器、播放器、日志页面样式 |
51 | 64 |
|
52 | 65 | ### Changes |
53 | 66 |
|
54 | 67 | - 重构搜索逻辑,移除 rxjs 依赖 |
| 68 | +- 搜索 Store 导出重构,匹配组件期望格式 |
55 | 69 | - 升级前端依赖 |
| 70 | + |
| 71 | +## CI/Infrastructure |
| 72 | + |
| 73 | +- CI 新增 PR 开启时的构建测试(dev 分支 PR 到 main 时自动触发 build) |
| 74 | +- CI 升级 `actions/upload-artifact` 和 `actions/download-artifact` 至 v4 |
| 75 | +- Docker 构建移除 `linux/arm/v7` 平台(uv 镜像不支持) |
| 76 | +- 新增 CLAUDE.md 开发指南 |
0 commit comments