Jurigged does not use watchman, it uses watchdog. Watchdog does not use watchman.
I investigated using watchfiles and it didn't provide enough benefits to merit switching. It added a bit of code complexity to conform to the interface that jurigged was expecting and even then it created bug hazards.
This fixes the references to watchman to now say "OS events", it also adds the capability to throttle the file system polling done by jurigged to reduce idle cpu usage. Lower numbers are faster. The default values now increase the polling interval to 2 seconds instead of 1, and adds a small 2 ms delay before each listdir. Both of these are affected by the throttle, so for example, a value of 0.5 brings the delay back to 1 second and reduces the listdir delay to 1ms.
The default changes reduce the idle CPU usage by approx half. In Heavy Resume this reduced the idle from 10 - 12% to 4 - 6% with the debugger on.
Jurigged does not use watchman, it uses watchdog. Watchdog does not use watchman.
I investigated using watchfiles and it didn't provide enough benefits to merit switching. It added a bit of code complexity to conform to the interface that jurigged was expecting and even then it created bug hazards.
The watchfiles branch is here, for reference: https://github.com/JamesHutchison/pytest-hot-reloading/tree/watchfiles
This fixes the references to watchman to now say "OS events", it also adds the capability to throttle the file system polling done by jurigged to reduce idle cpu usage. Lower numbers are faster. The default values now increase the polling interval to 2 seconds instead of 1, and adds a small 2 ms delay before each
listdir
. Both of these are affected by the throttle, so for example, a value of 0.5 brings the delay back to 1 second and reduces thelistdir
delay to 1ms.The default changes reduce the idle CPU usage by approx half. In Heavy Resume this reduced the idle from 10 - 12% to 4 - 6% with the debugger on.
Addresses #80