Skip to content

Commit 5ed0bbb

Browse files
committed
fix: remove vestigial Docker, fix async test warnings, align cov path + badge
- Removed the vestigial Docker surface (Dockerfile, docker.yml, deploy/docker/docker-compose.yml, .dockerignore) for this binary-less library; pruned dangling docker entries in .gitattributes/.editorconfig. - Tests: fixed async mocks emitting 'coroutine was never awaited' warnings. - Makefile/CI: aligned the coverage package path (--cov) to the real package. - README/docs: Python badge -> 3.9+ to match requires-python. Verified: pytest 275 passed (no warnings); ruff check + format clean; no docker files tracked.
1 parent 42e0b98 commit 5ed0bbb

11 files changed

Lines changed: 11 additions & 123 deletions

File tree

.dockerignore

Lines changed: 0 additions & 16 deletions
This file was deleted.

.editorconfig

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,6 @@ indent_size = 4
5454
[{Makefile,*.mk}]
5555
indent_style = tab
5656

57-
# Dockerfiles.
58-
[Dockerfile*]
59-
indent_size = 4
60-
6157
# GitHub Actions workflows — 2 spaces.
6258
[.github/**/*.{yml,yaml}]
6359
indent_size = 2

.gitattributes

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@
3131
# --- Build / packaging ----------------------------------------------------
3232
Makefile text eol=lf
3333
*.mk text eol=lf
34-
Dockerfile* text eol=lf
35-
docker-compose*.yml text eol=lf
3634
.github/**/*.yml text eol=lf
3735
.github/**/*.yaml text eol=lf
3836

.github/workflows/docker.yml

Lines changed: 0 additions & 58 deletions
This file was deleted.

Dockerfile

Lines changed: 0 additions & 21 deletions
This file was deleted.

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ test: ## Run unit tests.
4848
test-race: test ## Alias for `test` (Python has no race detector).
4949

5050
cover: ## Run tests with coverage report.
51-
$(PYTHON) -m pytest --cov=src --cov-report=term-missing --cov-report=html
51+
$(PYTHON) -m pytest --cov=hawk --cov-report=term-missing --cov-report=html
5252
@echo "Coverage report: htmlcov/index.html"
5353

5454
bench: ## Run benchmarks (requires pytest-benchmark).

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<strong>Official Python client for the Hawk daemon API</strong>
55
</p>
66
<p align="center">
7-
<a href="https://python.org/"><img src="https://img.shields.io/badge/Python-3.10+-3776AB?style=flat-square&logo=python&logoColor=white" alt="Python"></a>
7+
<a href="https://python.org/"><img src="https://img.shields.io/badge/Python-3.9+-3776AB?style=flat-square&logo=python&logoColor=white" alt="Python"></a>
88
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="License"></a>
99
<a href="https://github.com/GrayCodeAI/hawk-sdk-python/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/GrayCodeAI/hawk-sdk-python/ci.yml?style=flat-square&label=tests" alt="CI"></a>
1010
</p>

deploy/docker/docker-compose.yml

Lines changed: 0 additions & 11 deletions
This file was deleted.

docs/architecture.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
**Python SDK for the Hawk Daemon API**
66

7-
[![Python](https://img.shields.io/badge/Python-3.10+-3776AB?logo=python)](https://python.org/)
7+
[![Python](https://img.shields.io/badge/Python-3.9+-3776AB?logo=python)](https://python.org/)
88
[![Type](https://img.shields.io/badge/Type-SDK-blue)]()
99

1010
</div>

tests/test_evaluate.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,7 @@ class TestRunBenchmarkAsync:
237237

238238
async def test_single_task(self) -> None:
239239
agent = AsyncMock()
240+
agent.reset = MagicMock() # reset is sync; AsyncMock would leak a coroutine
240241
resp = MagicMock()
241242
resp.response = "ok"
242243
resp.tokens_in = 10
@@ -251,6 +252,7 @@ async def test_single_task(self) -> None:
251252

252253
async def test_multiple_runs(self) -> None:
253254
agent = AsyncMock()
255+
agent.reset = MagicMock() # reset is sync; AsyncMock would leak a coroutine
254256
resp = MagicMock()
255257
resp.response = "ok"
256258
resp.tokens_in = 10
@@ -264,6 +266,7 @@ async def test_multiple_runs(self) -> None:
264266

265267
async def test_validation_fail(self) -> None:
266268
agent = AsyncMock()
269+
agent.reset = MagicMock() # reset is sync; AsyncMock would leak a coroutine
267270
resp = MagicMock()
268271
resp.response = "no match"
269272
resp.tokens_in = 10
@@ -283,6 +286,7 @@ async def test_validation_fail(self) -> None:
283286

284287
async def test_agent_exception(self) -> None:
285288
agent = AsyncMock()
289+
agent.reset = MagicMock() # reset is sync; AsyncMock would leak a coroutine
286290
agent.chat.side_effect = RuntimeError("async crash")
287291
tasks = [EvalTask(name="t1", prompt="hello")]
288292
results = await run_benchmark_async(agent, tasks)

0 commit comments

Comments
 (0)