feat: 新增 Python 3.14t 自由线程镜像 (#6434)

* fix(resource): select free-threaded extension ABI

* chore(deps): require moviepilot-rust 0.2.9

* perf: add free-threaded runtime comparison

* feat: add free-threaded runtime profile

* chore(deps): require moviepilot-rust 0.3.0

* test: isolate system endpoint import graph

* fix(docker): preserve runtime profile during recovery

* feat(runtime): expose active GIL state

* feat(plugin): log GIL fallback attribution

* test: refresh runtime observability dependency baseline

* fix(plugin): validate the active uv runtime profile

* test(runtime): expand free-threaded benchmark evidence

* docs(runtime): define v3t governance gates

* test(runtime): separate rust benchmark modes

* docs: sync free-threaded architecture baseline

* perf: add PostgreSQL driver comparison

* docs(runtime): record final free-threaded evidence

* fix(runtime): converge dual-profile dependency verification

* fix(runtime): scope Python 3.14 warning filter

* fix(runtime): match actual oss2 syntax warning

* docs(runtime): refresh free-threaded benchmark evidence

* test(architecture): refresh runtime dependency baseline

* ci: skip unused Trivy Java database

* build: exclude local verification artifacts

* docs(runtime): refresh PostgreSQL driver benchmarks

* docs(runtime): record plugin restore acceptance

* docs(runtime): record amd64 candidate acceptance

* ci: pin beta image publisher action

* test(architecture): merge runtime dependency baseline

* feat(runtime): expose Python GIL status

* docs(runtime): document Python runtime status fields
This commit is contained in:
InfinityPacer
2026-08-24 17:48:14 +08:00
committed by GitHub
parent 88dce4ca8e
commit 326b5cf3ad
63 changed files with 5294 additions and 253 deletions
+13
View File
@@ -223,6 +223,19 @@ def test_pg_sync_engine_applies_pool_settings(monkeypatch):
assert captured["url"].startswith("postgresql")
def test_pg_sync_engine_uses_psycopg_on_free_threaded_python(monkeypatch):
"""free-threaded 运行时不能加载会重新启用 GIL 的 psycopg2 扩展。"""
monkeypatch.setattr(engine_module, "is_free_threaded_runtime", lambda: True)
captured = {}
monkeypatch.setattr(engine_module, "create_engine",
lambda **kw: captured.update(kw) or MagicMock())
monkeypatch.setattr(engine_module, "_register_database_error_logging", lambda *_a: None)
engine_module._get_postgresql_engine(is_async=False)
assert captured["url"].startswith("postgresql+psycopg://")
def test_pg_async_engine_pooled_omits_poolclass(monkeypatch):
"""
池化的异步引擎不得指定 poolclass:SQLAlchemy 需自行选用异步适配的