When using Shadow CLJS inside a Docker container (using WSL2 on Windows 10 as the Docker host), where the source files are mounted into the container via the Docker interface, it doesn't seem to detect changes in the files and recompile.
Shadow CLJS is started with:
shadow-cljs watch app
And it compiles the app and starts the development server just fine. But changing a file through the Docker host filesystem doesn't trigger a rebuild by the Shadow process.
I don't see any configuration options to configure how Shadow CLJS polls for file changes; is it possible to turn on more manual polling for changes? Or what needs to be updated to allow Shadow to see that these files are updating?
There is currently no separate polling watcher available for
shadow-cljs
. There used to behawk
but that broke with macOS Big Sur and was removed.shadow-cljs
uses the default JVMWatchService
. I don't know if there are any JVM options that can be set to turn this into a polling watcher? I'd expect this to be a common problem for JVM based stuff in Docker so I'd suspect that there is some kind of solution in the JVM, but I don't know it.