All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
- Fix loading .erdtree.toml on Windows #218
- Fix race to print to stdout/stderr which made error messages not appear at times #220
This patches a deadlock that occurs when --pattern
fails to make any matches and the progress indicator is enabled which causes erdtree
to completely freeze.
- Multiple configs with .erdtree.toml
- Increased performance with --suppress-size
- -x, --one-file-system
- Support for NO_COLOR
- Inverted flat layout
- Aliases: atime, ctime, and mtime
- ctrlc handler to restore cursor if progress indicator is enabled
First and foremost:
.erdtreerc
is planned for deprecation by v3.3 so please migrate to .erdtree.toml
by then.
There is now support for multiple configs:
-c, --config <CONFIG> Use configuration of named table rather than the top-level table in .erdtree.toml
So given the following example .erdtree.toml
:
icons = true
human = true
# Compute file sizes like `du`
[du]
disk_usage = "block"
icons = true
layout = "flat"
no-ignore = true
no-git = true
hidden = true
level = 1
# Do as `ls -l`
[ls]
icons = true
human = true
level = 1
suppress-size = true
long = true
no-ignore = true
hidden = true
# How many lines of Rust are in this code base?
[rs]
disk-usage = "line"
level = 1
pattern = "\\.rs$"
$ erd
# equivalant to
$ erd --human --icons
...
$ erd -c ls
# equivalent to
$ erd --icons --human --level 1 --suppress-size --long --no-ignore --hidden
etc.
For further information on how to get started with the new .erdtree.toml
please refer to the README.md.
NOTE:
- Multiple configs are only supported via
.erdtree.toml
. - If you have both a
.erdtree.toml
and.erdtreerc
then the latter will take precedent. Attempts to use--config
in said case will result in an error and a warning asking to migrate from.erdtreerc
to.erdtree.toml
. - Again:
.erdtreerc
will be deprecated in favor of.erdtree.toml
by v3.3
- Added support for
.erdtree.toml
- Fixed segmentation fault that occurs with
--long
when file has an invalid user or group - Updated deprecated Nerd symbols
- Change CJK and emoji block icons
Full Changelog: https://github.com/solidiquis/erdtree/compare/v3.0.1...v3.0.2
- Fixed issue where empty directories were automatically being pruned despite not opting into
--prune
. - Fixed issue where searching via globs or regex doesn't work when user has a config file.
- Added exit codes to
erdtree
. - Progress indicator now acquires a lock to
stdout
reduce likelihood of printing the progress-text being a bottleneck. - Some code-cleanup.
Full Changelog: https://github.com/solidiquis/erdtree/compare/v3.0.0...v3.0.1
- Completions now properly reference the new binary name,
erd
- Symlink target now shows full path rather than just file name
--dir-order <DIR_ORDER>
added to address ordering ambiguity with arg names- Fixed NetBSD build error associated with xattrs
- Fixed issue where
--level
would omit files from the total count - Added support for %APPDATA% config folder for Windows
-C, --color
#147- Support for owner and group, changed default columns for
l, --long
, and added optional long-view arguments #174 - Support customizing time output format #165
- Support for sorting files by modified time, access time, and created time 55783ff
- Support for reporting block usage, line-count, and word-count #172
- Added progress indicator #176
For a more comprehensive overview of erdtree
v3.0.0, please refer to the README.md.
Full Changelog: https://github.com/solidiquis/erdtree/compare/v2.0.0...v3.0.0
erdtree
v2.0.0 introduces numerous breaking changes as well as a plethora of new features. Most breaking changes are predicated on the fact that
arguments were either renamed, removed, or fundamentally modified. The following is a list of all the PRs that document these changes and feature additions:
Perhaps the most important change to note is that the compiled binary has been renamed from et
to erd
in order to address the following issue
regarding name collisions with other programs: #23
For a more comprehensive overview of erdtree
v2.0.0, please refer to the README.md.
Full Changelog: https://github.com/solidiquis/erdtree/compare/v1.8.1...v2.0.0
- Fix some typos by @goggle in #110
- add clap requires to flags that depent on --report by @jhscheer in #111
- refactor tests: move --no-config to mod::run_cmd by @jhscheer in #112
- Prevent panic when
--prune
is used with--glob
which results in empty match set by @solidiquis in #116 - Add ability to take glob patterns from stdin by @jhscheer in #114
- Refactor/node and support hard link detection on Windows by @solidiquis in #118
- Support colorless output when redirecting/piping stdout; also provide
--no-color
option by @solidiquis in #120 - remove ansi escapes for default icon by @solidiquis in #122
Full Changelog: https://github.com/solidiquis/erdtree/compare/v1.7.1...v1.8.1
- fix issue where not-existent directory as cli arg causes infinite loop by @solidiquis in #107
Full Changelog: https://github.com/solidiquis/erdtree/compare/1.7.0...v1.7.1
- Fix windows can not recognize the tag version when publishing by @Tlntin in #91
- Fix the problem that test actions cannot upload windows binary files, add the function of custom form to set tag version. by @Tlntin in #94
- Reduce default thread count by @solidiquis in #99
- option for plain text disk usage reporting by @solidiquis in #102
- Prune bug by @solidiquis in #103
- dirs-only by @solidiquis in #104
- Feature/file count by @solidiquis in #105
- @CosmicHorrorDev made their first contribution in #93
- @KP64 made their first contribution in #100
- @Masynchin made their first contribution in #98
Full Changelog: https://github.com/solidiquis/erdtree/compare/v1.6.0...1.7.0
- Add NetBSD instructions by @0323pin in #77
- Add repology badge by @jubalh in #76
- fix issue where level wasn't being read from config by @solidiquis in #78
- add scoop manifest by @fawni in #80
- default to num logical cpus rather than 4 threads by @solidiquis in #81
- Add support for generating shell completions by @Brezak in #82
- Fix miscoloration of directories that have extension by @fawni in #83
- [Optimization] - Upgraded heap-based tree data structure to an index-tree by @solidiquis in #86
- Replace tempdir crate with tempfile crate by @Brezak in #87
- fix issue where ansi escapes were being printed raw on windows by @solidiquis in #90
- @0323pin made their first contribution in #77
- @jubalh made their first contribution in #76
- @Brezak made their first contribution in #82
Full Changelog: https://github.com/solidiquis/erdtree/compare/v1.5.2...1.6.0
- Stray print
- Fixed issue where globbing didn't work when user uses a config file #75
- Added
--size-left
to print disk usage to the left of the tree #61 - Added more paths the
erdtree
config could be placed at #70
- Fixed issue where
--dirs-first
wouldn't work unless-s, --sort
was specified #67 - Fixed isse where arguments from the
erdtree
config were being completely disregarded #74
- sanders41: Added --suppress-size to suppress printing disk usage
- Added ability to use a config file to override erdtree defaults
- Added -P, --prune option to prevent printing of empty branches
- Added -p, --prefix to toggle between binary and SI prefixes when reporting disk usage
- Fixed panic when file names contain non Unicode sequences
- Fixed panic when running from root directory
- bryceberger: Allow multiple uses of the same option for override
- bryceberger: --dirst-first sorting option
- Added option to toggle logical vs. physical size and changed size sorting default so that largest is on bottom
- If multiple hardlinks in the same file-tree only one is taken into account
- Can now adjust scale of disk usage report
Thank you to all of the folks from this Reddit thread who helped shape erdtree
with their very valuable feedback as well as contributors!
-S, --follow-links
added to give option to traverse symlinks to directories. If enabled the disk usage of the target directory is considered; additionally, descendents of symlink target directory have different color branches.- CLI options in help text alphabetized with the exception of
-h, --help
and-V, --version
. - Minor refactors for clarity and organization.
- More comprehensive test coverage.
Did a complete rewrite with emphasis on an intuitive interface and performance. Notable changes:
- Binary renamed to
et
for brevity. - Respects
.gitignore
and hidden file rules. - Parallel filesystem traversal.
- Completely new CLI.
$ erdtree -h
for usage info. - Uses
LS_COLORS
environment variable for file coloring.
First release.