Commit Graph

167 Commits

Author SHA1 Message Date
Félix Saparelli
ba23ed09f6 Fix tests 2018-09-09 16:16:40 +12:00
Félix Saparelli
dc712197c0 1.9.2: revert whitespace changes 2018-09-09 16:03:01 +12:00
Félix Saparelli
3c1eaa51f7 Add missing impl for StdError 2018-09-09 10:38:07 +12:00
Félix Saparelli
2c5c145042 Extract errors into one thing and return a result more often 2018-09-08 23:51:44 +12:00
Félix Saparelli
a6163cc599 Formatting 2018-09-08 20:08:36 +12:00
Félix Saparelli
9c60148b66
Merge pull request #95 from watchexec/wrap-whitespace-in-args
Wrap whitespace and quotes in command arguments
2018-09-08 19:44:39 +12:00
Félix Saparelli
718647e386
Merge branch 'master' into fix_panic 2018-09-08 19:43:20 +12:00
Félix Saparelli
7375db5ce9 Also wrap when there’s quotes but no whitespace 2018-08-22 08:17:36 +12:00
Félix Saparelli
21d4080183 Wrap whitespace in arguments
Fixes #82
Fixes #87
2018-08-22 07:15:20 +12:00
Félix Saparelli
39a4a52f80 Restore 1.20 compatibility 2018-08-22 07:14:55 +12:00
Félix Saparelli
ef0e6df8d4 Remove duplication between main/lib files 2018-08-22 00:10:57 +12:00
Félix Saparelli
f61b7507af Update dependencies 2018-08-19 20:58:47 +12:00
Félix Saparelli
31fdca564a
Merge pull request #93 from tailhook/max_user_watches
Add a warning and fallback on polling mode if limit exceeded
2018-08-19 20:29:44 +12:00
Félix Saparelli
93bd1d9881
Merge pull request #77 from bruceg/master
Fix some default ignore pattern issues
2018-08-19 20:23:49 +12:00
Paul Colomiets
a2d0a251da Add a warning and fallback on polling mode if limit exceeded
Works only on linux (not sure how error is named on other systems):
```
*** System notification limit is too small, falling back to polling
mode.
*** For better performance increase system limit:
   sysctl fs.inotify.max_user_watches=524288
*** Polling for changes every 1000 ms
```

Fixes #62
2018-08-02 19:36:50 +03:00
Oliver Jan Krylow
8de93a8fd2
Bumps __nix__ to __0.11.0__ in order to support OpenBSD 6.3+. 2018-07-30 21:20:12 +02:00
Bruce Guenter
1d8d6595e0 Add .pyo to the Python temporary file ignore
Python, when invoked with the -O option, writes compiled code to .pyo
files instead of .pyc. Add this to the default ignores list.
2018-02-08 14:53:12 -06:00
Bruce Guenter
422546b175 Add Emacs temporary files to the default ignored list
Emacs generates temporary backup files while editing named "#FILENAME#"
and ".#FILENAME". Ignore these by default.
2018-02-08 14:53:11 -06:00
Bruce Guenter
c98bea3118 Fix default ignore for vim temporary files
.swp files are created by vim to store editing state while a file is
open. However, it may also create .swo, .swn, etc files if .swp already
exists. Also, the temporary files are always hidden (start with ".").
Finally, vim temporarily creates .swpx files as well which are caught by
inotify.

This change fixes the *.swp pattern to only match hidden files and to
match the other vim temporary files.
2018-02-08 14:53:08 -06:00
James Kominick
31b5e56959 don't panic on missing folder
issue #71
- Add some basic error handling
- Convert missing folder panic to error
2017-12-13 23:10:12 -05:00
Jim McGrath
9b4e74ed30 fix screen clearing on windows 2017-12-06 11:40:04 -06:00
Josh Gao
76d959b27b Use tput reset to clear screen.
Use `tput reset` instead of `clear` so that scrollback is cleared in
addition to the currently visible portion of the terminal.
2017-11-21 00:55:58 -05:00
Matt Green
3de894e07c Merge pull request #70 from mattgathu/fix_clippy_warnings_run
fix (src/run.rs): fixed cargo clippy warnings
2017-10-09 08:54:41 -04:00
Matt Green
b035cbf44a Merge pull request #69 from mattgathu/fix_clippy_warnings_process
fix (src/process.rs): fix cargo clippy linter warnings
2017-10-09 08:53:55 -04:00
Matt Green
8770ae3967 Handle relative ignores better? 2017-10-07 15:50:47 -04:00
Matt Gathu
8509cbfd77
fix (src/run.rs): fixed cargo clippy warnings
This addresses warnings reported by cargo clippy on `src/run.rs`:

* warning: this expression borrows a reference that is immediately dereferenced by the compiler

