Changelog History
-
v0.9.0 Changes
July 15, 2019π exa release v0.9.0
π I will release more than one version of exa this year, mark my words.
β Additions
- π Icon support with
--icons
(9497b30) - π New sort options
.name
and.Name
which ignore a leading dot (a156d96) - π Support
TIME_STYLE
environment variable (9917810) - π New option to only display directories,
--only-dirs
(054cac6) - π Support 24-bit colours (dc2009a)
- Display if a file is ignored by Git (80b0d9d)
π Changes
- Replace the
mi
colour withbO
overlay colour (59d9e90) - π Pre-release versions have their build number shown (c7497f3)
- β Add
--classify
to man page (9c77a95) - Highlighting for file types
.zst
(5fae489), Bazel and Ant (c635031),.ts
(e711dbc),.m4v
(9b446c0), and.jpf
(9916742) - π Create worker threads only once for performance (8cbde76)
π Fixes
- π Allow zero-padded numbers in
$LS_COLORS
(afc9657, ce3f05c) - π Make non-uppercase
README
files immediate (d9c9dbe) - Highlight
README~
as temporary, not immediate (57e4c08) - π Use more accurate time to fix inconsistent sorting (649744d)
- Prevent infinite loop with
-aaR
(e936d7e) - π Fix panic in certain timezones (9f76f94 and this fix)
- π Fix sorting by created time (faed8f9)
- π Fix Git status not working for paths containing
../
(f1a5b64)
Contributors
Thanks to alexmaco, ariasuni, asoderman, benmezger, BenWhitehead, cecton, chetgurevitch, dguo, Don42, Fierthraix, golem131, ignatenkobrain, jcrd, joshleeb, joshuarli, kornelski, LlinksRechts, lovesegfault, martinlindhe, mfarrugi, mgkurtz, mgttlinger, mopp, nasyxx, ne-sted, Offpics, Paradiesstaub, polyzen, rleungx, semarie, sergeysova, spk, and teresy for contributing!
- π Icon support with
-
v0.9.0-pre
September 30, 2017 -
v0.8.0 Changes
September 30, 2017π This release provides both bug fixes and new features. I've written a post that outlines what's new, as well as some remarks on how I'd like to handle getting me to do releases more often in the future: bsago.me/blog/exa/v0.8.0
β Additions
- π Use completely new, less strict, more friendly options parser (b5bcf22)
- β Add a strict mode, for when you want to check your options (97d1472)
- Add
EXA_GRID_ROWS
that makes--long --grid
a bit more palatable (e933fa6) - β Add
EXA_DEBUG
for logging information (e0727a1) - β Add
LS_COLORS
parsing and colouring (adfee28, aa2e3a5) - β Add
EXA_COLORS
parsing and colouring, which overrides the above (075fe80, aa2e3a5) - π Initial support for a
--git-ignore
flag (827aa8b)
π Changes
- 0οΈβ£ Default to sorting case-insensitively (57c647f)
- Hide xattr errors unless xattrs were explicitly asked for (5189d66)
- β Add
orf
andnef
file types (40ce7ba) - β Add
bk
file type (eda3e56) - Only check the terminal width of
stdout
, notstdin
andstderr
(4289f4d) - Sorting by date now has
new
andold
convenience aliases (f55bd6d) - π Use only verified published crates, so exa can be on crates.io (1efb8a5)
π Fixes
- π Use a patched version of
libgit2
to prevent thatlibhttp_parser
error (3405db1) - π Fix bug where
--tree --all
didn't work (a2cd39e) - π Fix bug where ISO dates were long when they should be short and vice versa (fca5b6b)
- π Fix bug where month name padding made the whole table look weird (999c9d5)
-
v0.7.0 Changes
July 07, 2017β Additions
- Display device IDs when listing block or character devices (ef5fa90)
- Display the sticky/setuid/setgid bits in permissions (110613b)
- π Allow
--all --all
to display the.
and..
directory entries (5cd7609) - π Allow
--sort=type
to sort by file type: file, directory, link, pipe, device (f750536) - β Add the
--time-style
option to use the ISO format for timestamps (690aa21)
π Changes
- Donβt look up things like time zones or locale information when those columns wonβt be displayed (9723612)
- π¨ Similarly, donβt buffer the entire table before printing it out when not in grid-details view (fc60838)
- π Make the help text like 1% faster to display (763e833)
π Fixes
- Actually display the error when recursing into a directory fails in tree view (f4ddbf3)
- π Fix crash when given invalid UTF-8 arguments (de60b95)
- π Fix bug where filesβ accessed times (atime) were actually modified times (mtime)! (5bdf630)
- π Fix bug where the presence of the
COLUMNS
environment variable made exa always use colours (84b01f2)
Contributors
Thanks to kballard and gyscos for contributing!
-
v0.6.0 Changes
May 17, 2017β Additions
- β Add the
--classify
option (e81b83b) - β Add
.cr2
as image type (8ac68f9) - π¨ Non-printable characters in file names are now escaped (3ebc225, 609bafe)
- β Add completions for bash, zsh, and fish (897d6ff)
π Changes
- Donβt prepend symlink paths to link targets (f8624ed)
- Turn off the Git networking features, meaning exa does not require OpenSSL, making it smaller and easier to compile (08bc2e3)
- π Change
--help
and--version
to return exit code 0 (510d2f7) - Lots and lots of Makefile changes
- The usual amount of internal restructuring
π Fixes
- π Fix bugs where files with two components, and
.
and..
, were not displayed (a28bd8f, dd63774) - π Handle locales with 4-character-wide short month names (ce8a2e7)
- π Fix bug where cell width wasnβt being calculated (0828133)
Contributors
Thanks to maandree, neosilky, MakeNowJust, raphink, kballard many times over, and quininer for contributing!
- β Add the
-
v0.5.0 Changes
April 11, 2017Now, where was I?
β Additions
- β Add
--colo[u]r
option to toggle colours on and off (f92459d) - β Add case-insensitive sorting with
--Name
and--Ext
(note the caps) (8805ce9, 3e9616c) - Recognise pipes, devices, and sockets on systems where theyβre avaliable (a9bb275)
- β Add ability to ignore globs (9559629)
- β Add option to colour file sizes on a scale (0ffb331, 86065f8)
π Changes
- π Improved help text (edeec0f, b35927f, 7e15e0d)
- π Use the time zone data present on the system, rather than the perpetually-outdated versions compiled with exa (ee4c09d)
- π¨ Print filesβ paths if they had paths when passed in as arguments (9b87ef1)
- Highlight cryptographic file types (45c93b1)
- Error messages now go to stderr (8d25719)
- π¨ Stop printing a header for zero files (a7e3456)
- The usual amount of internal restructuring.
- β¬οΈ Lots and lots of upgrades to newer Rust versions.
π Fixes
- π Allow Details view to be used, even if the terminal has no width (1756a0a)
- π Compilation fixes for ARM (734c508)
- π Compilation fixes for FreeBSD (b9eb364)
- π Fix bug where files were shown to not have extended attributes (4c32663)
- π Fix bug where files werenβt being sorted correctly in Details view (f6c5c89)
- π Fix bug where the directory name above a list of files was not printed (f35d28d)
Contributors
Thanks to skade, petevine, jbeich, tomassedovic, hoodie, lindenk, gemmarx, spk, Stebalien, and neosilky for contributing!
- β Add
-
v0.4.1 Changes
March 29, 2017π This is a snapshot of exaβs current code, which has been cleaned up a bit and at the very least been run through untry (which managed to pick apart all
try!
s but one). Itβs being released to work around a bug in macOS Sierra.π Usually when I do a release I go through the commit history, pick out anything that looks like it could be a bullet point in the release notes, look at the contributors and see whoβs there, then edit the website and upload β there are more features in here than just the openssl upgrade, and the work done so far is really deserving of a βproperβ release, rather than just a beta.
But I donβt even want to learn how little work Iβve done on it in the past twelve months.
I think I need to be honest with everyone here. My interest in exa is still there, and the list of features Iβd still like to add is as long as itβs ever been, but my motivation is completely shot. Compared to even a year ago itβs plummeted. Every day I go to work, bang out code on whatever it is Iβm doing, leave, arrive home, then do my best to not do anything, on the computer or off it. My lifeβs going alright, I can still do things, Iβm able to do things, but I just... donβt, and I wish I could give you a better reason than that. GitHub notifications were something Iβd deal with later that day, then next week, then whenever Iβd get around to it, and then routed into a folder in my inbox that I never actually checked, and then every day Iβd see that number and hope it didnβt increase, and then I noticed that whenever it did increase I wouldnβt be able to concentrate on anything for another hour, so I just hid it, which hurt at first but at least gave me some time back. Iβd still commit from time to time, but not mention any of this because I didnβt want to call attention to it, as though in time everyone would just forget. Whenever I saw a reply to the Sierra bug thread, Iβd log in, read it, start to worry that if I replied now then Iβd be admitting to everyone that I was still around and hadnβt died or something and was instead just ignoring their comments, and then what would people think of me? I even got as far as navigating to βDelete this repositoryβ before I had to push the computer away.
Thatβs one push that went correctly. Itβs obvious to say, but itβs stupid to delete code that people are using, just because you didnβt want to deal with the fact that you made a mistake.
π Iβm going to try something new: switching exa to a routine 6-week release schedule. The Rust has a release train that works over the same duration using multiple versions. I think exa (a hundredth its size) can do without that part, but the rest of it is good advice. Having an actual date for each one means I donβt get a choice in releasing anything or not, which is an incredible motivator for actually doing it! I still have to put 0.5.0 out properly, but with luck, the second release (0.6.0, which would come out halfway through May) would be a lot less daunting than the first, the third less than the second, and it would plateau from there.
The root advice here is βif youβre having difficulty doing something, then do it more often, because it gets easierβ. I found actually releasing my software hard. I want it to be easier.
I hope you all find this acceptable, and I apologise again for the massive commit lacuna.
-
v0.4.0 Changes
October 18, 2015So a while back I decided to add lots more info to exa's site, and unknowingly described a bunch of features that were in the development version but not the release version! So this is a kind-of emergency release to allow everybody to use those features, even those using the released versions.
The downside of this is that I did mark some features as ones I wanted to complete before the v0.4.0 milestone. All that's happened is the version that they'll show up in has been renamed, but they're all still on my radar.
β Additions
- Add
--grid --long
view, which splits the details into multiple columns (090cebe) - π Allow
--tree
without--long
, which displays a tree view without any details (e1f4ea9)
π Changes
- π DragonFlyBSD support (9601884, 6317417)
- π Change symlink arrow to
->
from=>
(ebbac61) - Extended attributes are now displayed as child nodes (eee49ec)
- Individual files are now queried in parallel (fa51a87)
π Fixes
- Fix bug where Git repos were always queried, making exa very slow (d547c3f)
- π Fix bug where an extra newline was printed (6cf9274)
Contributors
Thanks to mgee, mneumann, kbknapp, lilydjwg, petevine, rhysd, hoodie, and DavidJFelix for contributing!
- Add
-
v0.3.0 Changes
June 05, 2015π It's been exactly 100 commits and just over three months since version 0.2, so it's about time I did another binary release. This one fixes a few bugs, but most of the code changes have been maintenance: upgrading to the new standard filesystem library was a big step, and having dates in the right time zone is something I'm glad to have finally landed.
By the way, I've decided to hold off on version 1.0 until exa can compile with Rust Stable. There aren't many feature flags left, and most of the ones that are pertain to the new
std::fs
library that we need to use. So exa will continue to require the nightly version for the foreseeable future.β Additions
π None in this build.
π Changes
- π Make the Git column optional, to improve performance on large repositories (7dc3a02)
- Stat files in parallel, for a nice speed boost! (d2df70e)
- π Use the new Rust
fs
andio
libraries (ffcc6fa) - ANSI codes are now not displayed when output is not to a terminal (36116a1)
π Fixes
- More options now require
--long
(5d152db and a4459da) - Timestamps are now in the user's correct time zone, rather than UTC (cc1d6aa)
- Executable files are now highlighted in green (b452967)
- π Allow compilation without Git support (5caa6dd)
Contributors
Thanks to byteprelude, killercup, e12e, tsurai, and mgee for contributing! And thanks to everyone who's given feedback, reported bugs, and just plain used the thing.
(Please let me know if I've missed you out.)
-
v0.2.0 Changes
March 02, 2015π This is the first proper 'release' of exa. A number of people have been clamouring for these because Rust isn't fully stable yet, and there have been days when it's failed to build because of upstream failures. And if you're the sort of person (like me) who just aliases ls to the in-development version of exa, your ls will fail half the time.
π Unfortunately, I have no idea whether these releases will work or not. I just built them with Cargo. If they don't work, please tell me!
β Additions
- β Add missing sort-by-date options. You can now also sort by 'modified', 'created', and 'accessed'. (a4e1719)
- β Add extended attribute support. (ce23c63)
- β Add
--level
option to limit depth of recursion and tree view. (f505bdc) - β Add
--group-directories-first
option. (ff1f6d0) - β Add
--version
command. (67f60e6)
π Changes
- π Change date format to mimic ls. (0082563)
- π Numerous small optimisations and fixes.
π Fixes
- Use the width of the file name in the grid view, instead of its length. The width handles multibyte UTF-8 characters and filenames with combining diacritics correctly. (43e8061)
- π Fix getting Git status while in a subdirectory. (6e19563)
- π Fix displaying UIDs and GIDs that are over 231. (38a7854)
- π Fix panic when previewing symlink to
.
or..
or/
. (1da1142) - π Fix missing
/
s in symlink targets. (ef58c30)
Major stuff not done yet
Contributors
Thanks to nwin, Stebalien, tuftedocelot, coyotebush, davidcelis, ebfe, mikefaille, and jgilchrist for contributing!