Some commands (status, commit) take forever
Hi!
I really appreciate you open sourcing this project! I've been using sapling for some times. However, I occasionally run into this frustrating issue 🙁
Setup
- OS: macOS Sequoia 15.5
- Sapling version: Sapling 0.2.20250521-115337-25ed6ac4 (installed via homebrew)
- Watchman version: 2025.07.28.00 (installed via homebrew)
- Repository mode:
.slmode
Problem
Sometimes, some commands take soooo long. The commands include:
-
sl status -
sl commit
These commands are not affected:
-
sl -
sl log -
sl web-- however, the UI cannot show uncommitted changes and shows the spinner instead until the sl command exits with code 130
I have enabled ui.debug.
- When running
sl status, there was no debug message. - When running
sl commit ..., there was this debug message:watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/turfa-state/sock
When the problem happens, running sl status or sl commit ... can take more than 15 minutes even with only one line code change. I usually just Ctrl+C the command, restart my machine, and hope that the next run will not fail.
Please let me know if you need more information.
This is the error shown in the web UI:
Failed to fetch Uncommitted Changes
Command `/opt/homebrew/bin/sl "status" "-Tjson" "--copies"…` exited with non-zero status with exit code 130
Error: Command `/opt/homebrew/bin/sl "status" "-Tjson" "--copies"…` exited with non-zero status with exit code 130
at Qo (/Users/turfa/Library/Application Support/Sapling/ISL/isl-server/dist/server-DXUZru8e.js:1:147337)
at /Users/turfa/Library/Application Support/Sapling/ISL/isl-server/dist/server-DXUZru8e.js:1:128687
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
This problem went away after I uninstalled watchman.
So I'm not sure if the problem is in watchman or the integration between watchman and sapling.