mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-24 10:31:09 +08:00
chore: add passkey test server and v3.2 changelog
- Add minimal test server for passkey development (no downloader check) - Add changelog for version 3.2 features Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
35
backend/src/test_passkey_server.py
Normal file
35
backend/src/test_passkey_server.py
Normal file
@@ -0,0 +1,35 @@
|
||||
"""
|
||||
Minimal test server for passkey development.
|
||||
Uses the real auth and passkey API routes without the downloader check.
|
||||
Run with: uv run python test_passkey_server.py
|
||||
"""
|
||||
import uvicorn
|
||||
from fastapi import FastAPI
|
||||
|
||||
from module.api.auth import router as auth_router
|
||||
from module.api.passkey import router as passkey_router
|
||||
from module.database import Database
|
||||
from module.update.startup import first_run
|
||||
|
||||
app = FastAPI(title="AutoBangumi Passkey Test")
|
||||
|
||||
# Mount real routers
|
||||
app.include_router(auth_router, prefix="/api/v1")
|
||||
app.include_router(passkey_router, prefix="/api/v1")
|
||||
|
||||
|
||||
@app.on_event("startup")
|
||||
async def startup():
|
||||
"""Create tables and default user (no downloader check)"""
|
||||
with Database() as db:
|
||||
db.create_table()
|
||||
db.user.add_default_user()
|
||||
|
||||
|
||||
@app.get("/")
|
||||
def index():
|
||||
return {"status": "Passkey test server running"}
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
uvicorn.run(app, host="0.0.0.0", port=7892)
|
||||
55
docs/changelog/3.2.md
Normal file
55
docs/changelog/3.2.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# [3.2] - 2025-01
|
||||
|
||||
## Backend
|
||||
|
||||
### Features
|
||||
|
||||
- 新增 WebAuthn Passkey 无密码登录支持
|
||||
- 支持注册、认证、管理 Passkey 凭证
|
||||
- 支持多设备凭证(iCloud Keychain 等)备份检测
|
||||
- 支持克隆攻击防护(sign_count 验证)
|
||||
- 认证策略模式,统一密码登录和 Passkey 登录接口
|
||||
- 数据库层新增异步支持(aiosqlite),为 Passkey 操作提供非阻塞 I/O
|
||||
- `UserDatabase` 支持同步/异步双模式,兼容新旧代码路径
|
||||
- `Database` 上下文管理器同时支持 `with`(同步)和 `async with`(异步)
|
||||
|
||||
### Changes
|
||||
|
||||
- 升级 WebAuthn 依赖至 py_webauthn 2.7.0
|
||||
- `_get_webauthn_from_request` 优先使用浏览器 Origin header,修复跨端口开发环境下的验证问题
|
||||
- `auth_user` 和 `update_user_info` 转为异步函数
|
||||
|
||||
### Bugfixes
|
||||
|
||||
- 修复 `aaguid` 类型错误(py_webauthn 2.7.0 中为 `str`,不再是 `bytes`)
|
||||
- 修复 `credential_backup_eligible` 字段不存在的问题(改用 `credential_device_type`)
|
||||
- 修复 `verify_authentication_response` 传入无效参数 `credential_id` 导致 TypeError
|
||||
- 修复程序启动错误
|
||||
- 修复程序重启错误
|
||||
- 修复 episode 解析支持 int 和 float 类型
|
||||
- 修复 #805、#855
|
||||
- 修复多行标题解析后处理问题
|
||||
- 修复全局 RSS 过滤器需要重启才能生效的问题
|
||||
|
||||
## Frontend
|
||||
|
||||
### Features
|
||||
|
||||
- 全新 UI 设计系统重构
|
||||
- 统一的设计令牌(颜色、字体、间距、阴影、动画)
|
||||
- 支持亮色/暗色主题切换
|
||||
- 完善的无障碍访问支持(ARIA、键盘导航、焦点管理)
|
||||
- 响应式布局适配移动端
|
||||
- 新增 Passkey 管理面板(设置页)
|
||||
- WebAuthn 浏览器支持检测
|
||||
- 设备名称自动识别
|
||||
- Passkey 列表展示与删除
|
||||
- 登录页新增 Passkey 指纹登录按钮
|
||||
- 新增可调比例图片组件
|
||||
- 新增移动端搜索样式
|
||||
- 优化移动端 Bangumi 列表样式
|
||||
|
||||
### Changes
|
||||
|
||||
- 重构搜索逻辑,移除 rxjs 依赖
|
||||
- 升级前端依赖
|
||||
Reference in New Issue
Block a user