Commit Graph

140 Commits

Author SHA1 Message Date
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 f8ce6c97bf Use more rusty patterns and preallocate enough space 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
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
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 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 dba465a094 Tweak error message 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 b68c450710 use eprintln! 2018-05-01 13:55:19 +01:00
andy.boot 8170a07886 Increase default to 20 from 15
Clean up README a bit.
2018-04-27 10:23:20 +01:00
andy.boot 0f1f823736 Add long options to cmd line params 2018-04-27 10:15:30 +01:00
andy.boot e6c777fb8b Add support for -d depth flag
Following a user request the option '-d N' allows a user to output N
levels of sub directories.

Fixed bug: so that trailing slashes are now removed.
2018-04-27 10:01:41 +01:00
andy.boot 803934d84b By default only print last leaf of path
Fixes #9
https://github.com/bootandy/dust/issues/9

Instead of printing the all sub tree leaves only the last leaf is now
printed. See readme change for example

The flag '-p' was added to print the sub tree the old way
2018-04-24 14:54:11 +01:00
andy.boot 24c97ef92f Rewrite to use walkdir instead of recursion
Advised to use walkdir by burntsushi as using recursion on file systems
can blow the stack.

walkdir is slower but allows the code to be cleaner and more reliable

Also experimented with ignore but locking the hashmap resulted in
similar performance to walkdir but with much uglier code.
2018-04-24 14:53:47 +01:00
andy.boot 0c5b08e1d2 Change package name to du-dust
The binary is still called dust. Sadly dust was taken on crates.io.
This change should allow us to send this crate to crates.io
2018-04-18 13:40:52 +01:00
bootandy 5c6165da8a First integration test
This test needs neatening but it is the first example of a working
integration test
2018-04-05 14:45:04 +01:00
bootandy 6a63cbe1bc fix: Dust was supposed to take multiple dir args
Dust will now work when given multiple dirs. Before this fix it would
only show the largest dir.
2018-04-03 17:54:45 +01:00
bootandy ecf6c8f0e5 Refactor: Pull display code out to different file 2018-03-22 17:21:51 -04:00
Joe Ardent c127580057 Bring over dev/inode pair changes from bootandy's repo 2018-03-21 23:47:37 -07:00
Joe Ardent 8fa83e3836 First step of refactor done. 2018-03-21 10:55:03 -07:00
Joe Ardent 7fa2ce3434 start of refactor 2018-03-21 10:55:03 -07:00
Joe Ardent 99f462f023 s/sibblings/siblings/g 2018-03-20 20:40:36 -07:00
Joe Ardent 1c80cbf28b Make printing slightly prettier 2018-03-20 19:23:36 -07:00
Joe Ardent f802d7a6b4 quiet some clippy warnings 2018-03-20 19:23:36 -07:00
Joe Ardent b4c6c68527 minor whitespace changes from rustfmt 2018-03-20 19:10:24 -07:00
bootandy 2c495364c7 None core OS: fix code bug 2018-03-19 16:11:55 -04:00
bootandy ebc153f578 Use len instead of blocks.
len is simpler
2018-03-17 01:59:22 -04:00
bootandy fc3fbc6f64 hack 2018-03-16 22:31:09 -04:00
bootandy 3d0d5cee33 human readable output 2018-03-16 19:02:33 -04:00
bootandy 9f5fe4d01e clean up 2018-03-16 16:14:09 -04:00
bootandy 8356cc6e1b hacking away on an experiment 2018-03-16 15:51:44 -04:00