-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Expand file tree
/
Copy pathmypy-daemon.sh
More file actions
executable file
·55 lines (51 loc) · 1.35 KB
/
mypy-daemon.sh
File metadata and controls
executable file
·55 lines (51 loc) · 1.35 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
#!/bin/bash
# MyPy daemon for sub-second type checking
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="$(cd "${SCRIPT_DIR}/.." && pwd)"
MYPY_CACHE_DIR="${ROOT_DIR}/sdk/python/.mypy_cache"
PID_FILE="$MYPY_CACHE_DIR/dmypy.pid"
case "${1:-}" in
start)
echo "🚀 Starting MyPy daemon..."
cd ${ROOT_DIR}/sdk/python
uv run dmypy start -- --config-file=pyproject.toml
echo "✅ MyPy daemon started"
;;
check)
echo "🔍 Running MyPy daemon check..."
cd ${ROOT_DIR}/sdk/python
time uv run dmypy check feast tests
;;
stop)
echo "🛑 Stopping MyPy daemon..."
cd ${ROOT_DIR}/sdk/python
uv run dmypy stop
echo "✅ MyPy daemon stopped"
;;
restart)
echo "🔄 Restarting MyPy daemon..."
$0 stop
$0 start
;;
status)
echo "📊 MyPy daemon status:"
cd ${ROOT_DIR}/sdk/python
if uv run dmypy status; then
echo "✅ MyPy daemon is running"
else
echo "❌ MyPy daemon is not running"
fi
;;
*)
echo "Usage: $0 {start|check|stop|restart|status}"
echo ""
echo "Commands:"
echo " start - Start the MyPy daemon"
echo " check - Run type checking with the daemon"
echo " stop - Stop the MyPy daemon"
echo " restart - Restart the daemon"
echo " status - Check daemon status"
exit 1
;;
esac