Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Remove redundant pure expressions from the top level. | Tavian Barnes | 2016-06-07 | 1 | -5/+28 | |
| | ||||||
* | Optimize using De Morgan's laws. | Tavian Barnes | 2016-06-07 | 1 | -0/+61 | |
| | ||||||
* | Warn on things like "-not -maxdepth 1". | Tavian Barnes | 2016-06-07 | 1 | -0/+6 | |
| | ||||||
* | Move purity optimizations to -O2. | Tavian Barnes | 2016-06-07 | 1 | -10/+12 | |
| | ||||||
* | Implement -D opt. | Tavian Barnes | 2016-06-07 | 3 | -29/+88 | |
| | ||||||
* | At -O3, replace command lines with no actions by -false. | Tavian Barnes | 2016-06-07 | 1 | -0/+5 | |
| | ||||||
* | eval: Clean up open fd counting code. | Tavian Barnes | 2016-06-03 | 1 | -5/+9 | |
| | ||||||
* | color: Ignore colors that are all zeros. | Tavian Barnes | 2016-06-03 | 1 | -1/+6 | |
| | | | | | This keeps multi_hard from overriding extension colors if LS_COLORS says mh=00:, matching the behavior of ls. | |||||
* | color: Add multi-hard link coloring support. | Tavian Barnes | 2016-06-02 | 1 | -1/+14 | |
| | ||||||
* | Fix hypothetical leak if waitpid() fails. | Tavian Barnes | 2016-06-02 | 1 | -1/+1 | |
| | ||||||
* | Bump to 0.79.0.79 | Tavian Barnes | 2016-05-22 | 2 | -2/+2 | |
| | ||||||
* | Use complete sentences in error messages consistently. | Tavian Barnes | 2016-05-22 | 1 | -3/+3 | |
| | ||||||
* | Use argc/argv naming consistently. | Tavian Barnes | 2016-05-22 | 3 | -84/+84 | |
| | ||||||
* | Implement -{exec,ok}{,dir}. | Tavian Barnes | 2016-05-22 | 4 | -8/+297 | |
| | ||||||
* | dstring: Clean up the API a bit. | Tavian Barnes | 2016-05-22 | 3 | -15/+21 | |
| | ||||||
* | bftw: Use realloc() to grow the dirqueue. | Tavian Barnes | 2016-05-17 | 1 | -13/+11 | |
| | ||||||
* | bftw: Remove some debugging counters that were left in accidentally. | Tavian Barnes | 2016-05-17 | 1 | -10/+0 | |
| | ||||||
* | dstring: Split out the dynamic string logic. | Tavian Barnes | 2016-04-13 | 4 | -69/+213 | |
| | ||||||
* | Remove an errant debugging printf(). | Tavian Barnes | 2016-04-10 | 1 | -1/+0 | |
| | ||||||
* | Bump the version to 0.74.0.74 | Tavian Barnes | 2016-03-12 | 2 | -2/+2 | |
| | ||||||
* | Implement -size. | Tavian Barnes | 2016-03-12 | 4 | -17/+172 | |
| | ||||||
* | Implement -used. | Tavian Barnes | 2016-03-05 | 3 | -0/+18 | |
| | | | | | | This doesn't agree with find's output, but I think find is buggy here. For example, find -used +0 is returning fewer results than find -used 1, which makes no sense given that 1 is greater than 0. | |||||
* | Fix a typo that caused a segfault with missing arguments. | Tavian Barnes | 2016-02-27 | 1 | -1/+1 | |
| | ||||||
* | Implement (most of) -newerXY. | Tavian Barnes | 2016-02-27 | 2 | -3/+88 | |
| | ||||||
* | Fix -daystart to not round 0 upwards. | Tavian Barnes | 2016-02-27 | 2 | -4/+15 | |
| | ||||||
* | Fix potential leaks in -lname. | Tavian Barnes | 2016-02-27 | 1 | -12/+17 | |
| | ||||||
* | Fix uninitialized read in parse_colors(). | Tavian Barnes | 2016-02-27 | 1 | -0/+1 | |
| | ||||||
* | Don't repeat reported error messages from bftw(). | Tavian Barnes | 2016-02-27 | 1 | -1/+9 | |
| | | | | Fixes #7. | |||||
* | Color broken symlinks correctly. | Tavian Barnes | 2016-02-24 | 1 | -3/+10 | |
| | ||||||
* | Don't export .git* files in archives. | Tavian Barnes | 2016-02-23 | 1 | -0/+1 | |
| | ||||||
* | Bump the version to 0.70.0.70 | Tavian Barnes | 2016-02-23 | 2 | -2/+2 | |
| | ||||||
* | Implement -O. | Tavian Barnes | 2016-02-23 | 3 | -49/+85 | |
| | ||||||
* | Implement -D tree. | Tavian Barnes | 2016-02-23 | 2 | -209/+362 | |
| | ||||||
* | bftw: Update at_flags when not following a broken symbolic link. | Tavian Barnes | 2016-02-23 | 1 | -1/+2 | |
| | ||||||
* | bftw: Plug a leak when the root is not a directory. | Tavian Barnes | 2016-02-23 | 1 | -1/+6 | |
| | ||||||
* | Implement -D stat. | Tavian Barnes | 2016-02-22 | 3 | -1/+83 | |
| | ||||||
* | bftw: Use the currently open directory as at_fd in BFTW_CHILD mode. | Tavian Barnes | 2016-02-22 | 1 | -2/+5 | |
| | ||||||
* | Simplify double-negation. | Tavian Barnes | 2016-02-21 | 1 | -0/+5 | |
| | ||||||
* | bftw: Use O_CLOEXEC. | Tavian Barnes | 2016-02-21 | 1 | -3/+3 | |
| | ||||||
* | Make optimizations based on the purity of predicates. | Tavian Barnes | 2016-02-21 | 2 | -44/+42 | |
| | | | | | | | | This allows something like $ ./bfs -empty -false to avoid evaluating -empty, just like find. | |||||
* | Fix infinite recursion in eval_not(). | Tavian Barnes | 2016-02-21 | 1 | -6/+13 | |
| | | | | And use a helper function to prevent this kind of bug in the future. | |||||
* | bftw: Don't store the terminating '\0' in dircache_entry names. | Tavian Barnes | 2016-02-21 | 1 | -2/+1 | |
| | ||||||
* | bftw: Use a better cache eviction policy. | Tavian Barnes | 2016-02-21 | 1 | -113/+186 | |
| | | | | | | Instead of simple LRU, we now evict the open entry with the lowest refcount. This reduces the average number of components passed to openat() by a significant margin, and speeds bfs up by about ~5%. | |||||
* | bftw: Shrink the LRU before finding the parent. | Tavian Barnes | 2016-02-20 | 1 | -10/+6 | |
| | | | | Otherwise we might close the found parent. | |||||
* | bftw: Clean up dirqueue implementation a bit. | Tavian Barnes | 2016-02-19 | 1 | -20/+28 | |
| | ||||||
* | bftw: Don't keep DIR*'s around. | Tavian Barnes | 2016-02-19 | 1 | -40/+75 | |
| | | | | | | | | | | | | | | | DIR*'s were being kept around so dirfd(dir) could be passed to future openat() calls. But DIR*'s are big, holding a cache of filenames etc. read by readdir(). Instead, store the raw fd and dup() it to open a DIR* with fdopendir(). This way we can call dirclose() as soon as possible, while still keeping an open fd. Ideally there would be a way to closedir() without invoking close() on the underlying fd, but this is a good approximation. Reduces memory footprint by around 64% in a large directory tree. | |||||
* | -follow is a positional option. | Tavian Barnes | 2016-02-18 | 1 | -4/+4 | |
| | ||||||
* | bftw: Use a circular buffer to implement the dirqueue. | Tavian Barnes | 2016-02-17 | 1 | -46/+37 | |
| | ||||||
* | Fix an uninitialized value warning. | Tavian Barnes | 2016-02-17 | 1 | -2/+5 | |
| | ||||||
* | Initialize expr.cmp for -user and -group. | Tavian Barnes | 2016-02-17 | 1 | -0/+2 | |
| |