Commit Graph

154 Commits

Author SHA1 Message Date
Félix Saparelli
a1fce1b06e
Replace eyre with miette
and upgrade it to 3.2.0
2021-10-09 18:43:51 +13:00
Félix Saparelli
81bee9513d
Remove derive-builder
* the InitConfigBuilder non-miette error goes away
* creating an InitConfig is no longer faillible for no reason
* the "builder" style is consistent between the two config structs
2021-10-09 18:37:59 +13:00
Félix Saparelli
07878f8357
Implement path filtering 2021-09-30 04:03:46 +13:00
Félix Saparelli
dfb5525c7e Add tokio-console 2021-09-29 01:47:18 +13:00
Félix Saparelli
30dae61a02
Add filtering to demo CLI 2021-09-28 22:25:56 +13:00
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
07f5e445f6
Use Event Display impl in cli 2021-09-03 07:58:20 +12:00
Félix Saparelli
29e7780fdc
Add process completion handling to cli demo 2021-09-03 05:43:53 +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
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
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
61fec2cf27
Use lib v1 for cli 2021-08-16 21:49:22 +12:00
Félix Saparelli
e21a3a99f6 cli: v1.17.1 2021-07-31 06:37:29 +12:00
Félix Saparelli
c6ec9015f7
Add --notify to test 2021-07-31 05:26:26 +12:00
Félix Saparelli
d54d74854e
Add experimental --notify option
See #139
2021-07-31 05:11:42 +12:00
Félix Saparelli
a3173194a1
Implement cli's own wrapper handler
That will let us hook in watchexec-cli specific stuff
2021-07-31 04:24:05 +12:00
Félix Saparelli
bc07ad486d cli: v1.17.0 2021-07-22 03:25:51 +12:00
Félix Saparelli
d7b7dcd5f0 Only install deb+rpm tooling on linux 2021-07-22 03:13:00 +12:00
Félix Saparelli
288eba37e0 Use lib 1.17.1 2021-07-22 01:36:56 +12:00
Félix Saparelli
7bd99f30df Use lib 1.17.0 2021-07-22 01:18:00 +12:00
Félix Saparelli
66caedf978
Add --no-process-group flag 2021-07-22 00:56:35 +12:00
Félix Saparelli
18fdbbcfea Merge branch 'docs/website' 2021-07-22 00:18:13 +12:00
Félix Saparelli
85e2c12c34
Review readmes, add website links 2021-07-22 00:13:59 +12:00
Félix Saparelli
146d49ee8e
Update deps 2021-07-21 23:57:31 +12:00
Félix Saparelli
f5a92220c9
Drop debounce to 100ms (#168) 2021-07-21 23:44:24 +12:00
Félix Saparelli
07974e0d14
Implement @argfile argument parsing (#145) 2021-07-17 02:10:03 +12:00
Félix Saparelli
54ac2e9ae0
Use color-eyre for application errors rather than the library's error type 2021-07-17 01:33:04 +12:00
Félix Saparelli
0c25ea0269 cli: v1.16.2 2021-07-10 20:08:45 +12:00
Félix Saparelli
6457df5a0a Use 1.16.1 lib in cli 2021-07-10 20:08:23 +12:00
Félix Saparelli
604c24ec38 Link to website for downloads 2021-07-10 03:48:12 +12:00
Félix Saparelli
e6c7da3635 Add rpm support with cargo-generate-rpm 2021-07-10 03:48:12 +12:00
Félix Saparelli
1eaaf7e844 Use cargo-deb to replace existing deb kludge 2021-07-10 03:48:12 +12:00
Félix Saparelli
654a324fdd Set website as website 2021-07-10 03:48:12 +12:00
Félix Saparelli
960bbbabbc cli: v1.16.1 2021-05-22 20:05:57 +12:00
Félix Saparelli
d8540d76b8
Fomat and clippy 2021-05-10 23:37:03 +12:00
Félix Saparelli
319727b0a6
It was in the wrong place the whole time! 🤬 2021-05-10 23:27:53 +12:00
Félix Saparelli
7e4ff78bc4
🤦 2021-05-10 23:21:30 +12:00
Félix Saparelli
169de99ee5
Whoops, wrong file 2021-05-10 23:15:14 +12:00
Félix Saparelli
cb684fc7a8
Fix help snapshot for windows (.exe!) 2021-05-10 23:10:30 +12:00
Félix Saparelli
0d2f28c91a
Add test for cli help 2021-05-10 23:02:31 +12:00
Félix Saparelli
eafbc9a77b
Clean up due to removing pubs 2021-05-10 22:44:35 +12:00
Félix Saparelli
324fbe9055
Remove unused cli mod 2021-05-10 22:27:41 +12:00
Félix Saparelli
668d931eac
Remove public interface now that cli is a different crate 2021-05-10 22:26:38 +12:00
Félix Saparelli
be16d2e6a8
Use published lib in cli for cli publish 2021-05-09 03:54:06 +12:00
Félix Saparelli
c517b98782 Split readmes 2021-05-09 03:44:11 +12:00
Félix Saparelli
6a0ac73547 cli: v1.16.0 2021-05-09 02:21:07 +12:00
Félix Saparelli
149b9b9821
Split the versioning of the lib and cli (in theory) 2021-05-01 04:22:33 +12:00
Félix Saparelli
1f3f4ada35 Split into two crates: lib and cli
That has a number of advantages:

- #193 the build.rs is only run for the CLI, so the Windows manifest is
  not embedded in the library anymore, opening it up for downstreams.

- it sets the stage for decoupling the version numbers of the CLI and
  library, to have the library increase its major more often, while the
  CLI retains compatibility further… that is, to have both follow semver

- it removes the CLI-only dependencies from the library

- it makes compilation a bit faster as compiling the library and the
  CLI's other dependencies can happen in parallel

One major disadvantage:

- installing via cargo changes from watchexec to watchexec-cli. Most
  installs are from prebuilt and from packages, but that's still a
  potential stumble.

And of course, the CLI APIs in the library are gone (they were already
deprecated, though).

We also take this opportunity to get rid of the clear_screen code and
use our new clearscreen library. #99 #171 #185
2021-05-01 03:27:17 +12:00