Continuing our series of improvements to working with external commands, we have a few updates in this release. The first of these updates is an improvement to how content streams out of externals. With 0.11.0, this content will no longer block, which allows content to flow more easily between external and internal commands. As a result, some corner cases that came up with a series of commands in a pipeline not working because one blocks no longer is an issue.
## Allow externals to output texts or binary (sophiajt, thegedge)
The second update to externals now allows externals to freely output either text or strings, and for this content to be read in a block at a time into Nu. This allows externals to stream any content they wish, and for this stream to continue for as long as needed.
## New `shuffle` command (hirschenberger)
With 0.11.0, we introduce a new `shuffle` command that will let you shuffle the rows of a table. This allows you to choose to not always process data the same way, or to search through data more stochastically.
```
❯ help commands | shuffle
─────┬──────────────┬───────────────────────────────────────────────────────────────────────────────────────────────
# │ name │ description
─────┼──────────────┼───────────────────────────────────────────────────────────────────────────────────────────────
0 │ textview │ Autoview of text data.
1 │ pwd │ Output the current working directory.
2 │ sort-by │ Sort by the given columns.
3 │ tree │ View the contents of the pipeline as a tree.
4 │ du │ Find disk usage sizes of specified items
5 │ table │ View the contents of the pipeline as a table.
```
## New column `rename` command (andrasio)
You can also now use the new `rename` command to rename a column to a new name.
```
❯ help commands | rename action description
─────┬──────────────┬───────────────────────────────────────────────────────────────────────────────────────────────
# │ action │ description
─────┼──────────────┼───────────────────────────────────────────────────────────────────────────────────────────────
0 │ append │ Append the given row to the table
1 │ autoview │ View the contents of the pipeline as a table or list.