| # VintageGAN Makefile
|
| # Automates common development tasks
|
|
|
| .PHONY: help install test test-quick test-full quality format lint verify clean watch hooks ci train train-auto train-quick
|
|
|
| help:
|
| @echo "VintageGAN Development Commands"
|
| @echo "================================"
|
| @echo ""
|
| @echo "Setup:"
|
| @echo " make install Install package and dependencies"
|
| @echo " make hooks Install git pre-commit hooks"
|
| @echo ""
|
| @echo "Testing:"
|
| @echo " make test Run quick tests"
|
| @echo " make test-full Run all tests"
|
| @echo " make verify Verify installation"
|
| @echo " make watch Watch files and auto-test"
|
| @echo ""
|
| @echo "Code Quality:"
|
| @echo " make quality Run all quality checks"
|
| @echo " make format Format code with black"
|
| @echo " make lint Lint code with flake8"
|
| @echo ""
|
| @echo "CI/CD:"
|
| @echo " make ci Run full CI pipeline locally"
|
| @echo " make all Run everything (format + quality + test)"
|
| @echo ""
|
| @echo "Cleanup:"
|
| @echo " make clean Remove generated files"
|
| @echo ""
|
| @echo "Results:"
|
| @echo " make results Generate all results for paper"
|
| @echo ""
|
| @echo "Training (Automated):"
|
| @echo " make train Interactive training setup"
|
| @echo " make train-auto Fully automated training"
|
| @echo " make train-quick Quick test (~30 min)"
|
|
|
| install:
|
| @echo "Installing VintageGAN..."
|
| pip install -e .
|
| pip install pre-commit black flake8 pytest
|
| @echo "β
Installation complete!"
|
|
|
| hooks:
|
| @echo "Installing git hooks..."
|
| python autotest.py --install-hooks
|
| @echo "β
Git hooks installed!"
|
|
|
| test:
|
| @echo "Running quick tests..."
|
| python run_tests.py --quick
|
|
|
| test-full:
|
| @echo "Running full test suite..."
|
| python run_tests.py
|
|
|
| verify:
|
| @echo "Verifying installation..."
|
| python verify_installation.py
|
|
|
| watch:
|
| @echo "Starting watch mode (Ctrl+C to stop)..."
|
| python autotest.py
|
|
|
| quality:
|
| @echo "Running code quality checks..."
|
| python autotest.py --once --quality
|
|
|
| format:
|
| @echo "Formatting code with black..."
|
| black . --line-length 100 --exclude="venv|build|dist|\.eggs"
|
| @echo "β
Code formatted!"
|
|
|
| lint:
|
| @echo "Linting code with flake8..."
|
| flake8 . --max-line-length=100 --exclude=venv,build,dist,.eggs --ignore=E203,W503
|
|
|
| ci:
|
| @echo "Running full CI pipeline locally..."
|
| python autotest.py --all --full
|
| @echo ""
|
| @echo "Testing package build..."
|
| python -m build
|
| @echo "β
CI pipeline complete!"
|
|
|
| all: format quality test-full
|
| @echo ""
|
| @echo "β
All checks passed!"
|
|
|
| clean:
|
| @echo "Cleaning generated files..."
|
| rm -rf build/ dist/ *.egg-info
|
| rm -rf __pycache__/ */__pycache__/ * |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |