-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
57 lines (44 loc) · 1.15 KB
/
Makefile
File metadata and controls
57 lines (44 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Deepthought Development Makefile
.PHONY: test test-fast test-integration test-coverage clean install-dev lint format
# Test commands
test:
pytest
test-fast:
pytest -m "not slow and not integration"
test-integration:
pytest -m integration
test-hardware:
pytest -m hardware
test-coverage:
pytest --cov=deepthought --cov-report=html --cov-report=term-missing
# Development setup
install-dev:
pip install -e .
pip install pytest pytest-asyncio pytest-cov black flake8 mypy
# Code quality
lint:
flake8 deepthought/
mypy deepthought/ --ignore-missing-imports
format:
black deepthought/
# Cleanup
clean:
find . -type d -name __pycache__ -exec rm -rf {} +
find . -type f -name "*.pyc" -delete
rm -rf .coverage htmlcov/ .pytest_cache/
# Version management
version-beta:
python -c "
import sys
sys.path.insert(0, '.')
from deepthought.version import get_version
print(f'Current version: {get_version()}')
"
# Documentation
docs:
@echo "Documentation generation not yet implemented"
# Development workflow
dev-setup: install-dev
@echo "Development environment ready!"
@echo "Run 'make test-fast' for quick tests"
@echo "Run 'make test' for full test suite"