Nushell 0.3.0

Nushell, or Nu for short, is a new shell that takes a modern, structured approach to your commandline. It works seamlessly with the data from your filesystem, operating system, and a growing number of file formats to make it easy to build powerful commandline pipelines.

We're happy to announce that today we're releasing Nushell 0.3.0. Nu has seen numerous bugfixes, performance improvements, and features added since its initial public release (which was only a few weeks ago!)

Where to get it

Nu 0.3.0 is available as pre-built binariesopen in new window or from crates.ioopen in new window. If you have Rust installed you can install it using cargo +nightly install nu (or if you want all the features cargo +nightly install nu --all-features).

What's new

New table design (Porges, jonathandturner)

Table with utf8 box drawing

One of the most striking differences is that Nu now uses UTF-8 box drawing to draw its tables.

Table with utf8 box drawing in light mode

The table is also configurable. If you feel like the table is a bit too heavy, you can also configure it to work in light mode using this command:

> config --set [table_mode light]

New file formats (pmeredit, est31, andrasio, jonathandturner)

Nu now natively supports new file formats, including: bson, tsv, sqlite, and url-encoded strings.

New commands (incrop, ramonsnir, ijt, jonathandturner, andrasio, JonnyWalker81, chhetripradeep, pka)

Since the 0.2.0 release, Nu has gained a set of additional commands, including:

  • help - built-in help system
  • reverse - reverse a table
  • last - like the first command, but working from the bottom of the table, return n rows
  • embed - create a new table using the current table as a start
  • fetch - get the contents of a URL (this originally lived in open)
  • post - post to a URL and get the results
  • pwd - print the working directory
  • env - give access to a number of important paths and environment settings
  • pivot - pivot a table so that rows become columns and vice-versa
  • echo - a built-in echo command

Error improvements (jonathandturner)

Improve error messages

We've made steady progress on improving error messages. Recently, we added "did you mean?" errors to help when you mistype the name of columns. Nu 0.3.0 also has gone through a few passes to generally polish the errors to include more information when an error occurs.

Shell features (pka, wycats, twe4ked, andrasio, iamcodemaker)

Nu now supports ~ to refer to your home directory as part of a path. You can also use cd - to return to a previous directory you were working in.

The shell itself also got a few updates. You can now enable 'vi' mode, if you'd prefer vi-like bindings (by running config --set [edit_mode vi]). On non-Windows platforms, you can also use Ctrl-R to enable Sublime-style history searching (we're hoping to enable Windows support for this soon).

Plugin improvements (jonathandturner, andrasio)

Plugins have continued to mature, and it's now possible to use plugins to extend Nu with support for new file formats.

We've also added documentation on how to write Nu plugins in both Rust and Pythonopen in new window, with info on Ruby coming soon.

Docker support (vsoch, DrSensor)

If you're interested in using Nu and Docker together, be sure to check out the new Docker supportopen in new window.

Book progress

The Nu bookopen in new window is now available in three languages: English, Spanish, and Japanese.

We've also created a Nu contributor bookopen in new window, which will help developers who want to contribute to Nu learn about its philosophy, design, and how to create plugins.

Acknowledgements

est31, pmeredit, twe4ked, DrSensor, vsoch, pka, jankoprowski, Porges, max-sixty, ijt, djc, vthriller, taiki-e, oskarskog, iamcodemaker, JonnyWalker81, yaahc, tim77, svartalf, ramonsnir, orf, lesichkovm, ineol, incrop, eoinkelly, devnought, chhetripradeep, aidanharris, GuillaumeGomez, and BatmanAod for contributing to the Nu codebase. Also a big thanks to our issue reporters!

ymgyt - for the Japanese version of the Nu book!

mistydemeo, romanlevin, ralvessa, pka, lord, kkalyan, jankprowski, and boisgera for helping with the book.

Looking ahead

We're hard at work on the upcoming milestone releaseopen in new window. If you'd like to help, feel free to jump in! We have an active discordopen in new window you can join for both users and contributors.