(path: Path, lines: int = 80)
| 19 | |
| 20 | |
| 21 | def _tail(path: Path, lines: int = 80) -> str: |
| 22 | try: |
| 23 | content = path.read_text(encoding="utf-8", errors="replace").splitlines() |
| 24 | except OSError as exc: |
| 25 | return f"Unable to read smoke log: {exc}" |
| 26 | return "\n".join(content[-lines:]) |
| 27 | |
| 28 | |
| 29 | def _is_ready() -> bool: |