Skip to content

Commit 7b3b523

Browse files
committed
fix: Robust process cleanup and memory optimization for WSL
1 parent 2537ecd commit 7b3b523

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

dev.sh

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,35 +21,38 @@ echo -e "\033[1;32m━━━━━━━━━━━━━━━━━━━━
2121
echo -e "\033[1;32m🦞 ClawBridge Development Mode\033[0m"
2222

2323
if [ "$FAST_MODE" = true ]; then
24-
# Fast mode: Build once, serve static (like start.sh but foreground)
24+
# Fast mode: Build once, serve static
2525
echo -e "\033[1;33m Mode: Fast (no hot reload)\033[0m"
2626
echo -e "\033[1;34m URL: http://127.0.0.1:1337\033[0m"
2727
echo -e "\033[1;32m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
2828

29-
# Build the UI
3029
cd web && npm run build && cd ..
31-
# Clean and move files to public
3230
rm -rf public/* && cp -r web/out/* public/
33-
34-
# Start Backend in production style (serves static files from /public)
35-
# Don't set NODE_ENV=development here to avoid proxying
3631
node server.js
3732
else
3833
# Normal mode: Hot reload enabled
3934
echo -e "\033[1;33m Mode: Hot Reload (use --fast for faster startup)\033[0m"
4035
echo -e "\033[1;34m URL: http://127.0.0.1:1337\033[0m"
4136
echo -e "\033[1;32m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
4237

43-
# Start Backend with proxying enabled
44-
export NODE_OPTIONS="--max-old-space-size=4096"
38+
# WSL Memory Optimization
39+
export NODE_OPTIONS="--max-old-space-size=2048"
40+
41+
# Start Backend
4542
NODE_ENV=development node server.js &
4643
BACKEND_PID=$!
4744

48-
# Start Frontend Dev Server
45+
# Start Frontend
4946
(cd web && npm run dev -- --port 3000) &
5047
FRONTEND_PID=$!
5148

52-
# Handle shutdown
53-
trap "kill $BACKEND_PID $FRONTEND_PID 2>/dev/null; exit" SIGINT SIGTERM
49+
# Handle shutdown (Clean up entire process tree to prevent WSL memory leaks)
50+
cleanup() {
51+
echo -e '\n\033[1;33m[Stop] Cleaning up all processes...\033[0m'
52+
pkill -P $$ 2>/dev/null
53+
kill $BACKEND_PID $FRONTEND_PID 2>/dev/null
54+
exit
55+
}
56+
trap cleanup SIGINT SIGTERM
5457
wait
5558
fi

0 commit comments

Comments
 (0)