Commit Graph

11 Commits

Author SHA1 Message Date
andy.boot 6c130adb6c Refactor: PAtomicInfo class 2023-01-17 23:34:20 +00:00
andy.boot 9f0f366187 Refactor: progress bar & file permissions
Move permissions flag into shared pdata object.

Fixed bug where permissions flag was not being set correctly
2023-01-17 23:34:20 +00:00
andy.boot 81ad921e25 Refactor: progress bar: rename vars 2023-01-17 23:34:20 +00:00
andy.boot 3708edc2d3 Refactor: Progress bar: Remove atomic classes
On balance I'm not convinced these macro built wrapper classes are worth
it - It's clearer to use the standard atomic classes
2023-01-17 23:34:20 +00:00
andy.boot 414bc9e5a7 Refactor: Progress bar: Remove PConfig 2023-01-17 23:34:20 +00:00
andy.boot 66ad504848 Refactor: progress bar: simplify 2023-01-17 23:34:20 +00:00
andy.boot 5bfa44ec77 Refactor: progress bar: rm unused field 2023-01-17 23:34:20 +00:00
andy.boot 03a8d643c5 Refactor: Simplify progress indicator
Reduce & simlpify.

Cut feature: where we only report file count, it is always
useful to see file size as well.

cut feature: plural of file. If dust has only indexed a single file by
the time it prints the status then something has gone wrong, safe to
always assume a plural.
2023-01-14 16:51:32 +00:00
andy.boot 29957c1f2c refactor: update Progress bar: progress.rs
Remove none-needed macro
2023-01-14 16:51:32 +00:00
andy.boot 400ff513f4 Refactor: Update main for progress bar 2023-01-14 16:51:32 +00:00
NovaliX f3c074759d Implemented a progress indicator (#275)
* v1.0

* renamed operations to be more clear

* put info later because there is still operations par of the preparing process

* updated the last line clearing

* changed name of module and structs to ones that make more sens

* Disable size computation when file_count option is set

* added sleep during the thread waiting

* use 1024 powered instead of 10 to compute showed number

* include DS_Store

* added files directories skipped information

* small format update

* implement the -H option

* put wait back

* remove PAtomicInfo since it's not used

* cargo fmt

* wrapped atomic operations to reduce overhead

* updated comments

* Use AtomicU64Wrapper instead of AtomicU64 in TotalSize

* update size suffix

* sto dividing size when larger than terabytes

* Fix use_iso flag not be set properly

* update properties display

* some reformating

* use stdout instead of print

* Moved config instance into main because it's easier to read

* merge base formatting into macro

* update name to be more intuitive and separated math operations for more flexibility

* print currently indexed path

* cargo fmt

* reset size between each target dirs

* Access to TotalSize rather than it's inner

* small comment change

* Update sysinfo version to 0.26.7

* fix: update use of sysinfo.system

System is now much quicker to start but requires an explicit call
to refresh memory else it deafults to 0 (oops)

* clippy: Fix new clippy

* fix: bug where hard links could be double counted

When running:
dust dir_a dir_b

if a file was hard linked in both dir_a and dir_b it would be double
counted.

This fix resolves this by keeping the shared hashmap around between runs
for the second and subsequent arguments.
https://github.com/bootandy/dust/issues/282

* Fix: depth=0 bug for multiple arguments

https://github.com/bootandy/dust/issues/282

* refactor filter.rs

* refactor filter.rs

* refactor create AggregateData for filter.rs

* feature: Support for dereference links -L follow

du has -L flag which allows it to dereference or follow
symlinks. Clone this feature into dust.
https://github.com/bootandy/dust/issues/276

* refactor dir_walker

I find this layout cleaner

* v1.0

* changed name of module and structs to ones that make more sens

* Disable size computation when file_count option is set

* added files directories skipped information

* implement the -H option

* wrapped atomic operations to reduce overhead

* used human_readable_number function in display module rather than our own

* implemented progress disabling

* cargo fmt & cargo clippy

Co-authored-by: Guillaume Gomez <guillaume1.gomez@gmail.com>
Co-authored-by: andy.boot <bootandy@gmail.com>
2023-01-14 11:43:22 +00:00