mirror of
https://github.com/kuhyx/steam-backlog-enforcer.git
synced 2026-11-10 19:27:04 +01:00
Pin earned-time v0.19.0, leisure-watch v0.2.4
Tests isolate FOCUS_PROJECT_DATA so a live project never leaks in. Also bumps the freshness gate's stale dev pins and websockets. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WzxdWYcmik6APnHfc9gEVy
This commit is contained in:
parent
fb866978be
commit
73afad98f9
@ -110,8 +110,8 @@ repos:
|
||||
- --disable-error-code=list-item
|
||||
additional_dependencies:
|
||||
- types-requests
|
||||
- earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.18.0#subdirectory=earned_time
|
||||
- leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.3
|
||||
- earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.19.0#subdirectory=earned_time
|
||||
- leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.4
|
||||
|
||||
# ===========================================================================
|
||||
# PYLINT
|
||||
@ -131,8 +131,8 @@ repos:
|
||||
# (steam_backlog_enforcer._mcp_server).
|
||||
additional_dependencies:
|
||||
- aiohttp==3.14.5
|
||||
- earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.18.0#subdirectory=earned_time
|
||||
- leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.3
|
||||
- earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.19.0#subdirectory=earned_time
|
||||
- leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.4
|
||||
- howlongtobeatpy==1.0.24
|
||||
- mcp==2.3.0
|
||||
- pytest
|
||||
|
||||
@ -13,14 +13,14 @@ dependencies = [
|
||||
# transitively via howlongtobeatpy and websockets was undeclared — both
|
||||
# are declared here so a clean install imports the package.
|
||||
"aiohttp==3.14.5",
|
||||
"websockets==17.3",
|
||||
"websockets==17.4",
|
||||
# The earner registry (gaming budget terms); stdlib-only, so the root
|
||||
# daemon imports it from the desktop user's site-packages.
|
||||
"earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.18.0#subdirectory=earned_time",
|
||||
"earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.19.0#subdirectory=earned_time",
|
||||
# The shared /proc game scan and the signed leisure facts (shadow budget,
|
||||
# contract C4); stdlib-only, imported by root from the user site like
|
||||
# earned-time.
|
||||
"leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.3",
|
||||
"leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.4",
|
||||
]
|
||||
|
||||
# Optional extras. The `mcp` group is ONLY needed by the MCP server
|
||||
|
||||
@ -5,20 +5,20 @@ aiohttp==3.14.5
|
||||
bandit==1.9.4
|
||||
codespell==2.4.3
|
||||
coverage==7.17.0
|
||||
earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.18.0#subdirectory=earned_time
|
||||
earned-time @ git+https://github.com/kuhyx/utils@earned-time-v0.19.0#subdirectory=earned_time
|
||||
howlongtobeatpy==1.0.24
|
||||
leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.3
|
||||
leisure-watch @ git+https://github.com/kuhyx/leisure-watch@leisure-watch-v0.2.4
|
||||
mcp==2.3.0
|
||||
mypy==2.4.0
|
||||
mypy==2.4.1
|
||||
pre-commit==4.7.0
|
||||
pylint==4.1.3
|
||||
pytest==9.1.1
|
||||
pytest==9.2.0
|
||||
pytest-cov==7.1.0
|
||||
pytest-randomly==5.0.0
|
||||
pytest-sugar==1.1.1
|
||||
pytest-timeout==2.4.0
|
||||
pytest-xdist==3.8.0
|
||||
requests==2.34.2
|
||||
ruff==0.17.2
|
||||
types-requests==2.33.0.20261006
|
||||
websockets==17.3
|
||||
ruff==0.17.3
|
||||
types-requests==2.33.0.20261030
|
||||
websockets==17.4
|
||||
|
||||
16
steam_backlog_enforcer/tests/_no_live_focus_project.py
Normal file
16
steam_backlog_enforcer/tests/_no_live_focus_project.py
Normal file
@ -0,0 +1,16 @@
|
||||
"""Autouse: no live focus project reshapes the earner registry in a test."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
import pytest
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def _no_live_focus_project(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> None:
|
||||
"""Point focus_project at an empty directory (earned_time >= 0.19)."""
|
||||
monkeypatch.setenv("FOCUS_PROJECT_DATA", str(tmp_path / "focus_project"))
|
||||
@ -31,6 +31,7 @@ from steam_backlog_enforcer.tests._isolate_playtime import _isolate_playtime
|
||||
from steam_backlog_enforcer.tests._isolate_reading import _isolate_reading
|
||||
from steam_backlog_enforcer.tests._isolate_shadow import _isolate_shadow
|
||||
from steam_backlog_enforcer.tests._no_fast_install import _no_fast_install
|
||||
from steam_backlog_enforcer.tests._no_live_focus_project import _no_live_focus_project
|
||||
from steam_backlog_enforcer.tests._no_real_effects import (
|
||||
_no_live_games,
|
||||
_no_real_effects,
|
||||
@ -52,6 +53,7 @@ __all__ = [
|
||||
"_isolate_reading",
|
||||
"_isolate_shadow",
|
||||
"_no_fast_install",
|
||||
"_no_live_focus_project",
|
||||
"_no_live_games",
|
||||
"_no_real_effects",
|
||||
"_no_systemd_run",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user