summaryrefslogtreecommitdiffstats
path: root/cmdline.h
Commit message (Collapse)AuthorAgeFilesLines
* passwd: Cache the user/group tablesTavian Barnes2020-02-291-0/+9
| | | | | | | | | | | | | | | | | | | | | | This is a significant optimization for conditions that need these tables: Benchmark #1: ./bfs ~/code/linux -nouser >/dev/null Time (mean ± σ): 232.0 ms ± 2.5 ms [User: 44.3 ms, System: 185.0 ms] Range (min … max): 228.7 ms … 238.7 ms 12 runs Benchmark #2: ./bfs-1.6 ~/code/linux -nouser >/dev/null Time (mean ± σ): 1.050 s ± 0.012 s [User: 544.2 ms, System: 500.0 ms] Range (min … max): 1.025 s … 1.063 s 10 runs Benchmark #3: find ~/code/linux -nouser >/dev/null Time (mean ± σ): 1.040 s ± 0.012 s [User: 533.6 ms, System: 500.6 ms] Range (min … max): 1.017 s … 1.054 s 10 runs Summary './bfs ~/code/linux -nouser >/dev/null' ran 4.48 ± 0.07 times faster than 'find ~/code/linux -nouser >/dev/null' 4.52 ± 0.07 times faster than './bfs-1.6 ~/code/linux -nouser >/dev/null'
* darray: New dynamic array libraryTavian Barnes2019-08-291-2/+0
|
* Implement a depth-first mode (-dfs)Tavian Barnes2019-05-281-0/+2
|
* bftw: Visit multiple roots breadth-firstTavian Barnes2019-05-281-12/+4
| | | | This makes `bfs a b` treat `a` and `b` as siblings.
* bftw: Work around d_type being wrong for bind mounts on LinuxTavian Barnes2019-03-061-0/+2
| | | | | | C.f. https://savannah.gnu.org/bugs/?54913 C.f. https://lkml.org/lkml/2019/2/11/2027 Fixes https://github.com/tavianator/bfs/issues/37
* parse: Use a trie to hold currently open filesTavian Barnes2019-03-061-6/+2
|
* Implement -uniqueTavian Barnes2019-03-011-0/+2
| | | | Closes #48
* Add some documentation commentsTavian Barnes2019-02-091-0/+4
|
* parse: Add support for -D all to enable all debug flagsTavian Barnes2018-11-021-0/+2
|
* Update copyright datesTavian Barnes2018-09-241-1/+1
|
* Minor header cleanupsTavian Barnes2018-01-081-3/+3
|
* Keep track of required FDs per-exprTavian Barnes2017-12-151-4/+0
|
* cmdline: Account for files opened during/between evaluations more carefullyTavian Barnes2017-11-121-0/+4
|
* cmdline: Declare functions in a more natural orderTavian Barnes2017-10-211-7/+7
|
* parse: Keep track of what files are already openTavian Barnes2017-10-211-1/+8
| | | | Fixes #22
* Report errors that occur when closing filesTavian Barnes2017-10-211-1/+3
| | | | Otherwise we miss write errors that occur when flushing the cache.
* opt: Separate optimization from parsingTavian Barnes2017-09-161-0/+123