54 Commits

Author SHA1 Message Date
andy.boot 8553d95f6d Increment version
new flags added -e -v -t
2021-09-19 11:17:33 +01:00
andy.boot 124c19b5c9 Feature: Adding file types filter & F flag changed
-t = Show summary of types

-e = Filter by regex
	allows you to specify a file type like -e "\.txt$"

Change behaviour of '-f' flag - it now counts only files. Before it
counted files & directories. This was needed for compatibility with
the new '-e' filter flag
2021-09-19 11:12:23 +01:00
Ethan Smith c25f7d342c Build Debian packages in CI 2021-09-06 08:54:27 +01:00
andy.boot 07ffd04950 Increment version
This version includes fix for the -f flag
2021-08-05 08:47:47 +01:00
andy.boot 8fddb24165 Increment version 2021-07-19 14:09:21 +01:00
andy.boot 42163abb73 Cargo: Remove num_cpus library. Ran update
Not needed since v0.6.0
Ran cargo update
2021-07-07 18:35:05 +01:00
andy.boot 02392881c5 Update version 2021-06-23 09:40:58 +01:00
andy.boot 00c7ce8f15 Large refactor. Use rayon, 10X performance boost
Code changes:
Removed ignore & channel crates. Using a single reciever thread to build
a hashmap to prevend duplicate inodes being reported gave a severe
performance penalty

Using rayon crate with some hand crafted file traversal has improved
performance aprox 10X

Behaviour changes:

Removed parameter 'limit by filesystem' - don't think this is used, and
I only added it as it was easy to add with the ignore crate.

Sym links will now not appear in the output tree unless using '-s'
'apparent-size' flag

Change behaviour of multiple args so that it unifies them and
compares them under one tree instead of treating them
individually: https://github.com/bootandy/dust/issues/136
2021-06-22 12:20:48 +01:00
andy.boot e1ffc92589 Merge branch 'master' into master 2021-06-08 10:24:31 +01:00
ttay 8a499201de Updated crossbeam-channel to 0.5 and ran Cargo update 2021-06-08 10:11:11 +01:00
QuarticCat 15a867636f Add wrap_help feature to clap 2021-06-05 20:39:59 +08:00
andy.boot d5fa7f0861 Increment version 2021-01-16 15:42:39 +00:00
Sylvestre Ledru ca8b1efc18 Be less prescriptive for the ansi_term dep 2020-10-08 23:04:54 +01:00
oToToT c261492325 encode non-printable characters
use stfu8 to encode utf-8 characters
2020-10-08 22:57:01 +01:00
andy.boot 2319c3032f Increment version for new release 2020-09-03 21:58:27 +01:00
andy.boot 4e1180e502 hack 2020-08-30 10:39:03 +01:00
andy.boot 4ea8d9339e Support listing directories by number of files
Based of https://github.com/bootandy/dust/pull/104

Idea is to allow users to find the number of files in each directory
instead of size.
2020-08-30 10:39:03 +01:00
andy.boot 109df305a3 Upgrade packages 2020-08-18 23:12:28 +01:00
andy.boot 2ca6fcc9ce Increment version 2020-08-02 14:26:33 +01:00
andy.boot 7cc7047b28 Move from assert_cli to assert_cmd
assert_cli is deprecated.
This allows us to use 'or' in the output of our integration tests
2020-03-28 15:06:40 +00:00
andy.boot 1953e107c2 Move everything to ignore instead of jwalk 2020-03-22 23:58:07 +00:00
andy.boot 9452049aff Increment version 2020-03-01 16:23:26 +00:00
Neel Chotai 26ae050f16 use LS_COLORS for directories 2020-03-01 00:51:32 +00:00
andy.boot bc0e376c88 New Version 2020-02-19 20:22:54 +00:00
andy.boot 603e6be7eb Large redesign
Use the whole width of the terminal assume width of 80 if none found

Show percentages in the final column. Show ASCII bars indicating usage
of the underlying directories in the space inbetween.

Display (height of terminal - 10) entries by default.

Reverse the output order so largest is at the bottom.

Break up tests. Change older tests to check real output of program.
2020-02-18 20:58:53 +00:00
andy.boot edf300893c Increment version 2020-02-09 10:08:41 +00:00
Adam Lesperance 0c7b05fec9 Fix get_metadata on windows
The MetadataExt functions are nightly-only right now so we need to call
the windows api ourselves to get the device number.  The winapi_util
package has a nice wrapper to do this for us.

The get_device function doesn't appear to be used anywhere so I removed
it.
2020-01-21 00:06:41 -06:00
andy.boot 352c0f7d90 Increment version number 2020-01-19 09:32:49 +00:00
andy.boot 350d695f7c Add num_cpus as Cargo dependency
Will be used to detect single core computers which crash Jwalk
2020-01-18 21:57:11 +00:00
andy.boot a36eec6cae Increment version number 2019-12-30 21:40:30 +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 b934445e04 Pin jwalk to dependency version
https://github.com/jessegrosjean/jwalk/issues/13
Having raised the above issue I don't want it fixed in a minor version
as I have added a work around
2019-12-23 15:48:38 +00:00
andy.boot 7e47d5b47a Increment version number 2019-12-08 23:36:48 +00: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
Adam Lesperance cef2c588b7 Latest deps 2019-11-20 23:05:57 -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 0effaa7fd7 Increment version 2019-10-08 21:05:37 +01:00
Bob 7ac01e8166 Increment version number 2019-10-01 22:18:36 +01:00
bootandy fd68330815 Update cargo lock 2019-07-01 22:25:06 +01:00
andy.boot 6a86e8befd Increment version number 2018-05-09 11:46:42 +01:00
andy.boot 6e2e5761d8 Increment version 2018-04-27 12:46:27 +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 b8ad44b7f0 increment version 2018-04-06 20:49:22 +01:00
bootandy 1a34bc3198 Integration tests
Several tests for recursive dirs, hard & soft links.
Tests use the tempfile project.

Personally I find the tests hard to read. Am considering adding a
'--no-color' output option as this will make the tests much more
readable. (Currently we have to call format_string to get the matching
colors and if a test fails the diff is very hard to read).
2018-04-06 20:44:02 +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 f39b09e79c increment version (0.2.1 already tagged) 2018-04-05 14:45:04 +01:00
bootandy 285fd62850 increment version 2018-04-03 19:53:37 +01:00