reference:
- https://rust-lang-nursery.github.io/rust-clippy/v0.0.165/index.html#needless_borrow
- https://github.com/rust-lang-nursery/rust-clippy
2017-10-06 14:31:36 +03:00
Matt Gathu
775eb47dde
fix (src/process.rs): fix cargo clippy linter warnings
This PR fixes lint warnings generated by cargo-clippy:

- **warning**: you should put `notify::ops::RENAME` between ticks in the documentation
- **warning**: use of `or_insert` followed by a function call

I have run `cargo test` and these changes do not break any of the tests :-)

reference:
--

* https://rust-lang-nursery.github.io/rust-clippy/v0.0.165/index.html#doc_markdown
* https://rust-lang-nursery.github.io/rust-clippy/v0.0.165/index.html#or_fun_call
* https://github.com/rust-lang-nursery/rust-clippy
2017-10-06 13:55:21 +03:00
James Kominick
8bd9bb3c25 detailed update information
issue #59
- Keep track of `notify::op::Op`s associated with each updated path
- Collect paths into `notify::op::Op` categories and pass them on as
  environment vars
- Set a COMMON_PATH and use relative paths if more than one unique
  path was touched
2017-09-09 13:55:44 -04:00
Matt Green
06fd2954dd Merge pull request #64 from jaemk/configurable_debounce
Add `-d, --debounce` option
2017-09-08 16:16:19 -04:00
James Kominick
0e34123023 Add -d, --debounce option
- Add configurable debounce timeout option behind `-d, --debounce`
- Move `-d, --debug` flags to `-v, --verbose`
2017-09-07 19:44:57 -04:00
Lilian A. Moraru
e39256cfb2 Update dependencies and other small improvements 2017-08-26 22:07:06 +03:00
Matt Green
3fc501c4f0 Windows: fix waiting for job to finish; closes #55 2017-05-18 13:22:46 -04:00
Matt Green
6ebb7bc7b3 Also ignore changes to ignored dirs themselves 2017-05-10 12:02:49 -04:00
Matt Green
e6de016cb9 Ensure correct path separators are used for VCS ignore dirs 2017-04-27 15:39:12 -04:00
Matt Green
f9a3cade26 Add common VCS dirs to default ignore list (fixes #54) 2017-04-27 15:20:44 -04:00
Les Aker
356dac189d add no-default-ignore option, fixes #45 2017-04-25 21:17:45 -04:00
Matt Green
fe0d5243bd Remove /.* ignore pattern (see #45) 2017-04-25 16:48:44 -04:00
Félix Saparelli
f5bf4ef98b
Add library interface 2017-04-25 11:31:50 +12:00
Chris Aumann
f88f1b36c3 Refactor command assembly
Kudos to https://www.reddit.com/user/burntsushi from the /r/rust community!
See: https://www.reddit.com/r/rust/comments/64ic0q/idiomatic_string_processing/
2017-04-10 14:13:27 +02:00
Chris Aumann
a395ed84cd Remove useless format!()
This was a hint by `cargo clippy`
2017-04-10 00:20:57 +02:00
Chris Aumann
df72aaf977 Use if-else statements instead of boolean match
This was a hint by `cargo clippy`
2017-04-10 00:20:57 +02:00
Chris Aumann
780b54b34e Port --no-shell to Windows 2017-04-10 00:20:57 +02:00
Chris Aumann
5a7ccf759b Adapt spawn() test for Unix 2017-04-10 00:20:27 +02:00
Chris Aumann
ee5e93e6af Add support for --no-shell option 2017-04-10 00:19:58 +02:00
Chris Aumann
5b486e2ae6 Remove deprecated comment (before_exec) 2017-04-06 22:54:02 +02:00
Chris Aumann
264ec282d6 Use a tuple to match scenarios 2017-04-02 21:28:00 +02:00
Chris Aumann
4763de3790 Re-add --kill flag for compatibility
--kill translates to --signal SIGKILL
2017-04-02 21:21:30 +02:00
Chris Aumann
627f828b3c Rename wait_process() to signal_process() 2017-04-02 21:21:30 +02:00
Chris Aumann
d5da94fcaf Add check for conflicting --signal and --postpone arguments 2017-04-02 21:21:30 +02:00
Chris Aumann
c98d0e6cfd Decouple --restart and --signal, so they both make sense
This change takes account of the following four use cases:

1. Make sure the previous run was ended, then run the command again (default)
2. Just send a specified signal to the child, do nothing more (--signal given)
3. Send SIGTERM to the child, wait for it to exit, then run the command again (--restart given)
4. Send a specified signal to the child, wait for it to exit, then run the command again (--restart and --signal given)
2017-04-02 21:21:30 +02:00