---
title: Nushell 0.21
author: The Nu Authors
author_site: https://twitter.com/nu_shell
author_image: https://www.nushell.sh/blog/images/nu_logo.png
excerpt: Today, we're releasing 0.21 of Nu. In this version, we introduce a charting functionality for quickly exploring data, stability improvements, and some general command cleanups.
---
# Nushell 0.21
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.21 of Nu. In this version, we introduce a charting functionality for quickly exploring data, stability improvements, and some general command cleanups.
# Where to get it
Nu 0.21 is available as [pre-built binaries](https://github.com/nushell/nushell/releases/tag/0.21.0) or from [crates.io](https://crates.io/crates/nu). If you have Rust installed you can install it using `cargo install nu`.
If you want all the goodies, you can install `cargo install nu --features=extra`.
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>`.
# What's New
## New functionality
### Charting (andrasio)
_New charting functionality_
Nushell now supports bar and line charts for when you want to quickly take a look at data you're exploring. You can reach these through the new `chart` command.
Here's an example of using `chart` to chart out contributions to a git repository:
```
> git log "--pretty=format:%h<nu>%aN<nu>%s<nu>%aD" | lines | split column "<nu>" sha1 author desc merged_at | where author == "Andrés N. Robalino" | update merged_at { get merged_at | str to-datetime } | reverse | chart line merged_at -f "%b-%Y"
```
_Line chart of GitHub contributions_
### Improvements
- `rm -f` no longer complains if the path can't be found (luccasmg)
- `benchmark` now randomizes the environment for more accurate results (tumdum)
- `select` now works with columns that have spaces (JonathanArns)
- math with duration now properly handles overflow (samualvanderwaal)
- `mv` now properly fails if you try to move a directory into itself (luccasmg)
- smarter auto-conversion to string where possible, helping with commands like `clip` (gillespiecd)
- added left and right padding for strings via `str lpad` and `str rpad` (fdncred)
- blink and strikethrough added to colors (fdncred)
- initial WASI support (sophiajt)
- inf/nan handled in CSV (gillespiecd)
- new `xpath` command that can search XML documents (fdncred, andrasio)
- rustyline paste mode no longer assumes bracketed paste (wcarss)
### Internal improvements (fdncred, gillespiecd, sophiajt, JosephTLyons, andrasio)
Windows builds now use a bigger stack, suggestions have been cleaned up, cleaned up unused files in nu-data, some redundant dependencies were simplified, variable scope was improved to make way for variables, internal names for `describe` have been improved, nu-protocol got a tidy, added example to `update`, fix for panics in `str to-datetime`, internal name of `to md` corrected, `empty?` got a rewrite, integers are now parsed as BigInt, decimals are now parsed as BigDecimal, cleanup of old files in the root, more tests added,
# Looking forward
We recently finished the Nushell survey and will be working on processing the results, which will help us plan the next few months. Also, if you haven't heard, Nushell is part of the [new Couchbase CLI experience](http://couchbase.sh). There are also lots of big plans for improving core parts of the system, including line editing, completions, and more. If you're interested in helping out, come chat with us on [discord](https://discord.gg/NtAbbGn).