Follow us
Breaking
Tech News

Nushell 0.102 and 0.110 features for structured data pipelines

Nushell 0.102.0 introduces runtime pipeline input type checking to prevent commands from receiving unexpected values. The 0.110.0 release adds the explore config command with a TUI tree view and the unlet command for deleting variables from memory.

Share

Nushell 0.102.0 introduced runtime pipeline input type checking to prevent commands from receiving unexpected values. Before this release, the parser only performed checks at parse-time, meaning a string could pass through if the parser could not determine the input type. Now, if a command receives a string when it expects an integer, the runtime check triggers a nu::shell error. The introduction of runtime pipeline input type checking in version 0.102.0 ensures that commands like cool-int-print reject string inputs even when the parser cannot determine the specific input type from the initial JSON conversion. This change affects commands where the parser previously failed to identify the type, such as when using from json. The generate command now accepts pipeline input, providing the closure argument with both an item from the input and the next value from the previous iteration. This makes generate act as a stateful each. The iter scan command also became a streaming command, which improves performance when processing large inputs. The has and not-has operators provide new ergonomics for existence checks. The move command now accepts --first and --last flags to move columns to specific positions in a table. The format number command replaced the deprecated fmt command. Users can now use the single $env.config.filesize.unit option to control file size formatting instead of separate format and metric settings. The chunks command now works on binary values and binary streams, which helps with inspecting raw bytes. The start command now supports more URI types, including Spotify links. The debug profile command includes a --duration-values flag to output run time with proper duration values instead of floats. The into datetime, into cell-path, and into glob commands now accept their respective types.

Completions and the fish shell comparison

Completions drive the decision for teams switching from fish or zsh to Nushell. Many users find that fish shell offers a superior completion experience because Nushell users still struggle with discoverability when typing commands like ps | where. In those instances, the user has no way to see available fields without external help. The 0.110.0 release includes an explore config command that launches a TUI for traversing and modifying configuration settings. This interface uses a tree view to show datatypes for both configuration and JSON data. While completions work for cd, users report that it still suggests inappropriate history. For example, typing cd in a directory might suggest the directory itself even if no such sub-folder exists. I would skip the manual work of configuring custom completers if the system handled file and directory completions with the same fluidity as fish. The to md command now formats lists as unordered Markdown lists by default. The ls command also supports icons when users add the --table --icons flag. The find command now includes a --no-highlight flag to remove ANSI formatting and highlighting from non-regex finds. The seq date command can use any duration for the --increment flag. Users have noted that git branch completion remains an issue where pressing Tab after entering a branch name start does nothing. The config.use_ansi_coloring option allows for setting ANSI coloring to automatic.

Platform engineering and the 0.110.0 toolset

Platform engineering in 2026 focuses on reducing cognitive load for developers through standardized, self-service capabilities. Nushell supports this through Polars selector support, which allows selecting columns by name, type, or index. The unlet command in version 0.110.0 allows for deleting variables from memory. The mem_size column in the scope variables output helps monitor variable sizes. The ls command on Windows is faster because it caches metadata to avoid frequent calls. For teams managing large datasets, the bytes split command provides a streaming way to split input over arbitrary delimiters like the NUL byte. This capability helps when reading events from a socket or pipe. You should check your current version using the version check command to see if the latest release is available. I find the format date command’s ability to see locale environment variables set by with-env useful for localized workflows. The error make command can now be called without arguments and supports passing a single message as a record argument or pipeline input. This command also supports creating chained errors using the inner field. The rm command also deletes broken symlinks on Windows. The which command now includes a definitions column when inspecting aliases to show the command that the alias expands to. The Polars plugin now supports Azure blob storage and Google Cloud Storage. The http subcommands now include a --pool flag to allow reusing connections. Will the reliance on custom completers diminish as the built-in discovery tools mature?

Share

Technewsdaily

Senior tech writer covering AI, gadgets and cybersecurity. Breaking down the news that matters, every day.