All Versions
10
Latest Version
Avg Release Cycle
177 days
Latest Release
129 days ago

Changelog History

  • v0.9.0

    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 with bO 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!

  • v0.9.0-pre

    September 30, 2017
  • v0.8.0

    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 and nef file types (40ce7ba)
    • βž• Add bk file type (eda3e56)
    • Only check the terminal width of stdout, not stdin and stderr (4289f4d)
    • Sorting by date now has new and old 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 that libhttp_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

    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

    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!

  • v0.5.0

    April 11, 2017

    Now, 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!

  • v0.4.1

    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

    October 18, 2015

    So 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!

  • v0.3.0

    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 and io 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

    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

    • Git is still slow when working with large repositories (#28)
    • 🏁 No Windows support! (#32)

    Contributors

    Thanks to nwin, Stebalien, tuftedocelot, coyotebush, davidcelis, ebfe, mikefaille, and jgilchrist for contributing!