Auto-Reloading Development Server
During development it can be very handy to have cargo automatically recompile the code on changes. This can be accomplished very easily by using watchexec.
The following command runs/restarts cargo run every time a file with the rs extension changes inside the current directory (including subdirectories):
watchexec -e rs -r cargo run
If you want to watch all files in a specific directory, you can use the the -w argument:
watchexec -w src -r cargo run
Historical Note
An old version of this page recommended using a combination of systemfd and listenfd, but this has many gotchas and was difficult to integrate properly, especially when part of a broader development workflow. We consider watchexec to be sufficient for auto-reloading purposes.