# 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 (opens new window) or from crates.io (opens new window). 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 (opens new window) to reduce a list of values into a value (bailey-layzer) - New:
path basename
,path extension
,path expand
(opens new window) for working with path values (mattyhall) - New:
path type
andpath exists
(opens new window) for more path-related functionality (mattyhall) - New:
str ltrim
andstr rtrim
(opens new window) to trim off left-hand and right-hand characters (k-brk) - New:
str starts-with
andstr ends-with
(opens new window) to check if a string begins or ends with a given substring (k-brk) - New: the
url
subcommands (opens new window) for dealing with URLs (mattyhall) - The history file path is now configurable (opens new window) (Amanita-muscaria)
- The startup banner can now be turned off (opens new window) (avranju)
version
now contains the features (opens new window) that Nu was built with (andrasio)math stddev
andmath variance
can now sample the input (opens new window) (andrasio)do -i
will also ignore stderr output (opens new window) from external commands (jonathandturner)to html
now has many themes to choose from (opens new window) (fdncred)to html
also now has list output (opens new window) (coolshaurya)- More of the line editor settings are now configurable (opens new window) (fdncred)
str to-datetime
can now parse many more date formats (opens new window) (nmandery)str collect
now optionally takes a separator value (opens new window) (coolshaurya)histogram
can now work with simple values (opens new window) (andrasio)ls -al
(andps -l
) are now the preferred way of getting a full listing (JosephTLyons)insert
now takes a block (opens new window) 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 (opens new window).
# Demo site (jzaefferer, jonathandturner)
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, jonathandturner, 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 (opens new window) implementation, continuing to push the wasm implementation futher, and more.