All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- enable "chrono" in
trash
crate This hopefully adds deletion dates to trashed files.
- update actions/upload-artifact to v4 The release workflow failed because actions/upload-artifact@v1 doesn't work anymore.
- 3 commits contributed to the release.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #268
view details
- upgrade
gix-glob
andtrash
- add x-cmd install steps
Hi, I've added instructions on how to install dua using x-cmd to the README file.
- x-cmd is a toolbox for Posix Shell, offering a lightweight package manager built using shell and awk.
x env use dua
- Auto submit new manifest to winget-pkgs
- 11 commits contributed to the release.
- 3 commits were understood as conventional.
- 1 unique issue was worked on: #265
view details
- #265
- Upgrade
gix-glob
andtrash
(25a6ad7
)
- Upgrade
- Uncategorized
- Release dua-cli v2.29.3 (
f5cb1ce
) - Merge pull request #266 from Byron/upgrades (
297be49
) - Merge pull request #261 from Byron/dependabot/github_actions/dot-github/workflows/actions/download-artifact-4.1.7 (
ee55bf5
) - Merge pull request #260 from Byron/dependabot/cargo/gix-path-0.10.10 (
4d859aa
) - Bump actions/download-artifact from 1 to 4.1.7 in /.github/workflows (
57a67a5
) - Bump gix-path from 0.10.9 to 0.10.10 (
4db9b9e
) - Merge pull request #259 from lunrenyi/patch-1 (
b3fdc92
) - Add x-cmd install steps (
c66e585
) - Merge pull request #256 from Dragon1573/issues/255 (
3309e3b
) - Auto submit new manifest to winget-pkgs (
fa203b1
)
- Release dua-cli v2.29.3 (
A maintenance release without user-facing changes.
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 2 unique issues were worked on: #253, #254
view details
This is a maintenance release without user-facing changes.
- clippy warning
- update version in install instructions
- 16 commits contributed to the release over the course of 126 calendar days.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #253
Clippy helped 1 time to make code idiomatic.
view details
- #253
- Avoid
Cargo.lock
in exported archives (2ef583d
)
- Avoid
- Uncategorized
- Release dua-cli v2.29.1 (
c82b3f9
) - Prepare changelog prior to release (
9a27130
) - Update locked dependencies (
319bdde
) - Merge branch 'olastor/main' (
80c14a9
) - Thanks clippy (
7ddbfbe
) - Update version in install instructions (
f0b9a8e
) - Merge pull request #246 from matta/use-ratatui-terminal (
ced3b4f
) - Update dependencies to fix CI (
69a7cdd
) - Replace tui_react::Terminal with tui::Terminal (
1350c2f
) - Merge pull request #247 from matta/fix-clippy (
e3aff9d
) - Merge pull request #240 from denilsonsa/patch-1 (
c1caa70
) - Clippy warning (
46ebf14
) - Added link to Filelight (
e3883af
) - Merge pull request #235 from blinxen/main (
66e0166
) - Update gix-glob dependency to 0.16.2 (
71a365e
)
- Release dua-cli v2.29.1 (
- Add scrollbar to the main entries list. That way it's easier to grasp how long the list is, and how fast one is traversing is.
- avoid crashes when the terminal is resized to unusually small sizes.
- mark-pane help bar now shows closest to the selected item. Previously this would only work in the first screen, but not when the list was long enough for scrolling.
- 19 commits contributed to the release.
- 46 days passed between releases.
- 3 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Release dua-cli v2.29.0 (
ab52733
) - Avoid crashes when the terminal is resized to unusually small sizes. (
caa1e72
) - Mark-pane help bar now shows closest to the selected item. (
24a6c29
) - Update to the latest versions of
tui-react
andratatui
(8ab4ee7
) - Fix possible overflow during substraction in mark pane (
a94c7d3
) - Add scrollbar for mark list (
5fe858d
) - Add scrollbar to the main entries list. (
0c511ff
) - Avoid iterating a potentially long list doubly (
fd797e8
) - Add scrollbar for main list (
120a08a
) - Merge branch 'dev/pwach/ignore-vs-code' (
b79fde4
) - Remove user and platform specific files from
.gitignore
(30f28a7
) - Ignore .vscode directory (same as .idea) (
27cbd21
) - Merge pull request #231 from gosuwachu/dev/pwach/fix-clippy (
250fdc4
) - Update dependencies (
0086854
) - Fixes clippy error in rust 1.76 (
85c00cd
) - Merge pull request #229 from chessmango-forks/main (
5052da9
) - Different image obvi (
f5ec49f
) - Strip arm64 bin (
504ac52
) - Add aarch64 releases (
a88baf1
)
- Release dua-cli v2.29.0 (
-
add
dua i --no-entry-check
flag. With it, in interactive mode, entries will not be checked for presence.This can avoid laggy behaviour when switching between directories as
lstat
calls will not run, which can be slow on some filesystems.
- 4 commits contributed to the release.
- 1 day passed between releases.
- 1 commit was understood as conventional.
- 2 unique issues were worked on: #226, #227
view details
-
allow
/
(glob-mode) while scanning. This will possibly lead to incomplete results, but I find being able to use ones muscle-memory more important than preventing dealing with incomplete results.What happens to me is usually to type
/
followed bytarget/
which tends to select all current entries for deletion. -
don't check entry metadata while a scan is in progress Previously each time the UI refreshes, every 250ms, it display entries but also check their metadata to assure they exist.
This could lead to performance loss when the displayed folder has a lot of entries.
- 4 commits contributed to the release.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #223
view details
- Explicit refreshes with 'r and 'R' now work with multiple root paths as will.
This can happen in cases of
dua i root-a root-b
for instance.
- 8 commits contributed to the release.
- 4 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Release dua-cli v2.27.1 (
346b944
) - Explicit refreshes with 'r and 'R' now work with multiple root paths as will. (
f70d1a8
) - Refactor (
9d976d0
) - Cargo fmt (
99b5443
) - Tests for refresh & selection (
dcff2ee
) - Fix refresh with multiple input paths (
65f6735
) - Test glob pane open/close (
7efd77e
) - Tests for shwing/hiding additional columns (
dbab511
)
- Release dua-cli v2.27.1 (
-
Press
r
orR
for refresh Lower-caser
will refresh the currently selected entry, while upper-caseR
will refresh the entire displayed directory, and all entries in it.Further, what was called
item
is now calledentry
across the user-interface. -
show and hide mtime and item count columns with 'M' and 'C' respectively
- 45 commits contributed to the release.
- 11 days passed between releases.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #96
view details
- #96
- Uncategorized
- Release dua-cli v2.27.0 (
322eeb1
) - Refactor (
18a725d
) - Make
Shift+r
do more than 'r' (f1fc13e
) - Preserve selected element after refresh (
99e5384
) - Various updates based on the code review feedback: (
c3d665d
) - Cargo clippy & fmt (
ad7abd8
) - Fix tests (
6b24912
) - Exit glob mode if view root is the same as glob root (
253f720
) - Fix updating item count (
13614a9
) - Fixed tests (
69f14af
) - Remove debug comments (
9f37e1c
) - Refresh all in view vs selected (
06ee3ab
) - Fix file count (
eeae2bc
) - Fix traversal stats (
96ef242
) - Moved traversal stats to separate type (
969e64b
) - Traverse children vs parent & fix parent node size after refresh (
226cbb8
) - Add
R
to trigger a full refresh (PoC) (30d8dd5
) - Make WalkOptions available in State so it can re-use it for additional walks. (
0ad90ba
) - Merge pull request #217 from Geezus42/patch-1 (
85005ce
) - Update README.md (
e0ac3d1
) - Merge branch 'show_columns' (
1a54d95
) - Show and hide mtime and item count columns with 'M' and 'C' respectively (
1544e8d
) - Refactor (
30da672
) - Clippy (
c4efba8
) - Fixed tests (
d903ea6
) - Fmt (
6c63bf5
) - Clippy (
f74a40a
) - New Traversal (
9eaa961
) - Fmt (
b3236dc
) - Clippy (
8aaa05a
) - Started fixing tests... (
5abb9d7
) - Remove commented out code (
7378bd8
) - First working version (
b52f66e
) - Cargo fmt (
0cd5ea9
) - Update entries (
bb511b5
) - Wip (
51b67ff
) - Clean-up init function (
13c381b
) - Move ByteFormat out of WalkOptions (
e53036a
) - Move AppState to separate file (
feec3eb
) - Move TerminalApp to separate file (
5123cf5
) - Scan disabled (
cf3c507
) - Update demo (
0e2e8c6
) - No Interactive enum (
807916c
)
- Release dua-cli v2.27.0 (
-
responsive and buttery-smooth UI while scanning in interactive mode. Using
dua i
the GUI would populate and is fully usable even while the scan is in progress, which is fantastic when scanning big disks which can take several minutes.However, previously is was quite janky as the refresh loop was bound to receiving entries to process, which sometimes stalled for many seconds.
Now the GUI refresh is uncoupled from receiving traversal entries, and it will update when the user presses a key or 250ms pass without any input, causing it to respond immediately.
Thanks so much for contributing, @unixzii!
- 4 commits contributed to the release.
- 2 days passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #209
view details
- remove obsolete
tui-shared
feature
-
add
--log-file
flag to keep track of some debug info, which includes panics. Previously, whendua i
was used, panics would be hard to observe, if at all, as they would print to the alternate screen. Now, when the--log-file dua.log
is specified, the panic will be emitted into the log file instead and thus won't be lost anymore.This may help with debugging in future.
-
--ignore-dirs
now work as expected. Previously they would need to be specified as relative to the traversal root, which was unintuitive and would lead to ignores not working for many.Even though this was done for performance to avoid canonicalization, we do now perform a more performance version of canonicalization so the overall performance should be acceptable nonetheless.
Also note that ignored directories are now logged when using a
--log-file
. -
consistent language across the application and improved style of the Help pane. Generally, what was called
entry
is now calleditem
, consistently.
-
clarify that (and why)
termion
isn't supported anymore in README.md This was triggered bycrossterm
essentially breaking event handling on Windows, which is when I decided to just use the seemingly more powerful crossterm events natively.Overall, this made event handling more complex, but also allows users of
crosstermion
(the crate that actually droppedtermion
support) to write even more interactive applications without worrying about the always out-of-date intermediate layer.Interestingly, the
crosstermion
crate adds some useful features around event handling, but also optimizes build times thanks totermion
, which is something that on my current machine I don't notice anymore, so the value of it diminished greatly.
- 14 commits contributed to the release over the course of 7 calendar days.
- 7 days passed between releases.
- 5 commits were understood as conventional.
- 2 unique issues were worked on: #196, #208
view details
- #196
--ignore-dirs
now work as expected. (49f98f5
)
- #208
- Uncategorized
- Release dua-cli v2.25.0 (
ad7c77a
) - Use
gix-path
for more control and performance. (93f0f61
) - Refactor (
7905b48
) - Fix ignore dirs wip (
e2d5a34
) - Merge branch 'logging' (
196f0d6
) - Add
--log-file
flag to keep track of some debug info, which includes panics. (6fbe17f
) - Enforce Rust 2021 style (
45d886a
) - Merge branch 'help-language-consistency' (
0a0dfe6
) - Consistent language across the application and improved style of the Help pane. (
20e85c1
) - Option to enable debug logs (
4482e1d
) - Keep consistent language/punctuation/case throughout the app. (
1e6db58
)
- Release dua-cli v2.25.0 (
- avoid duplicate key input on windows. On Windows, key-states like press/release/repeat are made available separately, which means we should avoid responding to key-releases as it would incorrectly double the actual user inputs.
- 4 commits contributed to the release.
- 1 day passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #203
view details
-
keep checking for existance of entries outside of the glob top-level. The glob top-level is used to display all search results which means that there can be a lot of them, which would unnecessarily slow down the search operation.
Previously it would never check for the existence of an entry in glob mode, but now it will do so outside of the top-level.
- 2 commits contributed to the release.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
This release adds long-awaited globbing support, just hit the /
key to get started.
You want to find the biggest .git
directories? Just type /.git/<enter>
and you are done.
What about all target directories? Just write target/
to the glob search prompt and it's done.
What about all directories ending in *.rs/
?
Oh, by accident you typed *.rs
and now there is a list of a quarter million of entries? No problem,
it's near instant even with millions of files to search or hundreds of thousands to display.
Note that glob-mode can be exited only by pressing
ESC
when the glob prompt has focus.
Special thanks go to the contributor who made this feature happen,
along with many other improvements. Now dua
feels refreshed for 2024, and is much more versatile.
Happy holidays!
- 30 commits contributed to the release.
- 12 days passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #197
Clippy helped 1 time to make code idiomatic.
view details
- #197
- EntryData size test passes on 32-bit (
9123ee7
)
- EntryData size test passes on 32-bit (
- Uncategorized
- Release dua-cli v2.24.0 (
f7958cc
) - Update dependencies (
bc8c7a6
) - Upgrade owo-colors to v4.0 (
141c56c
) - Update changelog prior to release; bump version (
cfa8faa
) - Merge branch 'glob-review' (
1c4d6a7
) - Use
gix-glob
for matching; support for matching dirs only. (2e1858c
) - Remove treeview abstraction in favor of something simpler (
3804a1f
) - Refactor glob widget (
b945a1e
) - More copy-on-write for entries (
bc56664
) - Refactor shortening (
8fae939
) - Thanks clippy (
b431ec3
) - Shorten long paths so that they fit on the screen (
7660d64
) - Show error message on empty search result (
360a0d7
) - Glob most used keys (
ff07f39
) - Fix formatting (
0a344fa
) - Fix cursor rendering (
aaa27e8
) - Small code review fixes (
49aecb9
) - Use appropriate tree view when listing entries (
7244bac
) - Replace EntryData in EntryDataBundle with individual properties (
f3b5d00
) - Implements glob search mode (
df6a02c
) - Merge pull request #201 from Byron/dependabot/cargo/zerocopy-0.7.31 (
b23e134
) - Bump zerocopy from 0.7.30 to 0.7.31 (
3efc857
) - Merge branch 'add_missing_slash_in_root_dir' (
9a15867
) - Make clear why roots were special cased, and try to restore that behaviour. (
94c008f
) - Adds the missing '/' prefix for root directories (
101a377
) - Merge branch 'app_state_init_refactor' (
f23a57f
) - Minior refactor (
6f09882
) - Refactors AppState initialization during app startup (
238bc5f
) - Merge pull request #198 from cinerea0/fix-32bit-test (
1b838f9
)
- Release dua-cli v2.24.0 (
-
display the total count of entries-to-be-deleted in the mark pane. This allows to better estimate how much work will be needed to perform the deletion.
For example, when marking 3 items for deletion, previously one would see
3 items marked
, but now one will see all items and sub-items, like120k
items marked`, which reflects the work that will be done much more precisely. -
Add total size to header bar and change to aggregate, human-readable item count. This changes the display from
(2034 items)
to(2k items, 213 MB)
, providing an overview of the total amount of storage used along with the total amount of files on a particular hiearchy level.
- single files will not cause IO error
Running
dua <filename>
will once again provide size information about that filename.
- 17 commits contributed to the release.
- 2 days passed between releases.
- 3 commits were understood as conventional.
- 1 unique issue was worked on: #194
view details
- #194
- Single files will not cause IO error (
192460e
)
- Single files will not cause IO error (
- Uncategorized
- Release dua-cli v2.23.0 (
491b558
) - Merge branch 'main_windows_render_refactor' (
2da2e2e
) - Refactor (
49772d1
) - Display the total count of entries-to-be-deleted in the mark pane. (
98d5b5a
) - Refactor (
81eadf8
) - Calculates mark pane item count consistently with the rest of the app (
2c69ea1
) - Refactors MainWindow render to make it more readable (
8740d4b
) - Merge branch 'upgrades' (
a9dd549
) - Upgrade to latest crossterm; switch to
ratatui
fromtui
(af2aa61
) - Update all dependencies (
852ee28
) - Merge branch 'total_item_count' (
ba2efe4
) - Add total size to header bar and change to aggregate, human-readable item count. (
3241022
) - Merge branch 'make_ready_pre_pr_checks' (
606d60f
) - Adjust names of
make fmt
andmake ready
;fmt
now only checks (9135c18
) - Adds new target that runs all the checks (to be used before creating a PR) (
7fbc136
) - Displays total item count (
7b7bad5
)
- Release dua-cli v2.23.0 (
- Press
c
to sort by count of entries in a directory. That way it's easy to spot places that have a lot of (possibly small) files, which otherwise would remain under the radar when sorting by size.
- 15 commits contributed to the release over the course of 3 calendar days.
- 3 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Release dua-cli v2.22.0 (
949baf3
) - Press
c
to sort by count of entries in a directory. (45ccb7c
) - Assure sorting of entry-counts takes files into consideration. (
8439ba7
) - Refactor (
9fb3113
) - Adds keybinding for 'c' to toggle sorting by number of items (
8df0b4c
) - Merge branch 'column_render' (
bf4da4e
) - Run clippy locally just like on CI (
645474c
) - Refactor (
bbcd308
) - Fix visual changes (
b8ad16b
) - Make clippy warnings fatal (
1a46d8f
) - Refactors entries panel by moving code to separate functions (
b5b6aba
) - Put release-build optimization back to level 3; remove windows GNU build. (
917339f
) - Change optimization level back to 0 for hopefully more stable release builds. (
2dced34
) - Assure package-size check isn't fatal anymore (
3e509db
) - Pacify the package size checkf or a while. (
09fd59f
)
- Release dua-cli v2.22.0 (
-
With a single path provided as root, pretend it's the current working dir This makes it seem like the user started the directory walk directly in the given directory, which is more intuitive than the previous approach only showed the given directory as top-level directory.
Note that this change only affects invocations like
dua <dir>
ordua i <dir>
. -
press
m
to sort by modification date, ascending and descending.
- slightly faster (0.5ms) startup times of the binary on MacOS and maybe Linux.
- 14 commits contributed to the release over the course of 11 calendar days.
- 14 days passed between releases.
- 3 commits were understood as conventional.
- 5 unique issues were worked on: #110, #141, #179, #185, #186
Clippy helped 1 time to make code idiomatic.
view details
- #110
- #141
- Press
m
to sort by modification date, ascending and descending. (dd523e3
)
- Press
- #179
- Press
m
to sort by modification date, ascending and descending. (dd523e3
)
- Press
- #185
- Slightly faster (0.5ms) startup times of the binary on MacOS and maybe Linux. (
72fd6d1
)
- Slightly faster (0.5ms) startup times of the binary on MacOS and maybe Linux. (
- #186
- Assure
device_id
is taken from the final CWD (74e6d42
)
- Assure
- Uncategorized
- Release dua-cli v2.21.0 (
7e3e290
) - Manually set the desired version as
cargo smart-release
fails to see that 2.20.3 is available (f5bd870
) - Prepare changelog (
6ff009a
) - Thanks clippy (
0c4d31b
) - Skip through single root directory (
e9fb2fd
) - Increase optimization level (
3d270bd
) - Fix tests on Windows (
1b7457e
) - Hide mtime column by default, unless enabled (
0f8377a
) - Adds keybinding 'm' to toggle sorting by modified time (
2bd06be
) - Add test to assure memory consumption of EntryData doesn't change unexpectedly. (
adebd00
)
- Release dua-cli v2.21.0 (
- mark-pane now doesn't double-count sizes anymore.
- 3 commits contributed to the release.
- 1 day passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- alignment when in interactive mode and -f binary
- 9 commits contributed to the release.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #177
view details
- #177
- Alignment when in interactive mode and -f binary (
49c3e3d
)
- Alignment when in interactive mode and -f binary (
- Uncategorized
- Release dua-cli v2.20.2 (
28fa9dd
) - Update dependencies (
12fa54a
) - Upgrade journey-test expectations (doesn't run on CI for some reason) (
5498040
) - Upgrade
itertools
(0c8b6f2
) - Upgrade
open
(192420e
) - Fixes alignment when in interactive mode and -f binary (
b3bb851
) - Make clear which windows toolchain is used on CI (
8c02612
) - Update all dependencies (
1bbee14
)
- Release dua-cli v2.20.2 (
- release definition to use a more recent ubuntu, to get linux binaries. Otherwise there are no linux runners who can satisfy the request, and they hang forever, instead of saying something useful.
- 2 commits contributed to the release.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #160
view details
- TUI now shows performance metrics while scanning and after.
This is in preparation for the
moonwalk
upgrade. - improve CLI help provided with the
--format
flag. It's now possible to see what possible values are without reading a swath of text. Now the default is shown as well which is more important now that it changes depending on the platform. - use metric byte format only on MacOS. That way, on linux the binary format is used by default which is more common on that platform.
- Improve documentation for
Marked Items
pane to make clearer how to delete items.
- 14 commits contributed to the release.
- 4 commits were understood as conventional.
- 3 unique issues were worked on: #157, #33, #85
Clippy helped 1 time to make code idiomatic.
view details
- #157
- Share
cargo
invocation to help install on more platforms (7ef48ad
)
- Share
- #33
- Improve documentation for
Marked Items
pane to make clearer how to delete items. (b61ec97
)
- Improve documentation for
- #85
- Use metric byte format only on MacOS. (
22f54dd
)
- Use metric byte format only on MacOS. (
- Uncategorized
- Release dua-cli v2.20.0 (
9c07301
) - TUI now shows performance metrics while scanning and after. (
13bfe45
) - Thanks clippy (
565581f
) - Simplify GUI refreshes by using a throttle (
c921dc7
) - Generalize the throttle implementation to allow usagein UI (
e03c560
) - Added additional clarification for deleting help files. (
fcc8be9
) - Dependency update (
032747d
) - Improve CLI help provided with the
--format
flag. (d0e85fe
) - Refactor (
b474b81
) - Use binary format by default (except on macOS) (
3ccf204
) - Merge pull request #147 from nyurik/patch-1 (
658c676
)
- Release dua-cli v2.20.0 (
-
-x
is applied to traversal as well. Previouslydua
would cross filesystems for traversal and simply not yield them, which somewhat defeated the purpose.Now it will avoid traversing into filesystem entries that are on a different filesystem, which should improve its performance visibly whenever multiple filesystems are involved.
- don't recurse on cross-device filesystems
Like it says in the title. Right now, if you pass
-x
, dua doesn't count files on other devices, but it still enumerates them. However, a good reason to use-x
is if you have network mounts that are slow, so this fixes that.
- 5 commits contributed to the release.
- 17 days passed between releases.
- 2 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- redraw window while gathering metadata in interactive mode. This fixes a by now long-standing issue with interactive mode only updating when keys are pressed, but not automatically.
- 7 commits contributed to the release over the course of 52 calendar days.
- 53 days passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #143
view details
- #143
- Redraw window while gathering metadata in interactive mode. (
fb5a39f
)
- Redraw window while gathering metadata in interactive mode. (
- Uncategorized
- Release dua-cli v2.19.1 (
e6c10c5
) - Update dependencies (
662e754
) - Draw window before processing events, fixes #143 (
d957a61
) - Update dependencies (
f7de1ab
) - Create our own threadpool with minimal stack instead of using the global one. (
7802985
) - Uprgade to latest
jwalk
version for more hang-safety (9bdf26a
)
- Release dua-cli v2.19.1 (
-
Remove the handbrake on MacOS which can now deliver the expected performance. Previously it would limit itself to only using 4 threads as it would use a lot of time in user space. This has changed now, and the traversal itself is much more efficient (even though it could definitely be more efficient when comparing to
pdu
).In any case, counting performance should now greatly improve on M1 MacOS machines.
- resolve stalling issue of previous version. This way, this release is the working version of v2.8.1 .
- 3 commits contributed to the release.
- 2 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- downgrade
jwalk
to 0.6 - the latest version does not actually iterate but instead keeps everything in memory. That's whydua
didn't feel responsive anymore, was much slower and built up a lot of memory.
- 3 commits contributed to the release.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Update all dependencies to the latest version. This most notably changes the look of the CLI
to something without color by default thanks to the upgrade to clap
4.
- replace
colored
dependency withowo-colors
. The latter provide zero-allocation coloring in the terminal and may improve compile times a little.
- colored path printing; fix size column format
- 12 commits contributed to the release.
- 2 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 2 times to make code idiomatic.
view details
- Uncategorized
- Release dua-cli v2.18.1 (
58b53ff
) - Prepare changelog prior to release (
4f7915a
) - Upgrade to clap 4 (
dd8b0ef
) - Upgrade sysinfo and make thread detection work for all Apple M series for now. (
bbd5c67
) - Upgrade to trash v3.0 (
bbd3a1c
) - Thanks clippy (
82dc467
) - Update dependencies (
0057c0d
) - Adjust journey-test expectations according to difference in color encoding. (
b0bacad
) - Replace
colored
dependency withowo-colors
. (946806e
) - Refactor (
a734efb
) - Thanks clippy (
44e19ee
) - Colored path printing; fix size column format (
d3fa946
)
- Release dua-cli v2.18.1 (
- Remove a duplicate draw call which would have doubled the time it takes to refresh on user input. This might have been noticable when large amounts of files are displayed.
- switch from colored to owo-colors owo-colors is well-maintained, zero-allocation, zero-dependencies crate for terminal colors. Also it works on any type that implements Display trait, not just on strings.
- Automatically resize if the terminal changes in size.
- 11 commits contributed to the release over the course of 54 calendar days.
- 68 days passed between releases.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #28
view details
- #28
- Automatically resize if the terminal changes in size. (
28f5ac9
)
- Automatically resize if the terminal changes in size. (
- Uncategorized
- Release dua-cli v2.18.0 (
7fe68ea
) - Update changelog (
8dc45ab
) - Make sure the correct version of
crosstermion
is used (ed0bfc7
) - Prepare changelog (
50fd287
) - Merge branch 'dep-upgrade' (
20b7672
) - Upgrade dependencies to tui 0.19/crossterm 0.25 (
e35baea
) - Switch from colored to owo-colors (
6a636d5
) - Add Apple M2 to default thread derivation (
b5ec900
) - 'Other' -> 'Pre-built binaries' for clarity (
6bd4338
) - Add Scoop installation for Windows (
8c67198
)
- Release dua-cli v2.18.0 (
- remove
chrono
from the dependency tree. This assures there is no possibility for undefined behaviour to to localtime support used by some of thetrash
-crate code otherwise.
- 4 commits contributed to the release.
- 20 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Improve readability of the currently visible path in light terminal color themes (#129).
- 4 commits contributed to the release.
- 2 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
A maintenance release which should make the ctrl + o
feature open files without blocking on linux
thanks to an upgrade in the open
crate which powers this feauture.
- 4 commits contributed to the release.
- 29 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- update to latest version of
trash
to improve trashing on linux See their respective release.
- 3 commits contributed to the release.
- 1 day passed between releases.
- 1 commit was understood as conventional.
- 2 unique issues were worked on: #124, #127
view details
- Show all possible information even if one input path could not be read. Previously it would fail entirely without printing anything useful but a relatively non-descript error message.
- broken or non-existing root path will still print the valid results. Previously it would fail completely without printing anything.
- Open interactive mode even if one of the input paths can't be read. Note that there can still be improvements in indicating which path failed. Also it will happily show an empty user interface in case all input paths are not readable.
- 6 commits contributed to the release.
- 2 days passed between releases.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #124
view details
- #124
- Uncategorized
- dependency update; upgrade to trash v2.1.1 . The trash upgrade makes sure that trashed items on mount points on freedesktop are actually restorable.
- broken or non-existing root path will still print the valid results. Previously it would fail completely without printing anything.
- 4 commits contributed to the release over the course of 3 calendar days.
- 3 days passed between releases.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #123
view details
A maintenance release that updates all dependencies. Most notably, trash-rs
includes a fix for
properly moving files into the trash that required parent directories to be created.
- 4 commits contributed to the release over the course of 8 calendar days.
- 46 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Previously, aggregate mode progress reports were handled by an infinitely-looping thread carrying a 64-bit atomic of the current count, which it would print periodically.
This resulted in #99 - breaking on platforms without 64-bit atomics, for which a feature was added to disable it.
It also implied a race condition, where the "Enumerating ..." message could be printed after results had been gathered but before dua exited.
Additionally, part of the status message could be left on the display if the first line of a report was too short to cover it.
This commit should resolve these:
- The 64-bit atomic counter is replaced with an 8-bit AtomicBool
- All printing is controlled from the main thread
- The first line is cleared prior to printing a report
The only notable drawback I see with this approach is that progress reporting can sometimes be delayed, since the display is only evaluated for update during periods the aggregation loop makes progress. The practical difference appears relatively minor.
Since this should resolve #99, the aggregate-scan-progress feature is removed.
Special thanks to @Freaky for the contribution!
The aggregate-scan-progress
feature was removed as it shouldn't be required anymore.
- 9 commits contributed to the release over the course of 55 calendar days.
- 57 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Release dua-cli v2.17.1 (
48c4462
) - Prepare changelog (
fc1e10a
) - Improve aggregate progress reporting (
7d83f96
) - Update dependencies (
9a1da6b
) - Upgrade sysinfo (
0b6b52f
) - Adjust to changes in clap (
f9df024
) - Dependency update (
0d9fbd3
) - Update clap to official release (
b029dc5
) - Upgrade to TUI 0.17 (
9ce96ac
)
- Release dua-cli v2.17.1 (
-
interactive mode learns 'toggle [a]ll' and 'remove [a]ll'. In the mark pane, the 'a' key will now toggle all entries. This is particularly interesting for selecting entries to exclude by hande and then invert the selection by toggling [a]ll.
In the mark pane, toggling all with the 'a' key means removing all entries and closing the pane.
- 4 commits contributed to the release.
- 12 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
-
Add
--ignore-dirs
option, with useful default on linux.On linux there are a few directories which shouldn't be traversed by default as they may cause hangs and blocking.
With the new argument it's possible to specify absolute directories to not enter during traversal, with a default set to avoid problematic directories on linux right away.
- build on platforms without 64-bit atomics
- 9 commits contributed to the release over the course of 60 calendar days.
- 74 days passed between releases.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #116
Make dua
less prone to hanging by ignoring certain special directories on linux.
-
Add
--ignore-dirs
option, with useful default on linux.On linux there are a few directories which shouldn't be traversed by default as they may cause hangs and blocking.
With the new argument it's possible to specify absolute directories to not enter during traversal, with a default set to avoid problematic directories on linux right away.
-
cargo install
without--locked
should work now
- 5 commits contributed to the release.
- 1 commit was understood as conventional.
- 1 unique issue was worked on: #111
view details
- see if releases work now with a different create-release action We are only interested in the upload_url, not in actually creating a release as smart-release does that already.
- 2 commits contributed to the release.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- try to produce release binaries once more With smart-release, this is created automatically.
- 3 commits contributed to the release.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- auto-config support for Apple M1 Pro and Apple M1 Max
- 4 commits contributed to the release.
- 38 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Fix deletion which broke with Rust 1.55, for those who are compiling the tool themselves.
- 3 commits contributed to the release.
- 26 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Support for arrow keys as well as Home & End. The help pane was updated to reflect these changes.
- More readable information on how to delete or trash files in the mark pane.
- 8 commits contributed to the release over the course of 3 calendar days.
- 5 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Fix installation via
cargo install dua-cli
. Please note that it might break again as it still depends on the unsableclap-3 beta 4
. Even when pinning it breakage is possible as its dependencies itself aren't pinned.
- 5 commits contributed to the release over the course of 11 calendar days.
- 11 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- upgrade depencies
- upgrade to tui 0.16
- 3 commits contributed to the release over the course of 6 calendar days.
- 11 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 1 time to make code idiomatic.
view details
- upgrade
open
crate to v2
- 2 commits contributed to the release.
- 11 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Ctrl-T
to trash (instead of removal) is now an optional default feature, allowing it to be disabled on FreeBSD which isn't currently supported.- Update dependencies
- 10 commits contributed to the release.
- 14 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- (cargo-release) version 2.14.2 (
64a5589
) - Update changelog (
e037a96
) - Also run 'make check' on CI now that more feature toggles are added (
9d2f969
) - Merge branch 'optional-trash' (
b12b98a
) - Disable test that now starts failing on windows even though… (
64175e0
) - Dependency upgrade: petgraph 0.6 (
b4aeb14
) - Dependency update (
163bd47
) - Refactor (
6894dd8
) - Add checking and testing of new feature toggle (
ee680b9
) - Make the trash feature optional (
1fdded1
)
- (cargo-release) version 2.14.2 (
- Pressing
ctrl+t
in the mark pane now trashes entries instead of deleting them. Not only does that make 'deletion' reversible but it makes removal of the entry faster in many cases as well. - updated dependencies
- 5 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- deduplicate code
- 7 commits contributed to the release.
- 20 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 1 time to make code idiomatic.
view details
- Allow usage of the feature introduced in v2.13 by writing the TUI to stderr instead of stdout. That way the output can be redirected.
- deduplicate code
- 3 commits contributed to the release.
- 1 day passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Print remaining marked paths upon exit on stdout. This may help to use
dua i
with other programs who want to process the marked paths on their own.
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Prepare for release of new Apple hardware and be more specific when auto-configuring the correct amount of threads. Instead an error message will be printed to inform that the given CPU brand isn't configurable yet.
- 6 commits contributed to the release over the course of 1 calendar day.
- 7 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Fixed bug that would cause
dua
to unconditionally sleep for 1 second. This sleep was intended for a spawned thread, but it slipped into the main thread.
- 5 commits contributed to the release over the course of 1 calendar day.
- 1 day passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
YANKED.
- Add minimal progress for when
dua
invocations take longer than 1 second
- 5 commits contributed to the release.
- 19 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 1 time to make code idiomatic.
view details
- re-add arm builds
- dependency updates (including tui 0.15)
- 4 commits contributed to the release.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- dependency updates (including tui 0.15)
- 16 commits contributed to the release over the course of 40 calendar days.
- 69 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 1 time to make code idiomatic.
view details
- Uncategorized
- Adjust release workflow to be less specific to ripgrep (
4becf36
) - Upgrade release workflow file from ripgrep (
12a01f1
) - (cargo-release) version 2.11.2 (
1ffc52e
) - Fix build (use the latest version of crosstermion, too) (
b675446
) - Remove tui-react, it now lives in https://github.com/Byron/tui-crates (
1ddbeae
) - Prepare changelog for patch release (
e16a3e4
) - [dua] actually upgrade to tui 0.15 (
296b5a7
) - [dua] upgrade to tui 0.15 (
a9ce757
) - [tui-react] upgrade tui to 0.15 (
27fb521
) - Fix help menu typo (
98d973f
) - Add installation instructions via homebrew (
94b8cfb
) - Dependency update (
3f335f0
) - Run actions on main (
7f3c3a4
) - Enable funding (
6907724
) - New resolver using Rust 1.51 (
1575ad2
) - Thanks clippy (
59279d4
)
- Adjust release workflow to be less specific to ripgrep (
- The
-x/--stay-on-filesystem
flag is now respected for multiple root paths, as indua -x path-FS1/ path-FS2/
, as suchdua
will stay in FS1 if the CWD is in FS1.
- add MacPorts install instructions
- 5 commits contributed to the release over the course of 5 calendar days.
- 6 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Add binding capital 'H' to go to the top of any pane/list
- Add binding capital 'G' to go to the bottom of any pane/list
- Without user input during
dua i [<multiple paths>]
the top-most entry will remain selected. - Avoid stale frame at the end of traversal in interactive sessions when there is no user input.
- 6 commits contributed to the release.
- 23 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Clippy helped 1 time to make code idiomatic.
view details
- Uncategorized
- (cargo-release) version 2.11.0 (
3f4773f
) - Adjust changelog prior to release (
ad7c779
) - Enforce drawing once after traversal is done (
ee73690
) - Keep selecting the first element during iteration unless… (
6d7b3cd
) - Thanks clippy (
6ca9e6c
) - Add bindings 'H' and 'G' to go to the top/bottom of any pane (
8b606ac
)
- (cargo-release) version 2.11.0 (
Fix --version flag. It looks like the latest BETAs of clap removed setting the version implicitly.
- fix typo
- 4 commits contributed to the release over the course of 15 calendar days.
- 15 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Fix build.
Now that jwalk
was released in v0.6 with v0.5.2 yanked, cargo install
will use the previous
version v0.5.1 which does not fit the latest dua
anymore.
This is now fixed and hopefully permanently so thanks to using jwalk
v0.6.
- 4 commits contributed to the release over the course of 3 calendar days.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Fix build.
A breaking change in jwalk can cause builds to fail. This prevents the issue from spreading at least with dua-cli.
- bump itertools 0.9.0 -> 0.10.0
- 5 commits contributed to the release over the course of 18 calendar days.
- 18 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Better performance on Apple Silicon (M1).
The IO subsystem on Apple Silicon is different and won't scale nicely just by using all amount of available cores. Instead it seems best to only use as many threads as performance cores are present on the system - otherwise the performance might actually get worse while using more power.
On all other systems, the default number of threads did not change.
Please note that for optimial performance one would need an arm build on MacOS, currently provided is only intel builds.
- 6 commits contributed to the release over the course of 9 calendar days.
- 31 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Fix dua -h
usage string.
Dependency update.
- upgrade to TUI v0.13.0
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- 8 commits contributed to the release over the course of 19 calendar days.
- 30 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Patch bump (
88753aa
) - Upgrade to tui 0.13 (
98da03d
) - Update tui-react to tui v0.13 (
2d11a19
) - Dependency update (
daad381
) - Show 'scanning' note even without entering a directory (
8992625
) - Update README to reflect only working installation methods (
9a38f1f
) - Disable release-build test mode in preparation for merge (
24f040a
) - See if ARM works again (
db47b37
)
- Patch bump (
Dependency update. Should fix this issue
- 9 commits contributed to the release over the course of 42 calendar days.
- 79 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- (cargo-release) version 2.10.3 (
c32322f
) - Dependency update (
6cb8209
) - Dependency update (
c7cdf36
) - Provide alternative installation instructions for linux (
53d31a7
) - Upgrade to latest version of tui (
872bbbc
) - Update to tui 0.12 (
3e1b8c2
) - Dependency update (
9a877e2
) - Dependency update (
56a365b
) - Dependency update (
dadb3fe
)
- (cargo-release) version 2.10.3 (
Change light-grey color in command-line mode to Cyan to fix disappearing text.
- 3 commits contributed to the release.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Change light-grey color in interactive mode to Cyan to fix disappearing text.
See this PR for reference.
- 4 commits contributed to the release.
- 1 day passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Minor improvements of looks; improved windows support.
- previously in interactive mode on Windows, directory sizes would appear as 0 bytes in size. This is now fixed!
- 33 commits contributed to the release over the course of 14 calendar days.
- 15 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Arm also has a problem now - ignore it for now (
04b9e52
) - And one more… (
601eee2
) - Nigthly is definitely required for windows builds, let's hope that works (
5b7696c
) - Seems nightly is broken right now - stable it is everywhere (
d7a7f9c
) - Try again to make things build on linux, argh! (
f520072
) - Try to build on stable on arm (which fails otherwise now) (
8efa046
) - Minor style improvements to handle special case (
69a2490
) - Avoid jump when cycling through byte visualization (
4f91292
) - (cargo-release) version 0.10.1 (
b5d1a21
) - Fix incorrect render area of tui-react list (
3715b71
) - Fix mark pane (
b4476ba
) - Help is back to normal (
8c2a174
) - Help looks better now, but is far from 'normal' (
29ee421
) - Switch to crosstermion 0.3 for tui 0.10 support (
fd8c441
) - Merge remote-tracking branch 'origin/master' (
4812206
) - Use published version of tui-react (
ed1f91b
) - Upgrade to tui 0.10 step one… (
839b932
) - Fix path construction of 'sample_02_tree' for test (
5a36cd1
) - Fix platform size difference of 'sample_01_tree' for test (
62c5833
) - Tui-react now works with tui 10.0; tracks tui's version number now (
773497c
) - Re-enable test, disabled accidentally (
48cbe09
) - Update to colored 2.0 (
72e776d
) - Fix test on windows - it's breaking now since #53 is fixed (
1207bdd
) - Dependency update (
f7f2118
) - Don't pay extra on linux for helping with #53 (
d18191d
) - Use full path for obtaining the 'real size on disk' (
22a13fb
) - Speedup build times by not optimizing build dependencies (
16e00de
) - Replace flume with just std::sync::mpsc (
ba78ae4
) - Update dependencies (
901d29d
) - Update dependencies (
78448e6
) - Patch bump tui-react (
7fbd933
) - Calculate block width without going through graphemes (
9702296
) - Update dependencies (
69edd7c
)
- Arm also has a problem now - ignore it for now (
Globs for Windows; fixed handling of colors.
- On widnows,
dua
will now expand glob patterns by itself as this capability is not implemented by shellsdua
can now run in. - A bug was discovered that could cause
dua a
invocation to now show paths behind their size in an incorrect attempt to not print with color.
- 5 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Full windows support!
- On Windows, we will now build using
crossterm
, which was greatly facilitated bycrosstermion
. - On Unix systems, the backend is still
termion
.
- 20 commits contributed to the release over the course of 4 calendar days.
- 4 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Cut new release: 2.9 (
becae48
) - Releases are working as expected (
230bd1d
) - Skip one test on windows (
fece423
) - Fix release.yml (
eac0702
) - Windows is nightly only right now (
034c7ec
) - Setup main branch for release build testing (
50eb08b
) - Don't implicitly pull in termion! Kills windows build reliably… (
d57cdca
) - Inform about a certain decision related to tui backend support (
676c6a9
) - Make interactive mode optional, allow selection of backend for windows, unix (
464829e
) - Add preliminary windows test for building (
d0c362a
) - Completely rid ourselves of Termion to make backend selection possible (
0e760d7
) - Replace termion::color with colored (
40e9eb1
) - Termcolor spends 1200 lines on handlings buffers, and it's not liking plain io::Write (
e867e58
) - For a moment I thought 'colored' could be used, but… (
86f16c3
) - Always use crossterm for now just to test if it works and… (
3e0d4b0
) - Use crosstermion to create a terminal with the corresponding backend (
98f850a
) - Allow case-insensitivity with byte format variants (
4b59c36
) - Convert input handling to crosstermion (
388a134
) - Show possible variants of byte formats (
fddc8cb
) - Put Freaky into the changelog :) (
b46cd3a
)
- Cut new release: 2.9 (
- Switch back to
clap
fromargh
to support non-UTF-8 encoded paths to be passed to dua
I hope that argh
or an alternative will one day consider supporting os-strings, as it would in theory be an issue
for anyone who passes paths to their command-line tool.
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Switch from deprecated
failure
toanyhow
to reduce compile times a little and binary size by 130kb.
- 2 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Switched from
clap
toargh
for a 300kb reduction in binary size and 1 minute smaller compile times.
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- [Support for extremely large][issue-58], zeta byte scale, files or filesystem traversals.
- [Fix possibly incorrect handling of hard links][pr-57] in traversals spanning multiple devices.
Both changes were enabled by @Freaky whom I hereby thank wholeheartedly :).
- 7 commits contributed to the release over the course of 29 calendar days.
- 31 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Upgrade byte-unit to version 4 (
8040d5c
) - Update dependencies (
1d61587
) - Fix unittests, at least to work locally on MacOS (
1ce39f9
) - Cut a new minor release: 2.7 (
841a9d5
) - Use u128 for byte sizes (
1d8ba52
) - Fix inode filtering with multiple devices (
c37ee44
) - Add more information about what it means to 'quit more quickly' (
0ee7e06
)
- Upgrade byte-unit to version 4 (
- quit without delay from interactive mode after
dua
was opened on huge directories trees. See this commit for details.
- 27 commits contributed to the release over the course of 11 calendar days.
- 26 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump patch level (
5eae4e3
) - Avoid deallocation a potentially big hashmap (
91aade3
) - Abort on panic for smaller binaries; update dependencies (
31778d7
) - Check package size limit in CI using cargo-diet (
4dfb18f
) - Fix install script instructions (
6d15037
) - Optimize crate size with
cargo diet -r
(ca2dc43
) - Remove unused files (
bb40674
) - Add information about Windows installations (
f0f20af
) - Disable test mode (
8dbf7e6
) - See if all targets work! (
002678e
) - Add windows-by-handle feature to lib.rs, where it probably has to be (
cc1930a
) - Remove now unneeded specialized code to try checking out the repo (
7318d07
) - Remove paths windows chokes on (
82d2d51
) - Try with manual sparse checkout :D (
9935b3f
) - No clone needed, can just checkout sparsely (
62e6c3e
) - Better checkout code, based on what the checkout action does (
67ca691
) - Need debug info :D (
cb3b636
) - Let's see what we actually checkout (
20d194f
) - Job shouldn't fail if checkout fails - looks like sparse checkout works! (
93ffeb1
) - Try to get it cloned one more time (
ff8482a
) - Maybe continue-on-error makes failures successes? (
cab78dd
) - Fix 'append file to other file' for windows; try again to trigger sparse checkout (
904c484
) - Right, leading exclamation marks in yaml! (
b351b1d
) - Bump artifact version (
b7220a8
) - Try to use a sparse checkeout if standard checkout fails (
a37a66a
) - Try windows release binaries (
15b0b0b
) - Fix crossdev to support windows (as originally intended) (
3884ea6
)
- Bump patch level (
- Use
x
to only mark entries for deletion, instead of toggling them. - Add
-x
|--stay-on-filesystem
flag to force staying on the file system the root is on, similar to-x
in the venerabledu
tool.
- 11 commits contributed to the release over the course of 22 calendar days.
- 29 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Upgrade to tui 0.9 (
42c541a
) - Update dependencies (
a078086
) - Add '-x' flag to not cross filesystems (
9156cf7
) - Fix cargo fmt (
a5988d0
) - Add 'x' key to mark for deletion, without toggling (
5cedded
) - Mild refactor (
5c1a04b
) - Fix clippy lints (
83804ad
) - Link Rust badge to actions (
9b3de55
) - Add fmt and clippy lints (
bc4fe3a
) - Bye bye travis, we had a really good time… (
6d91259
) - Update badges (
66f2bf7
)
- Upgrade to tui 0.9 (
Much more nuanced percentage bars for a more precise visualization of space consumption.
- 8 commits contributed to the release over the course of 5 calendar days.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump minor (
1027e9d
) - Fix compile errors after porting commit (
26b9569
) - Add eighth sections to bar (
82333ac
) - Update asciinema video (
6821adc
) - Bump tui-react version to 0.3 (
cad0beb
) - Minor bump for tui default features = false (
b42a81d
) - Disable default features for tui in tui-react (
8467a49
) - Clippy (
70b043a
)
- Bump minor (
Bugfix: Update currently visible entries when scanning.
- 7 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump patch (
f3505ec
) - Update currently visible entries whenever we get the chance during scanning (
8b3a32f
) - Revert attempt to use tui-react's drawing… (
fc0b814
) - Revert "use tui-react to draw text…" (
dff2c86
) - Cleanup (
12fd993
) - Use tui-react to draw text… (
e8c00b7
) - Remove roadmap, development is a bit more 'fluid' these days (
0838d9e
)
- Bump patch (
Full interaction during scanning phase; add inline-help for better UX.
- 29 commits contributed to the release over the course of 2 calendar days.
- 2 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump minor version (
4bea206
) - Don't try to shutdown keyinput thread to not lose input events (
80979a1
) - First step towards support aync/channel based input events (
e811eff
) - Toggle help for entries and mark pane (
7689016
) - Navigation help for 'help' pane :D (
d5ed498
) - Auto-help which follows through the panes (
ac04d9e
) - Crossbeam channel is actually not needed in this case (
a3cf6d6
) - Import plenty of utilities from prodash into tui-react (
584cc98
) - Show 'scanning' message even without key presses. (
1f1c0ce
) - Allow initial scan to be interrupted properly… (
277824b
) - Allow deletion of files while scanning, it should yield IOerrors only; improve 'scanning' message (
8c3294e
) - Fix crashbug - division by zero… (
5f2bc2d
) - Now it's way more intuitive, and you can basically do everything… (
164d885
) - Better state handling when 'peeking' during traversal… (
d7d9a8b
) - Properly shutdown dua with quick-exit - solves all problems (
437eb41
) - Surprisingly complicated to get back to normal TTY without dropping the terminal… (
13e5695
) - Now there could possibly be abortable and navigatable GUI while scanning… (
0e25706
) - Assure we keep display state changes (
b556405
) - Remove now unused method (
1ceb264
) - Phase one of refactoring nearly complete (
758ea32
) - Also exit quickly when ctrl+c is pressed (
00e7006
) - On the way to separating traversal from application state (
ede6224
) - Revert "Asynchronous processing of keyboard events…" (
81bd12a
) - Another step towards isolating the event loop from needing to own the traversal tree… (
733fac3
) - Asynchronous processing of keyboard events… (
7f32fb9
) - Cleanup 'quick-hack' done in 2.3.9 - much better now (
9824585
) - Fix tests by regenerating them - issue is that sym-links are not shown anymore. (
6b90258
) - Add ArchLinux to README.md (
a4abfd1
) - Merge remote-tracking branch 'origin/master' (
f5a1ff2
)
- Bump minor version (
Do not follow symlinks unless it's the only root path to follow.
This brutally fixes an issue where symbolics links are honored when they are placed in the current working directory, as internally dua
will
treat each cwd directory entry as individual root path.
- 2 commits contributed to the release.
- 1 day passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
dua interactive
(dua i
) is now about twice as fast due to using all logical cores, not just physical ones.
This is also the first release with github releases: https://github.com/Byron/dua-cli/releases/tag/v2.3.8
- 16 commits contributed to the release.
- 2 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- And don't forget to create a directory for artifacts… (
2bbbb0b
) - Revert "Azure repository is super instable, and often unavailable making this fail" (
25ae12d
) - Azure repository is super instable, and often unavailable making this fail (
e94f97d
) - Generalize release setup for easier copy-paste (
ea05566
) - Bump patch level (
65ac16b
) - Adjust releases for master: run on tags only (
e843eda
) - Github releases! (
8e8e011
) - Considerably speed up dua interactive by allowing to use all (logical) cores (
085ae37
) - Fix build instruction (
b39f773
) - Journey tests still fail, newline issues, ignore for now (
49f3cb9
) - Adjust release.yml to hopefully suit dua (
e3481bd
) - Use CHANGELOG instead of a huge section in README (
4254d39
) - Update journey tests hoping they yield the same results on CI (
fefc52a
) - Now with the actual, unaltered release.yml, previous one was ci.yml (
c32e65a
) - Oriignal release.yml from ripgrep, no alterations (
17170fb
) - Create rust.yml (
64d9524
)
- And don't forget to create a directory for artifacts… (
Upgrade to filesize 0.2.0 from 0.1.0; update dependency versions
- Update Fedora instructions
- 3 commits contributed to the release over the course of 6 calendar days.
- 8 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Upgrade to jwalk 0.5 bringing better threading control and no symlink following during traversal
- 5 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump patch level (
aa9e326
) - Potentially faster release binaries; smaller release binaries (
4f468f4
) - Now we are truly single-threaded when threads = 1 (
b7ed2bb
) - Add marker for future improvement : parallel deletion (
394e261
) - Jwalk 0.5 has landed - now we don't follow symlinks during traversal! (
0d6116e
)
- Bump patch level (
Fast exit from interactive mode for a responsive exit; dependency updates (except jwalk)
- 2 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
YANKED - jwalk 0.5.0 wasn't used correctly which led to a performance regression
- 6 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Upgrade to jwalk 0.5; stop following symlinks during traversal (
4990fa4
) - Minor update: itertools (
e873656
) - Updated dependencies, again (
80b43ca
) - Remove 32bit apple target, it's now unsupported (
79cc463
) - Bump patch level; update dependencies (
8241b80
) - Adapt journey tests to changed signature (
b26f8ff
)
- Upgrade to jwalk 0.5; stop following symlinks during traversal (
YANKED - journey tests failed to changed method signature.
- 4 commits contributed to the release over the course of 18 calendar days.
- 18 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Incude the license file in crate.
- 1 commit contributed to the release.
- 2 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Add license file to TUI-react; include it in dua, update dependencies (
96ff5ab
)
- Add license file to TUI-react; include it in dua, update dependencies (
Include .md files in Crate, update dependencies.
- 2 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Show size on disk by default; Dependency Update.
Thanks to this PR, hard links are now not counted anymore.
The -l
flag will count hard links as it did before.
And of course, this has no noticable performance impact.
- 7 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Update readme in preparation for new release (
2f6bb76
) - Rename 'count-links' to more descriptive 'count-hard-links' (
db514fe
) - Merge branch 'Freaky-hardlink-tracking' (
a6a4cf3
) - Remove short-comings from README, as they are not present anymore (
93b9e12
) - Cargo fmt (
ba7b071
) - Add hardlink tracking, and an option to disable it (
5b52294
) - (cargo-release) start next development iteration 2.2.1-alpha.0 (
0c86b89
)
- Update readme in preparation for new release (
Show size on disk by default; Dependency Update.
Thanks to this PR, the old apparent size can be displayed with the
-A
flag, and the much more useful 'size on disk' is now shown by default.
To my pleasant surprise, this does not seem to affect performance at all - everything stays speedy.
- 8 commits contributed to the release over the course of 20 calendar days.
- 20 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Dependency update, cut release (
f2793b9
) - Merge branch 'Freaky-apparent-size' (
4db48ce
) - Add support for real/apparent size (
d86e1e0
) - Upgrade tui-react (
2495390
) - New release of tui-react (
8aec8c7
) - Cargo update - will a better lock file fix this issue? (
c1203ee
) - Fix installation instructions (
e773e33
) - For now, only run unit-tests on CI (
8809700
)
- Dependency update, cut release (
Dependency Update; Github Releases. Binaries for Linux and MacOS are now available on GitHub Releases.
- 9 commits contributed to the release over the course of 87 calendar days.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Fix script paths; add badge (
5bd7766
) - Add installation note (
30e7eeb
) - Add travis support including releases (
421072f
) - Update tui to 0.8 (
d871bc0
) - Update petgraph (
4b2e72f
) - Cargo-update + new Cargo.lock format (
ecded30
) - Nicer and leaner makefile (
673975a
) - Fix version in README (
0fef32f
) - Update all dependencies to latest version (
543f7f3
)
- Fix script paths; add badge (
More obvious highlighting of active panel.
Depending on the terminal used, it might not have been obvious which panel was active. This might be confusing to new and current users. Now the color of the widget frame is changed to light gray, instead of remaining gray.
- 2 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Finally fix symlink handling.
dua
will not follow symbolic links when deleting directories. Thank a ton, @vks!
Technical Notes: Handling symbolic links properly is impossible without usage of symlink_metadata()
.
- 4 commits contributed to the release.
- 1 day passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Compatibility with light terminals.
- the TUI is now usable on light terminals, and highlighting is more consistent. Thank you, @vks!
- Fixes misaligned columns when displaying '100.00%' alongside other rows by displaying
100.0%
instead. Thanks, @vks, for pointing it out.
- 7 commits contributed to the release over the course of 2 calendar days.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Prepare next release (
4e500be
) - A single decimal slot for percentages; Fixes #26 (
44aa899
) - Update README for upcoming release (
abefc91
) - Run rustfmt; use debug_assert; rename function (
fa7daf1
) - Use same colors in mark pane as in entries pane (
3baf7f3
) - Fix color scheme for light terminals (
977e69f
) - Forbid unsafe everywhere (
f4028ba
)
- Prepare next release (
Improved handling of broken symlinks.
- during symlink deletion, now broken symlinks will be deleted as expected.
- always return to the previous terminal screen so the TUI doesn't stick to the current one.
- display broken symlinks on the first level of iteration.
- 5 commits contributed to the release over the course of 6 calendar days.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
Don't follow symbolic links when deleting directories.
A critical bug was discovered which would lead to deletion
of unwanted directories
as dua
would follow symbolic links during traversal during deletion.
Please note that symbolic links to files would be treated correctly, only removing the symbolic link.
This is now fixed.
- 2 commits contributed to the release.
- 10 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Use latest version of open-rs.
That way, pressing shift + O
to open the currently selected file won't possibly spam the terminal
with messages caused by the program used to find the system program to open the file.
Fixes #14
- 1 commit contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Fix Cargo.lock... again. 2.1.7 is 2.1.6 effectively (
dd12ca7
)
- Fix Cargo.lock... again. 2.1.7 is 2.1.6 effectively (
- 1 commit contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Bump patch; fixes #14 (
473ac20
)
- Bump patch; fixes #14 (
- re-release with Cargo.lock
- 1 commit contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Fix inconsistent cargo.lock file; update all deps (
03628c8
)
- Fix inconsistent cargo.lock file; update all deps (
- 4 commits contributed to the release over the course of 15 calendar days.
- 15 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Bug fixes and improvements.
- Performance fix when showing folders with large amounts of files
- Display of amount of entries per directory
- 1 commit contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
- Performance improvements (
d9dcbd0
)
- Performance improvements (
Bug fixes and improvements.
- Better information about deletion progress
- removal of windows support
- 2 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Bug fixes and improvements.
- windows support (never actually worked), usage of crossterm is difficult thanks to completely different input handling.
- additional key-bindings
- auto-restore previous selection in each visited directory
- 6 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
- Uncategorized
Bug fixes and improvements.
- fix typo in title
- better display of IO-Errors in aggregate mode
- 3 commits contributed to the release.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
view details
Interactive visualization of directory sizes with an option to queue their deletion. A sub-command bringing up a terminal user interface to allow drilling into directories, and clearing them out, all using the keyboard exclusively.