Nushell
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub

Nushell 0.18

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.

Today, we're releasing 0.18 of Nu. The focus of this release was largely to polish what is already there, ensuring that internally parts work together better, are more consistent, and are easier to maintain. We've also added new commands for working with paths, URLs, strings, and lists.

Where to get it

Nu 0.18 is available as pre-built binaries or from crates.io. If you have Rust installed you can install it using cargo install nu.

If you want more goodies, you can install cargo install nu --features=stable.

As part of this release, we also publish a set of plugins you can install and use with Nu. To install, use cargo install nu_plugin_<plugin name>.

Please note: as part of last minute changes, we had to bump the first release version of 0.18 to 0.18.1 instead of 0.18.0.

What's New

Command improvements

  • New: reduce command to reduce a list of values into a value (bailey-layzer)
  • New: path basename, path extension, path expand for working with path values (mattyhall)
  • New: path type and path exists for more path-related functionality (mattyhall)
  • New: str ltrim and str rtrim to trim off left-hand and right-hand characters (k-brk)
  • New: str starts-with and str ends-with to check if a string begins or ends with a given substring (k-brk)
  • New: the url subcommands for dealing with URLs (mattyhall)
  • The history file path is now configurable (Amanita-muscaria)
  • The startup banner can now be turned off (avranju)
  • version now contains the features that Nu was built with (andrasio)
  • math stddev and math variance can now sample the input (andrasio)
  • do -i will also ignore stderr output from external commands (sophiajt)
  • to html now has many themes to choose from (fdncred)
  • to html also now has list output (coolshaurya)
  • More of the line editor settings are now configurable (fdncred)
  • str to-datetime can now parse many more date formats (nmandery)
  • str join now optionally takes a separator value (coolshaurya)
  • histogram can now work with simple values (andrasio)
  • ls -al (and ps -l) are now the preferred way of getting a full listing (JosephTLyons)
  • insert now takes a block to do the work of inserting values (coolshaurya)

Breaking changes

The flags for --full in ls and ps has been changed to --long (-l) to better align with habits from other shells.

Line editor config settings have moved to their own section.

Demo site (jzaefferer, sophiajt)

There have been a number of improvements to the new wasm-based demo site, including new colors, command improvements, pivoting of long tables, and more.

Bugfixes (fdncred, kornelski, JosephTLyons, andrasio, thegedge, sophiajt, jzaefferer, warrenseine, coolshaurya)

Fixed issues with different types of symlinks on Windows, Nu will now used the support app_dirs crate, lots of internal match logic cleanup, internal representation of data summaries got a cleanup, getting ready to add a winget package, the first wave of parser cleanups ahead of future completion work, cleaned up unnecessary extra build steps, new command examples, improvements to the new path command errors, fixed histogram example, and consistency improvements.

Looking forward

We're nearly to the first birthday for Nu! In the near future, we'll continue to improve completions, work on a possible new data frames implementation, continuing to push the wasm implementation further, and more.

Edit this page on GitHub
Contributors: Ibraheem Ahmed, Justin Ma, Dan Davison, sophiajt