ci(actions): add Gitea Actions ci+release workflows + fix ruff findings
ci / lint (ruff) (push) Has been cancelled
ci / pytest (py3.10) (push) Has been cancelled
ci / pytest (py3.11) (push) Has been cancelled
ci / pytest (py3.12) (push) Has been cancelled

- .gitea/workflows/ci.yml: ruff + matrix pytest on 3.10/3.11/3.12
  on push and PR to main; concurrency cancels superseded runs
- .gitea/workflows/release.yml: gate (ruff + pytest) + build sdist/wheel
  on tag 'v*', uploads via actions/upload-artifact@v4
- README.md: add ci and version badges right under H1
- src/viandante/cli.py: drop unused prompt_toolkit.patch_stdout import
- tests/test_deadsouls.py: add missing RoomBlock import (F821)
- tests/test_logger.py: drop unused local 'raw' in unicode test
- tests/test_mapper.py: rename unused locals to _a/_b/_c (F841) to
  preserve intent (B has 's' back-edge; C is orphan)
This commit is contained in:
truetype committed 2026-07-07 17:15:54 +00:00
1 parent 2a8b472d4c
commit b20f3c0f31
7 files changed
+136 -5

No files matched your search

+1
View File
@@ -4,6 +4,7 @@ from __future__ import annotations
from viandante.deadsouls import (
EXIT_ALIASES,
RollingRoomParser,
RoomBlock,
parse_exits,
parse_room_block,
)
-1
View File
@@ -262,7 +262,6 @@ def test_json_sink_preserves_unicode(tmp_path: Path) -> None:
log = EventLogger(json_path=str(out))
log.text("ilà ★")
log.close()
raw = out.read_text(encoding="utf-8")
events = _read_jsonl(out)
assert events[0]["data"]["raw"] == "ilà ★"
+3 -3
View File
@@ -55,8 +55,8 @@ def test_backtracking_visits_are_connected() -> None:
B's exits include the back-edge to A.
"""
m = Mapper()
a = m.visit("A", "", ["n"])
b = m.visit("B", "", ["s"])
_a = m.visit("A", "", ["n"])
_b = m.visit("B", "", ["s"])
# No link_rooms() — but B has 's' which would point to A.
out = m.render(max_cols=20, max_rows=20)
assert "A" in out
@@ -93,7 +93,7 @@ def test_multi_source_render_does_not_split_obviously_connected_rooms() -> None:
a = m.visit("A", "", ["n", "s"])
b = m.visit("B", "", ["s"])
m.link_rooms(a, "n", b)
c = m.visit("C", "", [])
_c = m.visit("C", "", []) # orphan: no exits
out = m.render(max_cols=10, max_rows=10)
assert "A" in out
assert "B" in out