Commit Graph

315 Commits

Author SHA1 Message Date
sharkdp
4815ee416e Remove process::exit instance 2020-04-03 22:36:32 +02:00
sharkdp
53557ef471 Clean up include order 2020-04-03 22:36:32 +02:00
sharkdp
f9372b55d5 Remove irrelevant TODO 2020-04-03 22:36:32 +02:00
sharkdp
4590ae8535 Proper error handling within walk.rs 2020-04-03 22:36:32 +02:00
sharkdp
bce95274e3 Proper error handling in main.rs 2020-04-03 22:36:32 +02:00
sharkdp
af9d8082a1 Better error message 2020-04-03 22:36:32 +02:00
sharkdp
094516aec3 Refactor directory handling 2020-04-03 22:36:32 +02:00
sharkdp
33eb857a81 Cleanup 2020-04-03 22:36:32 +02:00
sharkdp
6e96154d86 Add tests for strip_current_dir 2020-04-03 22:36:32 +02:00
sharkdp
556c40e1f4 Move strip_current_dir 2020-04-03 22:36:32 +02:00
sharkdp
b415d7234b Rename fshelper to filesystem 2020-04-03 22:36:32 +02:00
sharkdp
e0cba4b700 Remove 'internal' module 2020-04-03 22:36:32 +02:00
sharkdp
342d12db3f Remove possibility to use '--exec <cmd>' with a single dash 2020-04-03 22:36:32 +02:00
sharkdp
c79d1638f5 Move MAX_BUFFER_LENGTH 2020-04-03 22:36:32 +02:00
sharkdp
9ef9bf7b80 Add tests for regex_helper 2020-04-03 22:36:32 +02:00
sharkdp
809fd8fb78 Move regex helpers to new module 2020-04-03 22:36:32 +02:00
sharkdp
a3060f952e Move error macros to error.rs 2020-04-03 22:36:32 +02:00
sharkdp
65096a653e Move FdOptions to Options 2020-04-03 22:36:32 +02:00
sharkdp
9f738ad995 Move filter up from internal 2020-04-03 22:36:32 +02:00
sharkdp
5c27ab1a06 Move filetypes up from 'internal' 2020-04-03 22:36:32 +02:00
sharkdp
2cfb1a2bb2 Adapt --list-details help message 2020-04-03 11:28:01 +02:00
sharkdp
938dafda28 Clean up unused help texts 2020-04-03 11:26:20 +02:00
sharkdp
e2a7d3446b Inline the help texts 2020-04-03 11:24:47 +02:00
sharkdp
e42ddda5a6 Clean up exit code handling 2020-04-03 10:48:27 +02:00
sharkdp
4274075f6f Remove outdated license headers (not strictly required by Apache-2.0) 2020-04-03 10:19:13 +02:00
sharkdp
b9d0e72f70 Solve clippy issues 2020-04-03 10:08:47 +02:00
sharkdp
33df48ebe4 Remove claim about unique search results 2020-04-03 10:07:46 +02:00
sharkdp
c9dc617711 Rename --list to --list-details 2020-04-03 09:58:47 +02:00
sharkdp
da5cd12b24 Add -l/--list option
Add a new `-l`/`--list` option to show more details about the search results. This is basically
an alias for `--exec-batch ls -l` with some additional `ls` options.
This can be used in order to:
    * see metadata like permissions, owner, file size, modification times (#491)
    * see symlink targets (#482)
    * achieve a deterministic output order (#324, #196, #159)
    * avoid duplicate search results when multiple search paths are given (#405)
2020-04-03 09:58:47 +02:00
sharkdp
d43827fe57 Add --max-results=<count> option
This new option can be used instead of piping to `head -n <count>` for
improved performance:

| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|:---|---:|---:|---:|---:|
| `fd --max-buffer-time=0 flow.yaml` | 153.9 ± 2.5 | 151.3 | 170.3 | 4.21 ± 5.86 |
| `fd --max-buffer-time=0 flow.yaml \| head -n 1` | 145.3 ± 17.4 | 111.0 | 180.2 | 3.98 ± 5.55 |
| `fd --max-results=1 flow.yaml` | 36.5 ± 50.8 | 7.2 | 145.7 | 1.00 |

Note: there is a large standard deviation on the last result due to the
non-deterministic file system traversal. With `--max-results`, we don't
have to traverse the whole filesystem tree, so it's all about luck.

closes #472
closes #476
2020-04-02 20:27:41 +02:00
sharkdp
44605d55dd Use .to_string() instead of .description() 2020-03-22 15:54:43 +01:00
Dave Parfitt
70448b0006 honor the NO_COLOR env var 2020-03-19 22:56:28 +01:00
sharkdp
d05e7171d4 Fix for older versions of Rust 2020-02-28 20:42:14 +01:00
sharkdp
81dee25438 Add additional check for symlink 2020-02-28 20:42:14 +01:00
sharkdp
bbf0f1cc1f New implementation of broken-symlink handling 2020-02-28 20:42:14 +01:00
sharkdp
bfc8c42444 Revert back to master state 2020-02-28 20:42:14 +01:00
sharkdp
d6034119ae Add comment for broken symlinks 2020-02-28 20:42:14 +01:00
sharkdp
82e6562cfc Further simplify the code 2020-02-28 20:42:14 +01:00
sharkdp
8cea65c1b8 Simplify match statement 2020-02-28 20:42:14 +01:00
Tom Milligan
9d73402ef2 walk: catch ignore NotFound error in the case of a broken symlink 2020-02-28 20:42:14 +01:00
fusillicode
0f2429cabc Add unit tests for merge_exitcodes 2020-02-22 12:32:35 +01:00
fusillicode
232e3937f2 Rename error_if_any_error to merge_exitcodes 2020-02-22 12:32:35 +01:00
fusillicode
e23398e6d0 Extract error_if_any_error as free function 2020-02-22 12:32:35 +01:00
fusillicode
a5fe138a25 Extract ExitCode::is_error helper 2020-02-22 12:32:35 +01:00
fusillicode
b23cfc383f Switch back from Self to ExitCode 2020-02-22 12:32:35 +01:00
fusillicode
e46998278a Fix typo in a job.rs comment 2020-02-22 12:32:35 +01:00
fusillicode
7213f5a88e Add collection of job & thread exit codes + default to ExitCode::Error if any ExitCode::Error 2020-02-22 12:32:35 +01:00
fusillicode
fa7d49282b Restun exit code for generate_and_execute? 2020-02-22 12:32:35 +01:00
sharkdp
2f18903b29 Fix zsh autocompletion problem, closes #487 2020-02-06 21:52:09 +01:00
MarcoIeni
320d7fca0a Sort search results when using -X option 2020-01-02 21:52:26 +01:00