---
title: Nushell 0.26
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.26 of Nu. It's a polish release with lots of improvements.
---
# Nushell 0.26
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.26 of Nu. It's a polish release with lots of improvements.
<!-- more -->
# Where to get it
Nu 0.26 is available as [pre-built binaries](https://github.com/nushell/nushell/releases/tag/0.26.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
## Rest support in custom commands (LhKipp, sophiajt)
You can now refer to a rest argument in your custom command:
```
def my-cmd[...rest:int] {
echo $rest | math sum
}
```
Elements of the rest are referred to with positions, like `$rest.1` for the 2nd position.
## Short flags in custom commands (LhKipp)
You can now also added an optional shorthand flag to longhand flags:
```
def foo [--bar(-b): int] {
echo $bar
}
foo -b 10
foo --bar 10
```
## Improved build times (sophiajt, stormasm)
When building from scratch, you may now notice that Nushell builds slightly faster. This comes from refactoring large crates into smaller crates and replacing some of our support crates with similar crates that compile faster.
## Improvements
I hope you like improvements. We got a _lot_ of them this release.
- fdcnred added support for using [multi-byte chars as padding](https://github.com/nushell/nushell/pull/2973), improved [ansi and char support](https://github.com/nushell/nushell/pull/2955), improved the output of [`sys`](https://github.com/nushell/nushell/pull/2959), optimized some [regex usage](https://github.com/nushell/nushell/pull/2937), removed [`set` from Windows built-ins](https://github.com/nushell/nushell/pull/2924), added support for [comparing a string and a filepath](https://github.com/nushell/nushell/pull/2906)
- JosephTLyons removed [unnecessary clones](https://github.com/nushell/nushell/pull/2970) and [fixed some test macros](https://github.com/nushell/nushell/pull/2969)
- andrasio added [column path support to many `str` commands](https://github.com/nushell/nushell/pull/2965)
- sophiajt added [error checking for bad rows in column paths](https://github.com/nushell/nushell/pull/2964), added [proper flushing of stdout](https://github.com/nushell/nushell/pull/2952), split [nu-cli and nu-engine](https://github.com/nushell/nushell/pull/2898), treat [the startup commands a single script](https://github.com/nushell/nushell/pull/2890) which improves startup times, fixed [reading/writing of bigint/bigdecimal](https://github.com/nushell/nushell/pull/2893)
- baoyachi updated [shadow-rs support](https://github.com/nushell/nushell/pull/2963), removed some of the [git support that was no longer needed](https://github.com/nushell/nushell/pull/2935)
- kubouch added the [--skip flag to `nth`](https://github.com/nushell/nushell/pull/2953)
- ahkrr fixed [variable scopes for `def` parameters](https://github.com/nushell/nushell/pull/2951)
- brightly-salty [replaces the dirs/directories supporting crates](https://github.com/nushell/nushell/pull/2949)
- jankeronmes fixed [Gitpod tests](https://github.com/nushell/nushell/pull/2948)
- LhKipp fixed a [parser bug that prevented invocations and ranges from being parsed correctly](https://github.com/nushell/nushell/pull/2945), added [`def` documentation](https://github.com/nushell/nushell/pull/2939), updated [`alias` docs](https://github.com/nushell/nushell/pull/2925)
- DivineGod moved [keybinding_path to nu-data](https://github.com/nushell/nushell/pull/2927)
- Gymea fixed the [dirs dependency in nu-engine](https://github.com/nushell/nushell/pull/2924), improved the [`help` logic when the command does not have a description](https://github.com/nushell/nushell/pull/2915), fixed [`which` output for aliases](https://github.com/nushell/nushell/pull/2894)
- gillespiecd added the support for [reverse ranges](https://github.com/nushell/nushell/pull/2913)
- stormasm refactored [nu-cli and split off commands into nu-command](https://github.com/nushell/nushell/pull/2910)
- TrevorAC99 fixed a [rust-embed build breakage](https://github.com/nushell/nushell/pull/2880)
## Breaking changes
- `ps` and `sys` are now served using a [different supporting crate](https://github.com/nushell/nushell/pull/2954). The functionality difference between the old crate and the new crate may mean a lack of fields that existed before, or different values than before (as it may be calculated differently).
- We removed [`str set`](https://github.com/nushell/nushell/pull/2940). This command was one of the first of its style and has since been replaced by more general commands like `update`.
- Internal architecture: the Primitive case for [lines has been removed](https://github.com/nushell/nushell/pull/2887). Instead, use strings.
- Internal architecture: the Path and Pattern primitives are now called [FilePath and GlobPattern](https://github.com/nushell/nushell/pull/2889) respectively.
# Looking forward
We've been humbled by the feedback we got on the 0.25 release and appreciate the support. Looking forward, we'll be continuing to polish the features that landed in 0.25 as we prepare for using these features in larger scripts and in custom completion logic.