Nushell 0.82

Nushell, or Nu for short, is a new shell that takes a modern, structured approach to your command line. 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 command line pipelines.

Today, we're releasing version 0.82 of Nu. This release focuses on polishing the user experience.

Note

Beginning with this release, Nushell is switching to a four-week release schedule. For details see our special blog post.

Where to get it

Nu 0.82 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 install nu.

NOTE: The optional dataframe functionality is available by cargo install nu --features=dataframe.

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

Themes of this release / New features

Nightly builds

We are pleased to inform you that we now have nightly releases available for Nushell. Feeling adventurous? Wanting to keep up to date with the latest revisions of Nushell without the burden of compiling the source base yourself?

You can find all available nightly releases in the release page of nushell/nightlyopen in new window.

Note Please note that these releases are intended for testing purposes only, and we will keep only the last 10 nightly releases. We highly recommend using the latest stable official releaseopen in new window for regular usage.

Custom datetime format (@fnordpigopen in new window)

Until now, Nushell did not allow changing the default format of dates and times, leading quite often to undesired rendering, e.g. seeing A year ago in the output of ls when one wants to know the exact time.

#9500open in new window introduces a new config option to change the default output of dates and times:

  # from the `default_config.nu` file
  datetime_format: {
    normal: '%a, %d %b %Y %H:%M:%S %z'
    table: '%m/%d/%y %I:%M:%S%p'
  }

Support for comments in multiline pipes (@WindSoilderopen in new window)

From now on, either in the REPL, in scripts or in modules, you can comment out any line of a multiline pipe without breaking its execution, e.g.

ls
| where type == file
# | sort-by size
| get name

is perfectly valid.

This hopefully makes debugging and testing part of a pipeline much easier!

Continuing cratification effort

On the road to 1.0, we have started moving commands around to make place for those which really matter. As this process involves the creation of some new Rust crates, e.g. nu-cmd-extra, we call it cratification 😃

With this new release, the bytes commands have been moved behind the extra feature (use cargo build --features extra to activate them back):

Apart from moving less stable or common commands behind flag, this should also improve compile times for everyone.

Splitting the $nu variable (@sophiajtopen in new window)

Nushell 0.82 introduces a new family of stat commands, the scope ... commands. These commands allow you to access some information about the current Nushell instance that were previously available in the $nu variable! e.g. $nu.scope.commands now becomes scope commands.

On the other hand, $nu becomes much smaller and only holds simple paths and constants.

Entering Linguist support (@hustceropen in new window)

With the efforts of @hustceropen in new window, Nushell is now an official language of Linguist, allowing for better language support in GitHub.

REPL: Mark line entries as excluded from the history by leading with a space (samlichopen in new window)

In some situations you may want to avoid storing an entry inside your shell history. For example if it includes a secret or running it again in a different context could be dangerous. To stop nushell from storing a particular line in its history you can now start with a space and it will be ignored. You can still recall your last entry once by pressing the Up-Arrow but the command will never be written to disk and disappear as soon as you submit another command.

New commands

Breaking changes

Full changelog

Nushell

Extension

Documentation

Nu_Scripts

Reedline