andy.boot
bdc3d404ef
Support excluding filesystems with -x
...
https://github.com/bootandy/dust/issues/50
Add optional -x flag to limit search to the current filesystem.
Add (untested) support for windows for the equivalent of inode and
device.
2020-01-15 19:51:16 +00:00
Adam Lesperance
38938e005e
Fix colors on windows
...
* Initialize ansi_term if we're on windows
* Silence build warning on non-unix targets
* Update ansi-term which has windows specific fixes (and assert_cli while I'm at it)
2019-12-30 21:36:49 +00:00
andy.boot
da61b15715
Upgrade libraries. Fix assert_cli
...
New assert_cli library requires we cast the param passed to 'is()' as
it can no longer cast implicitly. I am guessing this is because it is
due to confusion between whether to cast to u8 or str
2019-12-30 21:23:53 +00:00
andy.boot
356d14ac0f
Hack fix around JWalk behaviour.
...
Jwalk returns '/' as a child of the current node which breaks things.
https://github.com/jessegrosjean/jwalk/issues/13
2019-12-23 15:51:12 +00:00
andy.boot
311bc45388
Verify that '/' is parent of everything
...
Bug could occur when run with '/' as it wasn't considered the parent of
'/usr' due to having the same number of '/'s in the name
2019-12-23 15:50:01 +00:00
andy.boot
ef66fb3938
Remove useless sort
...
The data coming in is already sorted. We should not need to sort it a
second time
2019-12-23 15:49:26 +00:00
andy.boot
6a65570f3f
Refactor tests
...
Make use of the 'is' more to test the entire output.
Add test for no_color mode.
Replace several calls to format_string with calls that build a string
directly. I feel format_string is becoming unweildly and this simplfies
the tests
2019-12-08 23:34:28 +00:00
andy.boot
a4ca78dbe4
Add option flag for no colors
...
https://github.com/bootandy/dust/issues/37
2019-12-08 14:46:45 +00:00
andy.boot
78119aba0f
Mark function as ignored by clippy
...
We don't want to collapse this if - it is easier to reason about this
way
2019-12-05 21:50:26 +00:00
andy.boot
5535478fe8
Fix substring bug
...
When one directory was a substring of another the directory would appear
as a subdirectory instead of a sibling
Fixed originally by this: 6e03dd77e6
Broken by this: db6c8a019d
Added integration test as this has bitten me before
2019-12-05 21:35:15 +00:00
andy.boot
7ba91a4a22
Rename variable
...
cpu -> threads. threads more accurately represents the number of threads
we will start to run
2019-12-04 20:49:45 +00:00
Xavier L'Heureux
b66523cff3
Apply clippy lints
2019-12-03 18:34:47 -05:00
Xavier L'Heureux
19a41aa382
Add CLI option for the number of threads to spawn
2019-12-03 18:27:02 -05:00
Xavier L'Heureux
62ac9b623a
Make sure to count the hidden directories
2019-11-26 08:31:52 -05:00
Xavier L'Heureux
f8ce6c97bf
Use more rusty patterns and preallocate enough space
2019-11-26 08:31:52 -05:00
Xavier L'Heureux
86b3cccaf6
perf(IO): use parallel walkdir (jwalk) for super faster traversal
2019-11-26 08:31:52 -05:00
Adam Lesperance
a1ece05af5
Testing deps should only be used when testing
2019-11-21 00:05:53 -06:00
andy.boot
9a9cbefd3d
Provide version information with -V
...
clap does most of this for you - I had forgotten to wire it up
https://github.com/bootandy/dust/issues/33
increment build version
2019-11-02 00:42:57 +00:00
Matt Vertescher
99003cbba9
Upgrade to the 2018 edition
2019-10-26 15:19:07 -04:00
andy.boot
0c19a66432
Add test for reverse flag
2019-10-08 20:57:44 +01:00
andy.boot
4cffc4370b
Bring back the reverse flag
...
Following the large refactor on the previous commit, this commit fixes
the reverse functionality.
Depth detection moved into the tree building instead of being calculated
when drawing the tree to screen
2019-10-06 22:00:40 +01:00
andy.boot
db6c8a019d
Massive refactor
...
WIP
Replace array of (string, int) pairs with tree of nodes.
A tree of nodes more accurately represents the underlying file structure
and hence is a better fit for the problem space.
Regression: Reverse doesn't work in this commit.
I suspect more methods can be simplifed and reduced.
2019-10-05 17:57:47 +01:00
andy.boot
e03094a4fa
Add reverse flag
...
Pull several variables related to how output is printed
into DisplayData struct
2019-10-03 23:07:52 +01:00
andy.boot
1d9a56e025
A way of supporting reverse
2019-10-02 22:31:49 +01:00
andy.boot
ec2d9e19d4
Run format, introduce new function.
...
strip_end_slash_including_root will remove end slashes including the
root directory.
The root directory has been a long running problem because if we strip
the final slash we will run dust on no directory instead of the root.
2019-10-02 20:14:13 +01:00
andy.boot
9fbfcb275a
pull out a method
...
(will be needed for reverse)
2019-10-02 20:06:09 +01:00
andy.boot
1c60d1e2ac
Display: replace boolean with integer count
...
This will probably be useful when i refactor for the reverse mode
2019-10-02 19:54:00 +01:00
andy.boot
fd35734a94
Simplify string code, remove into
2019-10-02 19:48:57 +01:00
Bob
d46b63fad8
Add detection of files which fail permission
...
Old code caught some file permission denied but not all.
2019-10-01 22:44:17 +01:00
Bob
872a49bb7d
better var name
2019-10-01 22:35:29 +01:00
Bob
2f7a88e8dc
Fix issues from running on root directory
...
clean up: 80338f4
Fixes -d flag to work again. Add test to stop regression
2019-10-01 22:18:16 +01:00
bootandy
80338f4731
Fix running on root dir /
...
Fixes: https://github.com/bootandy/dust/issues/22
Allows code to run on the root directory
2019-07-04 00:03:33 +01:00
bootandy
d327bd2e68
Fix code to handle single dots in path
...
Before this fix adding a single dot to the end of a path would cause the
code to crash.
2019-07-02 00:56:43 +01:00
bootandy
7db6cf2f32
Add test to handle single dot in path
2019-07-02 00:54:58 +01:00
bootandy
76d0762c97
Add assert to stop infinite loops
2019-07-01 22:43:10 +01:00
bootandy
6e03dd77e6
Fix obscure display bug
...
When one directory was a substring of another with files in the files
could appear as children of the wrong directory
Fix: https://github.com/bootandy/dust/issues/25
2019-07-01 22:25:06 +01:00
bootandy
4906e9efda
comment typos
2019-07-01 22:25:06 +01:00
bootandy
876609f2cb
Obey new clippy
...
Clippy is like having a reviewer fix your dodgy code.
2019-07-01 22:25:06 +01:00
andy.boot
0bf4ebf554
Fix minor color bug
...
If we are not using RED then the Color should be the terminal default
not 7
2018-06-19 23:39:23 +01:00
andy.boot
b1b933d851
Refactor & Optimize use of depth
...
Code Refactored
Using Depth now prunes the tree below the displayable depth so display
calls finish quicker.
2018-05-10 17:36:56 +01:00
andy.boot
51561994c5
Break up display_node function slightly
...
Also: run rustformat
2018-05-09 11:28:23 +01:00
andy.boot
ce0e14bf00
Tweak output - the root node now has a: ─┬
2018-05-09 10:58:32 +01:00
andy.boot
dd75ec4aa7
wip: code to remove duplicate arguments
...
Also handle case where an argument is a substring of another argument
2018-05-09 10:35:30 +01:00
bootandy
3e9f09e339
Remove unnecessary path & pathbuf code
2018-05-02 00:42:03 +01:00
bootandy
dba465a094
Tweak error message
2018-05-02 00:39:57 +01:00
bootandy
25d1ee7b43
Remove naked unwrap
2018-05-02 00:39:57 +01:00
bootandy
2556885622
Rust format
2018-05-02 00:39:57 +01:00
bootandy
8c088a7026
Fix: Passing a string into -n will no longer panic
...
fixes: #https://github.com/bootandy/dust/issues/16
2018-05-02 00:39:57 +01:00
bootandy
39db8b86fd
Replace simple match with map_or
2018-05-01 14:38:34 +01:00
bootandy
c5830c5d00
Stop using target_os just use target_family
...
target_family unix covers linux and mac and wraps up the call for inodes
in a common interface.
2018-05-01 13:59:48 +01:00