Nushell
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub

Nushell 0.65

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 version 0.65 of Nu. This release includes better support for binary data, a new way of checking source files for correctness, improved command unification, and more.

Where to get it

Nu 0.65 is available as pre-built binaries or from crates.io. If you have Rust installed you can install it using cargo install nu.

If you want all the built-in goodies, you can install cargo install nu --features=extra.

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

Better support for binary data (hustcer, sophiajt, CBenoit)

Binary support in Nushell has steadily improved, and in this release, it's gotten a strong push forward. New features include:

  • New operators bit-and, bit-or, bit-xor, as well as renamed bit-shl and bit-shr. These correspond to bitwise and, or, exclusive or, shift left, and shift right.
  • A new encode command as well as binary support for hash
  • Improved binary support for skip and take.

Nu-check (Kangaxx-0)

Starting with this release, Nushell now provides a nu-check command which can do a check over a source file for potential parsing and typechecking errors. This will make it easier for script authors to check their scripts without running them. In the future, this may also be an easy way for editors to check a script and return errors during editing.

Unification continues (elferherrera)

In 0.65, we've also continued the process to unify commands for different datatypes. In this release, db and mysql support has simplified, bringing it closer to the already existing dataframe support.

Before:

open myfile.db
| db select a
| db from table_1
| db where ((db col a) > 1 | db and ((db col a) < 10))

Now:

open myfile.db
| select a
| from table_1
| where ((field a) > 1 | and ((field a) < 10))

Like the dataframe support, this is built on the new support to overload commands based on their input type. This will allow Nushell to have a nice, uniform syntax that just works over a variety of data types in the future.

Additional new commands

You can now use the port command to find the next available port. (WindSoilder)

Looking ahead

With 0.65, Nushell continues to move towards a more polished, more full-featured language that can handle a wider range of datatypes well. We're continuing to work towards this goal and find ways to continue to unify the language, allowing you to learn one language and apply that knowledge to many types of data.

Full changelog

Nushell

  • sholderbach created Pin reedline to new 0.8.0 release
  • sophiajt created bump to 0.65, and Fix 'skip' support for binary streams, and Make take work like first, and Binary into int, and Rename bitwise operators for readability, and Move input/output type from Command to Signature, and Clippy and remove unused is_binary, and Bump to 0.64.1 dev version
  • WindSoilder created add bytes starts-with command, and add bytes length command, and add -e flag to print, to print the value to stderr, and change default keybinding in default config, and make module imports in scripts used for relative path., and make path exists work on expanded path, and simplify error make, and fix plugin path with whitespace, and Port command, and fix exit code, and add notes for def_env, and add light theme to default_config
  • hustcer created Add bit operator: bit-xor, and Add band and bor operator for bit operations, and Update #4202: Add shift operator bshl and bshr for integers, and Add an example for default command to get an env var with fallback, and Fix less.exe downloading for windows release pkgs, close #5868, and feat: Update dockerfile for latest nu release
  • merelymyself created add search terms for is-admin, and ensure required positionals don't show up as optional when help, and Better error handling using do, and Errors when let in, let env and similar commands are passed., and Finish git fetch custom completions to allow for completing branch, and Prevents duplicate fields in transpose -r, and Calculate history duration properly (sqlite), and Fixes to nuon for inf, -inf, and NaN, and Attempts to fix file completions for open, rm and ls (and other filesystem commands)
  • IsaacKhor created Change C-u and C-k to be readline compatible, move old C-u to C-s
  • nibon7 created Fix to md --pretty when rendering a list, and Return error when external command core dumped, and Fix drop nth with open end range on 32-bit platforms
  • fdncred created fix parse_failure_due_conflicted_flags test, and fix bug where thin theme wasn't getting applied correctly, and fix excessive ansi escape sequences, and update encode decode with new signature, and add ability to convert timestamp_millis(), and cleanup $config as a built-in, and update reedline config based on recent reedline changes, and first stab at minimizing ansi escapes, and add more columns to the history command when using sqlite history
  • stormasm created update crate thiserror to version 1.0.31 in four crates, and Move the history and tutor commands out of core_commands
  • Kangaxx-0 created Add all flag to nu-check command, and Introduce new command - nu check, and Remove external nu from nu config, and Add more tests for completion, and Fix alias completion crash
  • Yethal created Slim down Dockerfile
  • CBenoit created docs: clarify print and echo commands, and build: update miette dependency, and feat: add --binary(-b) option to hash commands, and Deprecate hash base64, extend decode and add encode commands
  • elferherrera created Header filtering out of for loop, and Dataframe with real index, and Remove extra print, and Remove quotes from external args, and Allow type comparison, and Exclude ./... from expansion, and Db commands without DB, and Standardise to commands
  • rgwood created Make sort logic available outside sort-by, and Fix parser panic
  • skelly37 created root/admin prompt is red now
  • wolimst created Add Windows Terminal profile and icon in Windows control panel
  • kubouch created Add test requirements to PR template

Extension

  • schuelermine created Fix typo in Snippet

Documentation

  • petrisch created DE translation for pipelines and scripts, and DE translation for working with lists and tables, and DE translation for loading data and working with strings
  • merelymyself created Changes misleading example, and Links types_of_data page to describe command
  • relby created Fix outdated $false value
  • toastal created Syntax highlighting as console
  • hustcer created Translate overlays.md to Chinese, and Fix broken images in README.md, and fix broken table rendering for operators, and Update zh_CN translation of dataframes and working_with_strings, and Update doc template for commands, and Update zh_CN translation for nu books, and feat: update some zh_CN translations of nu book, and Remove old_book related stuffs, and Fix command overlapping for make_docs.nu and Refresh commands for v0.64
  • elferherrera created Standard command name
  • rgwood created Remove MS CRT info now that we're statically linking it

Nu Scripts

  • fdncred created update get_weather to use the new error make, and add stargazer script to monitor nushell stars, and add turtle benchmark and reorganize
  • Yethal created Added delete-merged-branches.nu
  • skelly37 created maths refactor, and up.nu fixed

Reedline

  • sholderbach created Prepare the 0.8.0 release
  • nibon7 created Avoid subtraction overflow when using usize.
  • WindSoilder created introduce LastCommand variant for parse bang result, and fix double bang
  • fdncred created add impl Display to HistoryItemId and HistorySessionId
  • drbrain created Add vi r (replace), and Add vi WORD motions B, E, W
Edit this page on GitHub
Contributors: jntrnr, sophiajt