jxxghp
c89066d96f
refactor: route media source settings through runtime
2026-08-23 03:20:03 +08:00
jxxghp
1402626a4a
refactor(tmdb): 空结果缓存过期时间收敛为设置项 EMPTY_RESULT_CACHE_TTL
...
- ConfigModel TMDB 配置区新增 EMPTY_RESULT_CACHE_TTL(默认 30 分钟),支持环境变量覆盖
- request/async_request/discover/TmdbCache 统一改读 settings,移除模块级常量与跨模块导入
2026-08-16 21:20:32 +08:00
jxxghp
fa06a4ac03
fix(tmdb): 空结果缓存使用独立短 TTL,故障恢复后快速自愈,关闭 #6332
...
- cached 装饰器新增 empty_ttl/empty_if,空结果按独立短 TTL 写入
- TMDB request/async_request/discover 空结果快照 30 分钟过期
- TmdbCache 未识别负缓存(id=0)同步改用 30 分钟短 TTL,正缓存不变
2026-08-16 20:50:55 +08:00
jxxghp
4345fcfa22
refactor(chain): chain 与 module 仅经 run_module 契约互联,实现模块内容封闭
...
- mTorrent 字幕链接解析下沉为 IndexerModule.site_subtitle_links,subtitle 模块自行跳过 API 站点
- TMDB/MusicBrainz 识别缓存管理改为模块方法(tmdb_cache_*/music_cache_*)经 run_module 分发
- WechatClawBot 客户端查找/临时客户端/缓存迁移内聚为 wechatclawbot_* 模块方法,
chain 移除 WechatClawBot 类与 ModuleManager 内省
- LISTENBRAINZ_* 常量迁至 schemas/types.py,模块与链层再导入保持兼容
- TMDbException 升为 schemas/exception.py 跨层契约,vendored 异常保持类身份一致
- 架构守护测试新增 test_chain_does_not_import_module_internals(共 18 项)
- 文档同步:chain->module 仅允许 run_module 分发,直接导入禁止
2026-08-16 05:25:28 +08:00
jxxghp
369d7d6448
refactor: reorganize backend module boundaries
2026-08-14 19:53:33 +08:00
jxxghp
7b3444c366
refactor backend module architecture
2026-08-14 15:45:38 +08:00
Aqr-K and Aqr-K
a2e70b443d
fix(monitor,transfer): 修复 FUSE 挂载无响应导致的监控冻死、整理链锁死与漏件 ( #6276 )
...
* wip(v3): 移植监控与整理韧性修复到 v3 基线
包含:监控看门狗隔离/挂载探测、整理队列持久化、文件系统子进程代理、
写入原子化。迁移重挂到 v3 链 8a4c7e1d2f90 -> 7f5c1d2e3a4b -> e3d9f4b7c806。
tmdb 相关测试尚未通过,待定位。
* fix(v3): 修正移植引入的 16 项测试失败
- poller.py:合并时我方保留的行仍用旧变量名 merged_snapshot,而 v3 已统一
改名为 current_snapshot,导致 NameError 被外层 except 吞掉、快照从未保存
- smb.py:采纳 f-string 拆分写法,恢复 Python 3.11 可解析
- dispatcher 测试:历史查重由 _should_skip_by_history 统一承担,mock 点随之调整
- tmdb 缓存测试:补充 v3 新增的 media_source/media_id 字段
- tmdb 重试测试:为 fake 补充 match_multi/async_match_multi
尚余 3 项与 v3 识别流程的连接失败处理有关,待单独判断。
* fix(v3): 测试适配 v3 的 media_source/media_id 重构
v3 将媒体标识从 tmdbid 统一重构为 media_source + media_id,recognize_media
的 tmdbid 参数已被 **kwargs 静默吞掉——传了也不生效,流程会误降级到名称搜索。
tmdb 重试用例改用新参数后恢复正确路径。
同时修正 fake 的 match_multi 语义:真实实现(tmdbapi.match_multi)吞掉所有
异常并返回 None,连接失败与「未找到」在该路径上本就不可区分,fake 需保持一致。
至此移植引入的 19 项失败全部清零。
---------
Co-authored-by: Aqr-K <Aqr-K@users.noreply.github.com >
2026-08-13 08:19:54 +08:00
jxxghp
d26225b998
fix(tmdb): stabilize tmdb connection reuse
2026-06-11 12:48:32 +08:00
jxxghp and Claude Opus 4.7
7cc037c683
fix: suppress garbled gzip bytes in tmdb error log
...
When Content-Encoding is present (e.g. gzip), skip logging the raw
response text to avoid unreadable binary output in logs.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-20 18:08:10 +08:00
jxxghp
068d0af4ca
fix: remove tmdb manual gzip fallback
2026-05-20 17:09:31 +08:00
jxxghp
8f117d79f2
Revert "fix: handle tmdb gzip json responses"
...
This reverts commit 47c4e84fdd .
2026-05-20 17:03:47 +08:00
jxxghp
47c4e84fdd
fix: handle tmdb gzip json responses
2026-05-20 16:54:01 +08:00
jxxghp
a5745af484
fix: restore tmdb trending recommendations
2026-05-20 10:55:01 +08:00
jxxghp
c3e4e1a764
fix: decode raw gzip tmdb responses
2026-05-20 10:44:01 +08:00
jxxghp
6edb627145
fix: handle tmdb unicode decode errors
2026-05-20 09:21:36 +08:00
jxxghp
07f51c5d94
fix: handle invalid tmdb json responses
2026-05-20 09:05:18 +08:00
jxxghp
3c055e2482
fix: avoid tmdb cached response mutation
...
Fixes #5777
2026-05-16 08:02:18 +08:00
DDSRem
5a585839ba
chore: remove unused imports and fix function name conflicts ( #5764 )
...
- Remove unused imports in anthropic.py, tmdbv3api/__init__.py, tv.py, test files
- Rename conflicting function names in subscribe.py and webhook.py
- Clean up unused re-exports in tmdbv3api/__init__.py (15 unused exports)
- Apply consistent formatting across API endpoints
2026-05-13 18:59:03 +08:00
jxxghp
5e5c257b75
fix(tmdb): cache serializable response snapshots
...
Avoid caching raw HTTP response objects in TMDb request helpers so Redis no longer fails on embedded locks. Add an isolated regression test for sync and async request snapshots.
Refs #5763
2026-05-12 22:31:56 +08:00
景大侠
4c3d47f1f0
feat(cache): 同步/异步函数可共享缓存
...
- 缓存键支持自定义命名,使异步与同步函数可共享缓存结果
- 内存缓存改为类变量,实现多个cache装饰器共享同一缓存空间
- 重构AsyncMemoryBackend,减少重复代码
- 补齐部分模块的缓存清理功能
2026-02-10 18:46:49 +08:00
Attente
6755202958
feat(cache): 使用 fresh 和 async_fresh 统一缓存控制方式
...
- 修复因缓存导致的插件更新后仍有更新提示的问题
- 统一使用 fresh/async_fresh 控制缓存行为
- 调整 TMDb 模块缓存策略,优化异步请求缓存清除机制
- 移除冗余的缓存方法封装,减少调用层级
- 简化 PluginHelper 中的缓存方法结构,移除 force 参数
2025-11-03 07:41:42 +08:00
Attente
b609567c38
feat(cache): 引入 fresh 和 async_fresh 以控制缓存行为
...
- 新增 `fresh` 和 `async_fresh` 用于在同步和异步函数中
临时禁用缓存。
- 通过 `_fresh` 这一 contextvars 变量实现上下文感知的
缓存刷新机制
- 修改了 `cached` 装饰器逻辑,在 `is_fresh()` 为 True
时跳过缓存读取。
- 修复 download 模块中路径处理问题,使用 `Path.as_posix()` 确保跨平台兼容性。
2025-10-19 22:31:50 +08:00
jxxghp
ff7fb14087
fix cache_clear
2025-09-02 08:35:48 +08:00
jxxghp
90633a6495
fix #4851
2025-08-27 15:57:43 +08:00
jxxghp
983f8fcb03
fix httpx
2025-07-31 13:51:43 +08:00
jxxghp
6873de7243
fix async
2025-07-31 13:32:47 +08:00
jxxghp
ca51880798
fix themoviedb api
2025-07-31 08:40:24 +08:00
jxxghp
8b708e8939
fix themoviedb api
2025-07-31 08:34:47 +08:00
jxxghp
749aaeb003
fix async
2025-07-31 07:07:14 +08:00
jxxghp
423c9af786
为TheMovieDb模块添加异步支持(part 1)
2025-07-30 22:28:12 +08:00
Attente
0f0c3e660b
style: 清理空白字符
...
移除代码中的 trailing whitespace 和空行缩进, 提升代码整洁度
2025-06-29 22:49:58 +08:00
jxxghp
93eec6c4b8
fix cache
2025-06-27 15:24:57 +08:00
jxxghp
574257edf8
add SystemConfModel
2025-06-27 09:54:15 +08:00
jxxghp
23929f5eaa
fix pool size
2025-06-07 22:00:09 +08:00
jxxghp
1a8e0c9ecb
fix #4270
2025-05-14 08:41:06 +08:00
jxxghp
16fc0d31cd
fix #4270
2025-05-14 08:11:50 +08:00
InfinityPacer
ff5d94782f
fix(TMDB): adjust trending cache maxsize to 1024
2025-01-18 23:45:03 +08:00
InfinityPacer
11d4f27268
feat(cache): migrate cachetools usage to unified cache backend
2025-01-18 02:12:20 +08:00
jxxghp
ebffdebdb2
refactor: 优化缓存策略
2024-11-21 15:52:08 +08:00
jxxghp
e2e1c7642d
fix 订阅重置 & TMDB电视剧榜单
2024-06-10 09:38:12 +08:00
thsrite
74c71390c9
fix unhashable type: 'dict'
2024-06-03 09:54:32 +08:00
jxxghp
a278c80951
fix #2151 TMDB发现和趋势修改为TTL缓存
2024-05-24 09:29:51 +08:00
jxxghp
9daff87f2f
fix api
2024-04-26 19:41:17 +08:00
jxxghp
f20b1bcfe9
feat:人物搜索API
2024-04-26 17:47:45 +08:00
jxxghp
a3603f79c8
fix requests
2024-04-10 22:16:10 +08:00
jxxghp
9439d02351
fix TMDB缓存None的问题
2023-11-11 10:37:33 +08:00
jxxghp
cbea7ccdf6
fix TMDB缓存None的问题
2023-11-11 10:34:49 +08:00
jxxghp
3bdd96a8ee
fix #951 不缓存网络错误导致的TMDB信息None
2023-10-26 17:07:01 +08:00
jxxghp
ac3009d58f
fix bug
2023-10-12 08:40:56 +08:00
jxxghp
79c7475435
fix tmdb lru cache
2023-10-05 17:41:02 -07:00