Félix Saparelli
645ab74c62
Implement Outcome::Wait, and CLI on-busy=queue
2021-09-03 09:25:23 +12:00
Félix Saparelli
b923638cbd
Correctly watch for process completion
2021-09-03 09:25:06 +12:00
Félix Saparelli
9c8d4c1a1b
Add fs event metadata to event
2021-09-03 08:14:04 +12:00
Félix Saparelli
07f5e445f6
Use Event Display impl in cli
2021-09-03 07:58:20 +12:00
Félix Saparelli
5cbbb7b67f
Add Display impl for events
2021-09-03 07:57:59 +12:00
Félix Saparelli
608aa516b1
Add source to internal event
2021-09-03 07:57:45 +12:00
Félix Saparelli
29e7780fdc
Add process completion handling to cli demo
2021-09-03 05:43:53 +12:00
Félix Saparelli
ec6b508894
Ignoring supervisor kill/signal internal errors
...
As the errors only occur when the process is dead anyway
2021-09-03 05:43:26 +12:00
Félix Saparelli
b728bfecfc
Differentiate trace logs when ending supervisor
2021-09-03 05:42:24 +12:00
Félix Saparelli
f880b0b38a
Always apply Both outcomes, even when the first fails
2021-09-03 05:41:50 +12:00
Félix Saparelli
8e4994abca
Add process supervisor to watch command to completion
...
Also change the concept of a completion handler to instead sending a
synthetic "process completed" event down the same path as usual.
That makes handling completion the job of the action handler, but also
means it's immediately possible to launch a process or do an action in
response to the process completing. Win win!
2021-09-03 05:22:15 +12:00
Félix Saparelli
0f247e9e5c
Fix demo for poll option gaining a timeout
2021-09-03 05:18:30 +12:00
Félix Saparelli
ef453193af
Add pre-spawn and post-spawn hooks
2021-08-25 04:41:14 +12:00
Félix Saparelli
1fd5c85317
Good idea but let's keep compat for now
2021-08-25 02:40:22 +12:00
Félix Saparelli
6df6d6fd5a
Handle signals in cli
2021-08-24 23:19:44 +12:00
Félix Saparelli
7d492fa677
Hide --watch-when-idle from help
2021-08-24 22:56:15 +12:00
Félix Saparelli
70e8a4dff2
Fix cli tests
2021-08-24 22:53:44 +12:00
Félix Saparelli
58b37940b8
Implement most existing options and mark the rest
2021-08-24 22:46:16 +12:00
Félix Saparelli
6767948daa
Specify delay for fs Poll mode
2021-08-24 22:28:29 +12:00
Félix Saparelli
33fb691d29
Add method to insert events into watchexec manually
2021-08-24 22:20:44 +12:00
Félix Saparelli
9cb1f5bf79
Re-export Outcome's Signal type
2021-08-24 21:31:46 +12:00
Félix Saparelli
e939f97c90
Move config creation out of arg parsing, and start on using libv2
2021-08-24 20:23:37 +12:00
Félix Saparelli
23d794ed7e
Apply tabs project-wide
2021-08-24 20:22:25 +12:00
Félix Saparelli
33f8b60e46
Take IntoIterator<AsRef<str>> to be more flexible on input
2021-08-24 20:14:01 +12:00
Félix Saparelli
05afb141b6
Add InitConfig::builder() to be a little more idiomatic
...
Neat side effect: keeps rust-analyzer from complaining about unknown types
(because it doesn't expand the builder macro)!
2021-08-24 19:59:11 +12:00
Félix Saparelli
b4ead7f5fb
Report several runtime errors if notify gives us several paths in an error
2021-08-23 06:08:25 +12:00
Félix Saparelli
3588cb4d62
Log fs watch/unwatch errors harder (to reveal paths)
2021-08-23 05:15:55 +12:00
Félix Saparelli
6cb3fc1c9a
Demo switching file watcher backends at runtime
2021-08-23 03:59:02 +12:00
Félix Saparelli
4a9168f5e6
Log on graceful exit
2021-08-23 03:36:10 +12:00
Félix Saparelli
9b94f18890
Fix double-actioning in throttle
2021-08-23 03:12:23 +12:00
Félix Saparelli
b42336cb74
Actually watch files in example
2021-08-23 03:11:58 +12:00
Félix Saparelli
b2effda341
Update to miette 1.0 beta
2021-08-23 02:37:13 +12:00
Félix Saparelli
5314d201a4
Expand print_out example into watchexec test case
2021-08-23 02:36:58 +12:00
Félix Saparelli
74d8e73817
Fix tokio panic for async handlers
2021-08-23 02:35:28 +12:00
Félix Saparelli
931648a955
Add signals() convenience iter on Event
2021-08-23 02:35:03 +12:00
Félix Saparelli
cc5b1c988e
Add some logging to Process
2021-08-23 02:34:44 +12:00
Félix Saparelli
60ed6bba25
Fix infinite loop in action recv code
2021-08-23 02:34:29 +12:00
Félix Saparelli
05117e69fe
Prep for more handlers in action
2021-08-23 02:33:23 +12:00
Félix Saparelli
4843920a36
Protect again starting command without anything in command
2021-08-23 02:32:48 +12:00
Félix Saparelli
17b09d8798
Add graceful exit support
2021-08-23 02:32:08 +12:00
Félix Saparelli
f4a8a9fc6a
Print PID in initialisation
2021-08-23 02:30:56 +12:00
Félix Saparelli
18d2487ec3
Rename reconfig to reconfigure
2021-08-23 00:31:39 +12:00
Félix Saparelli
3066ee5913
Implement most of process handling
2021-08-23 00:28:20 +12:00
Félix Saparelli
f150c26b22
Add action.grouped config
2021-08-23 00:27:45 +12:00
Félix Saparelli
d2d0bb7be2
Resolve compound outcomes
2021-08-22 23:23:01 +12:00
Félix Saparelli
7a709b9b4d
Prefer generic Both combinator than specific ClearAnd
2021-08-22 23:22:27 +12:00
Félix Saparelli
c85c164c09
Make the example in lib.rs compile
2021-08-22 22:06:50 +12:00
Félix Saparelli
227c2a0e0d
Add command and shell options to action
2021-08-22 22:06:31 +12:00
Félix Saparelli
613fe24c64
Add paths() convenience iter on Event
2021-08-22 22:06:12 +12:00
Félix Saparelli
8998c40746
Add convenience methods for Outcome's combinators
2021-08-22 22:05:45 +12:00