<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="https://www.nushell.sh/rss.xsl"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <atom:link href="https://www.nushell.sh/rss.xml" rel="self" type="application/rss+xml"/>
    <title>Nushell</title>
    <link>https://www.nushell.sh/</link>
    <description>A new type of shell.</description>
    <language>en-US</language>
    <pubDate>Fri, 01 May 2026 22:57:37 GMT</pubDate>
    <lastBuildDate>Fri, 01 May 2026 22:57:37 GMT</lastBuildDate>
    <generator>@vuepress/plugin-feed</generator>
    <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
    <item>
      <title>This week in Nushell #349</title>
      <link>https://www.nushell.sh/blog/2026-05-01-twin0349.html</link>
      <guid>https://www.nushell.sh/blog/2026-05-01-twin0349.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #349</source>
      <description>This Week in Nushell #349
Published Friday, 2026-05-01, including PRs merged Friday, 2026-04-24 through Thursday, 2026-04-30.
Nushell


@ayax79:

removed claude settings and ign...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-05-01, including PRs merged Friday, 2026-04-24 through Thursday, 2026-04-30.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18145" target="_blank" rel="noopener noreferrer">removed claude settings and ignored them (#18145)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18120" target="_blank" rel="noopener noreferrer">added even more polars selectors (#18120)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18114" target="_blank" rel="noopener noreferrer">added additional polars selectors: ends-with, alpha, and alphanumeric (#18114)</a></li>
</ul>
</li>
<li>
<p>@pyz4:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18140" target="_blank" rel="noopener noreferrer">added default --on-cols value for pivot when not specified (#18140)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18131" target="_blank" rel="noopener noreferrer">improved argument handling for untyped rest parameters (#18131)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18107" target="_blank" rel="noopener noreferrer">refactored <code>from md</code> with <code>--verbose</code> for full AST and defaulting to a reduced mode (#18107)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18127" target="_blank" rel="noopener noreferrer">refactored tests to avoid format! (#18127)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18115" target="_blank" rel="noopener noreferrer">fixed <code>Rename</code> events in <code>watch</code> (#18115)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18098" target="_blank" rel="noopener noreferrer">added <code>test_table!</code> macro for easier writing of tests and examples (#18098)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18095" target="_blank" rel="noopener noreferrer">refactored parser parameter type and string interpolation (#18095)</a></li>
</ul>
</li>
<li>
<p>@colinmparker:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18108" target="_blank" rel="noopener noreferrer">(#17448) updated label and help text on CantFindCol error (#18108)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/177" target="_blank" rel="noopener noreferrer">preserved parentheses in if-call expressions and added related tests (#177)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/175" target="_blank" rel="noopener noreferrer">improved organization, added more documentation, and applied DRY principle (#175)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/174" target="_blank" rel="noopener noreferrer">enhanced formatting options and added tests for margin behavior and alias invocation (#174)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/170" target="_blank" rel="noopener noreferrer">added support for alias command formatting and preserved comment spacing (#170)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1251" target="_blank" rel="noopener noreferrer">formatted TWiN using Deepseek V4 Flash (#1251)</a></li>
</ul>
</li>
<li>
<p>@Abdillah:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1250" target="_blank" rel="noopener noreferrer">added diff completion for modified files in git (#1250)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@NotTheDr01ds:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2159" target="_blank" rel="noopener noreferrer">published TWiN 348 (#2159)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #348</title>
      <link>https://www.nushell.sh/blog/2026-04-24-twin0348.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-24-twin0348.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #348</source>
      <description>This Week in Nushell #348
Published Monday, 2026-04-27, including PRs merged Friday, 2026-04-17 through Thursday, 2026-04-23.
Nushell


@freepicheep:

fixed module description p...</description>
      <content:encoded><![CDATA[
<p>Published Monday, 2026-04-27, including PRs merged Friday, 2026-04-17 through Thursday, 2026-04-23.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@freepicheep:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18106" target="_blank" rel="noopener noreferrer">fixed module description parsing with leading shebang (#18106)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18099" target="_blank" rel="noopener noreferrer">bumped reedline to latest commit (#18099)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18084" target="_blank" rel="noopener noreferrer">fixed issue with sigil recursion (#18084)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18077" target="_blank" rel="noopener noreferrer">updated Rust toolchain to 1.93.1 + some deps (#18077)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18067" target="_blank" rel="noopener noreferrer">updated nushell to latest reedline commit 4ffb1d3 (#18067)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18058" target="_blank" rel="noopener noreferrer">enhanced <code>ansi gradient</code> command with named gradients and improved options (#18058)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18097" target="_blank" rel="noopener noreferrer">refactored to prefer borrowed strings (#18097)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18096" target="_blank" rel="noopener noreferrer">refactored/updated some old tests to the newer in process style (#18096)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18094" target="_blank" rel="noopener noreferrer">replaced FindMapResult with ControlFlow (#18094)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18085" target="_blank" rel="noopener noreferrer">made <code>metadata access</code> able to modify <code>$env</code> (#18085)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18093" target="_blank" rel="noopener noreferrer">updated <code>random choice</code> type signature (#18093)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18092" target="_blank" rel="noopener noreferrer">bumped <code>rustls-webpki</code> (#18092)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18091" target="_blank" rel="noopener noreferrer">implemented <code>Debug</code> for <code>EngineState</code> and derived more <code>Debug</code> impls (#18091)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18083" target="_blank" rel="noopener noreferrer">tightened up <code>nu_mcp::evaluation::test_cancellation_promotes_to_background_job</code> test (#18083)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18076" target="_blank" rel="noopener noreferrer">added <code>Command: Any</code> and <code>CustomValue: Any</code> (#18076)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18075" target="_blank" rel="noopener noreferrer">made <code>finally</code> not affect return value (#18075)</a></li>
</ul>
</li>
<li>
<p>@orbisai0security:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18074" target="_blank" rel="noopener noreferrer">fixed variable interpolation <code>${{</code> in release-msi.yml (#18074)</a></li>
</ul>
</li>
<li>
<p>@Tyarel8:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18073" target="_blank" rel="noopener noreferrer">added progressbar osc 9;4 wrapper to std-rfc (#18073)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18056" target="_blank" rel="noopener noreferrer">fixed warning when not compiling with mcp (#18056)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18071" target="_blank" rel="noopener noreferrer">documented preferring <code>| complete</code> over <code>o+e&gt;| complete</code> in nu-mcp (#18071)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18070" target="_blank" rel="noopener noreferrer">removed timeout_secs param in nu-mcp, relying on NU_MCP_PROMOTE_AFTER (#18070)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18059" target="_blank" rel="noopener noreferrer">raised default promote-after to 2m and added <code>timeout_secs</code> param in nu-mcp (#18059)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18057" target="_blank" rel="noopener noreferrer">overhauled nu-mcp instructions sent to MCP clients (#18057)</a></li>
</ul>
</li>
<li>
<p>@kaathewisegit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18068" target="_blank" rel="noopener noreferrer">fixed backtabbing in <code>--multi</code> mode in <code>input list</code> (#18068)</a></li>
</ul>
</li>
<li>
<p>@OneProgGit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18066" target="_blank" rel="noopener noreferrer">fixed typo (#18066)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18065" target="_blank" rel="noopener noreferrer">fixed failing test for <code>grid</code> command (#18065)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18087" target="_blank" rel="noopener noreferrer">bumped similar from 3.0.0 to 3.1.0 (#18087)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18086" target="_blank" rel="noopener noreferrer">bumped rmcp from 1.3.0 to 1.5.0 (#18086)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18043" target="_blank" rel="noopener noreferrer">bumped hashbrown from 0.16.1 to 0.17.0 (#18043)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18042" target="_blank" rel="noopener noreferrer">bumped lean_string from 0.5.1 to 0.6.0 (#18042)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@jatinderjit:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1249" target="_blank" rel="noopener noreferrer">updated <code>tldr</code> completions for commands (#1249)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1247" target="_blank" rel="noopener noreferrer">fixed wordle (#1247)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@Tyarel8:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/248" target="_blank" rel="noopener noreferrer">added optional sigil <code>%</code> to start of commands (#248)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2158" target="_blank" rel="noopener noreferrer">updated startup stages to include sourcing of autoload directories (#2158)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2157" target="_blank" rel="noopener noreferrer">added a few more TWiNs (#2157)</a></li>
</ul>
</li>
<li>
<p>@istar410:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2156" target="_blank" rel="noopener noreferrer">fixed keychain command (#2156)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@tisonkun:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1058" target="_blank" rel="noopener noreferrer">fixed always reset undo stack on Ctrl+C event (#1058)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1051" target="_blank" rel="noopener noreferrer">gracefully handled ReedlineEvent::CtrlC (#1051)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1057" target="_blank" rel="noopener noreferrer">made <code>keybindings</code> crate only used for <code>helix</code> (#1057)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1053" target="_blank" rel="noopener noreferrer">added vi normal mode <code>o</code> and <code>O</code> command (#1053)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1052" target="_blank" rel="noopener noreferrer">deprecated <code>get_reedline_reedline_events</code>, <code>get_reedline_edit_commands</code> and <code>get_reedline_prompt_edit_modes</code> (#1052)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1049" target="_blank" rel="noopener noreferrer">made <code>ReedlineEvent::ExecuteHostCommand</code> return <code>Signal::HostCommand</code> instead of <code>Signal::Success</code> (#1049)</a></li>
</ul>
</li>
<li>
<p>@SAY-5:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1055" target="_blank" rel="noopener noreferrer">fixed divide-by-zero in estimate_single_line_wraps for 0-column terminals (#1055)</a></li>
</ul>
</li>
<li>
<p>@schlich:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1039" target="_blank" rel="noopener noreferrer">added basic mode switching in helix mode (#1039)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #347</title>
      <link>https://www.nushell.sh/blog/2026-04-17-twin0347.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-17-twin0347.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #347</source>
      <description>This Week in Nushell #347
Published Sunday, 2026-04-19, including PRs merged Friday, 2026-04-10 through Thursday, 2026-04-16.
Nushell


@cptpiepmatz:

bumped to 0.112.3 (#18055)...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-04-19, including PRs merged Friday, 2026-04-10 through Thursday, 2026-04-16.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18055" target="_blank" rel="noopener noreferrer">bumped to 0.112.3 (#18055)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18053" target="_blank" rel="noopener noreferrer">bumped rustls-webpki (#18053)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18017" target="_blank" rel="noopener noreferrer">post release bump to 0.112.2 (#18017)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18016" target="_blank" rel="noopener noreferrer">selected specific version for <code>getrandom</code> and bumped minor (#18016)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18015" target="_blank" rel="noopener noreferrer">stopped using <code>version</code> for nu dev dependencies (#18015)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18014" target="_blank" rel="noopener noreferrer">prepared release (#18014)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18039" target="_blank" rel="noopener noreferrer">fixed input list regressions with keystrokes and fuzzy (#18039)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/18030" target="_blank" rel="noopener noreferrer">fixed quoting regression in argument handling for evaluate_file; added tests (#18030)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18027" target="_blank" rel="noopener noreferrer">fixed: properly quoted special characters in script arguments (#18027)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@cptpiepmatz:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1047" target="_blank" rel="noopener noreferrer">bumped to 0.47.0 (#1047)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1246" target="_blank" rel="noopener noreferrer">updated result module (#1246)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1245" target="_blank" rel="noopener noreferrer">updated get-weather.nu to url encode location (#1245)</a></li>
</ul>
</li>
<li>
<p>@ask4fusora:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1244" target="_blank" rel="noopener noreferrer">used path-columns in result metadata hook (#1244)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1243" target="_blank" rel="noopener noreferrer">fixed <code>FileVersion</code> entry in bump-version script (#1243)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2154" target="_blank" rel="noopener noreferrer">added release notes for <code>v0.112.2</code> (#2154)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2149" target="_blank" rel="noopener noreferrer">fixed smol issues with 0.112.1 changelog (#2149)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2148" target="_blank" rel="noopener noreferrer">added release notes for <code>v0.112.0</code> (#2148)</a></li>
</ul>
</li>
<li>
<p>@Kissaki:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2151" target="_blank" rel="noopener noreferrer">fixed typo in v0.112.1 post (#2151)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2150" target="_blank" rel="noopener noreferrer">added inline code fencing in v0.112.1 post (#2150)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2147" target="_blank" rel="noopener noreferrer">refreshed command docs for 0.112 (#2147)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2146" target="_blank" rel="noopener noreferrer">updated <code>metadata set</code> example of the book (#2146)</a></li>
</ul>
</li>
<li>
<p>@Drazape:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2100" target="_blank" rel="noopener noreferrer">fixed outdated substring output in book (#2100)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.112.2</title>
      <link>https://www.nushell.sh/blog/2026-04-15-nushell_v0_112_2.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-15-nushell_v0_112_2.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.112.2</source>
      <description>Nushell 0.112.2
Today, we&amp;apos;re releasing version 0.112.2 of Nu. This release adds fixes for regressions in script argument quoting and input list, improving handling for quoted st...</description>
      <content:encoded><![CDATA[
<p>Today, we're releasing version 0.112.2 of Nu. This release adds fixes for regressions in script argument quoting and <code>input list</code>, improving handling for quoted strings, special characters, fuzzy selection, and multi-select navigation.</p>
<h1>Where to get it</h1>
<p>Nu 0.112.2 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.112.2" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.112.1</title>
      <link>https://www.nushell.sh/blog/2026-04-11-nushell_v0_112_1.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-11-nushell_v0_112_1.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.112.1</source>
      <description>Nushell 0.112.1
Today, we&amp;apos;re releasing version 0.112.1 of Nu. This release adds structured markdown parsing with from md, a new % sigil to explicitly call internal commands, and...</description>
      <content:encoded><![CDATA[
<p>Today, we're releasing version 0.112.1 of Nu. This release adds structured markdown parsing with <code>from md</code>, a new <code>%</code> sigil to explicitly call internal commands, and a bunch of new config options to better shape Nu to your workflow, along with improvements to type checking for cell paths.</p>
<div class="hint-container note">
<p class="hint-container-title">Note</p>
<p>Some crates failed to release properly, so we skip <code>0.112.0</code>.</p>
</div>
<h1>Where to get it</h1>
<p>Nu 0.112.1 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.112.1" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #346</title>
      <link>https://www.nushell.sh/blog/2026-04-10-twin0346.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-10-twin0346.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #346</source>
      <description>This Week in Nushell #346
Published Friday, 2026-04-10, including PRs merged Friday, 2026-04-03 through Thursday, 2026-04-09.
Nushell


@cptpiepmatz:

marked CustomValue::is_ite...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-04-10, including PRs merged Friday, 2026-04-03 through Thursday, 2026-04-09.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18003" target="_blank" rel="noopener noreferrer">marked <code>CustomValue::is_iterable</code> as deprecated (#18003)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17983" target="_blank" rel="noopener noreferrer">made <code>random choice</code> behave like <code>first</code> (#17983)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17980" target="_blank" rel="noopener noreferrer">moved conversion between <code>nu_json::Value</code> and <code>nu_protocol::Value</code> into <code>nu-json</code> (#17980)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/18000" target="_blank" rel="noopener noreferrer">bumped tempfile from 3.25.0 to 3.27.0 (#18000)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17999" target="_blank" rel="noopener noreferrer">bumped similar from 2.7.0 to 3.0.0 (#17999)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17998" target="_blank" rel="noopener noreferrer">bumped tokio from 1.50.0 to 1.51.0 (#17998)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17997" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.44.0 to 1.45.0 (#17997)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17949" target="_blank" rel="noopener noreferrer">bumped unicode-segmentation from 1.12.0 to 1.13.2 (#17949)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17996" target="_blank" rel="noopener noreferrer">improved model guidance (#17996)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17989" target="_blank" rel="noopener noreferrer">fixed nu-mcp to deliver full output for promoted background jobs (#17989)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17995" target="_blank" rel="noopener noreferrer">added rustfmt.toml (#17995)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17994" target="_blank" rel="noopener noreferrer">bumped uu_* packages to 0.8.0 (#17994)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17988" target="_blank" rel="noopener noreferrer">refactored some commands and added tests (#17988)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17979" target="_blank" rel="noopener noreferrer">fixed help command to prefer built-in help over aliases (#17979)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17978" target="_blank" rel="noopener noreferrer">refactored parser to consolidate span adjustment for external calls (#17978)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17966" target="_blank" rel="noopener noreferrer">made input list streamable (#17966)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17956" target="_blank" rel="noopener noreferrer">added new sigil <code>%</code> for built-ins (#17956)</a></li>
</ul>
</li>
<li>
<p>@Benjas333:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17993" target="_blank" rel="noopener noreferrer">added frameless table theme (#17993)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17987" target="_blank" rel="noopener noreferrer">fixed <code>input list</code> when stdin is redirected in Unix TTY environments (#17987)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17976" target="_blank" rel="noopener noreferrer">fixed parser scope leak in where $cond (#17976)</a></li>
</ul>
</li>
<li>
<p>@xtqqczze:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17984" target="_blank" rel="noopener noreferrer">updated git2 minimum to 0.20.4 (#17984)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17974" target="_blank" rel="noopener noreferrer">reverted allowing default values in external signatures (#17974)</a></li>
</ul>
</li>
<li>
<p>@sholderbach:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/16708" target="_blank" rel="noopener noreferrer">fixed confusing double negation with empty <code>else if</code> (#16708)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@neko-side:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1242" target="_blank" rel="noopener noreferrer">added lsd completions (#1242)</a></li>
</ul>
</li>
<li>
<p>@cab404:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1241" target="_blank" rel="noopener noreferrer">fixed yarn and tldr completion directories (#1241)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1240" target="_blank" rel="noopener noreferrer">renamed custom-completions/bend to adere to *-completions.nu format (#1240)</a></li>
</ul>
</li>
<li>
<p>@gbrls:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1239" target="_blank" rel="noopener noreferrer">added television custom-completions (#1239)</a></li>
</ul>
</li>
<li>
<p>@alightgoesout:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1238" target="_blank" rel="noopener noreferrer">updated jj completions for version 0.40.0 (#1238)</a></li>
</ul>
</li>
</ul>
<h2>VSCode Extension</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/vscode-nushell-lang/pull/230" target="_blank" rel="noopener noreferrer">updated for nushell 0.112.0 (#230)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #345</title>
      <link>https://www.nushell.sh/blog/2026-04-03-twin0345.html</link>
      <guid>https://www.nushell.sh/blog/2026-04-03-twin0345.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #345</source>
      <description>This Week in Nushell #345
Published Sunday, 2026-04-19, including PRs merged Friday, 2026-03-27 through Thursday, 2026-04-02.
Nushell


@Juhan280:

refactored nu-command tests f...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-04-19, including PRs merged Friday, 2026-03-27 through Thursday, 2026-04-02.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17968" target="_blank" rel="noopener noreferrer">refactored nu-command tests for <code>reject</code> command (#17968)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17961" target="_blank" rel="noopener noreferrer">fixed <code>reject</code> command to properly forward error values (#17961)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17944" target="_blank" rel="noopener noreferrer">allowed <code>--content-type</code> to accept <code>null</code> in <code>metadata set</code> (#17944)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17911" target="_blank" rel="noopener noreferrer">preserved metadata when rendering <code>Custom</code> value in <code>table</code> command (#17911)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17910" target="_blank" rel="noopener noreferrer">fixed <code>cargo doc</code> warnings (#17910)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17909" target="_blank" rel="noopener noreferrer">implemented DerefMut for PipelineExecutionData in nu-protocol (#17909)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17906" target="_blank" rel="noopener noreferrer">preserved pipeline metadata when detect type cannot determine input (#17906)</a></li>
</ul>
</li>
<li>
<p>@niklasmarderx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17967" target="_blank" rel="noopener noreferrer">fixed HTTP handling of x- vendor prefix in Content-Type for automatic parsing (#17967)</a></li>
</ul>
</li>
<li>
<p>@Dexterity104:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17962" target="_blank" rel="noopener noreferrer">fixed parse to support char lbrace before trailing capture (#17962)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17955" target="_blank" rel="noopener noreferrer">reverted "detect lexer-stage errors at highlighting" (#17955)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17945" target="_blank" rel="noopener noreferrer">enhanced MCP mode handling and output behavior across commands (#17945)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17937" target="_blank" rel="noopener noreferrer">added <code>from md</code> command to convert markdown text into structured data (#17937)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17912" target="_blank" rel="noopener noreferrer">updated rmcp to version 1.3.0 and adjusted session manager configuration (#17912)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17905" target="_blank" rel="noopener noreferrer">updated IDE help text to specify cursor position and file context (#17905)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17954" target="_blank" rel="noopener noreferrer">streamlined CI Cargo checks (#17954)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17929" target="_blank" rel="noopener noreferrer">bumped <code>rand</code> and related to 0.10 (#17929)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17927" target="_blank" rel="noopener noreferrer">added <code>test_cell_path!()</code> macro (#17927)</a></li>
</ul>
</li>
<li>
<p>@xtqqczze:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17950" target="_blank" rel="noopener noreferrer">fixed failed to parse manifest error (#17950)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17931" target="_blank" rel="noopener noreferrer">updated Cargo.toml files to use workspace edition and rust-version (#17931)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17946" target="_blank" rel="noopener noreferrer">bumped uuid from 1.22.0 to 1.23.0 (#17946)</a></li>
</ul>
</li>
<li>
<p>@smartcoder0777:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17943" target="_blank" rel="noopener noreferrer">fixed experimental-options consuming script path (#17943)</a></li>
</ul>
</li>
<li>
<p>@rayzeller:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17939" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in nu_plugin_polars (#17939)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17938" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in nu-engine (#17938)</a></li>
</ul>
</li>
<li>
<p>@galuszkak:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17930" target="_blank" rel="noopener noreferrer">used strict comparison for float sorting to avoid panics (#17930)</a></li>
</ul>
</li>
<li>
<p>@WookiesRpeople2:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17928" target="_blank" rel="noopener noreferrer">updated noun output to be more compact when <code>--indent n</code> is used (#17928)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17923" target="_blank" rel="noopener noreferrer">fixed an edge case of parse_unit_value (#17923)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17908" target="_blank" rel="noopener noreferrer">added new scope for where condition to allow variables named <code>it</code> (#17908)</a></li>
</ul>
</li>
<li>
<p>@pickx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17917" target="_blank" rel="noopener noreferrer">detected lexer-stage errors at highlighting (#17917)</a></li>
</ul>
</li>
<li>
<p>@Rohan5commit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17915" target="_blank" rel="noopener noreferrer">fixed typo in flags section comment (#17915)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17904" target="_blank" rel="noopener noreferrer">fixed typo in completer comment (#17904)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2144" target="_blank" rel="noopener noreferrer">March TWiNs (#2144)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2142" target="_blank" rel="noopener noreferrer">bumped picomatch (#2142)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>
<p>@asakura:</p>
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/164" target="_blank" rel="noopener noreferrer">prevented stripping parens in boolean expressions (#164)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/161" target="_blank" rel="noopener noreferrer">enhanced formatting with batch fix (#161)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/148" target="_blank" rel="noopener noreferrer">refactored test cases and added new fixtures for parser error handling (#148)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/147" target="_blank" rel="noopener noreferrer">fixed batch issues (#147)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/135" target="_blank" rel="noopener noreferrer">enhanced formatting for pipelines, comments, and <code>for</code> loop calls (#135)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #344</title>
      <link>https://www.nushell.sh/blog/2026-03-27-twin0344.html</link>
      <guid>https://www.nushell.sh/blog/2026-03-27-twin0344.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #344</source>
      <description>This Week in Nushell #344
Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-20 through Thursday, 2026-03-26.
Nushell


@fdncred:

refactored error handling for ...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-20 through Thursday, 2026-03-26.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17895" target="_blank" rel="noopener noreferrer">refactored error handling for directory removal in rm command (#17895)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17855" target="_blank" rel="noopener noreferrer">fixed datetime parsing by enhancing timezone and offset handling (#17855)</a></li>
</ul>
</li>
<li>
<p>@rayzeller:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17888" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in remaining nu-command files (#17888)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17877" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in nu-protocol and nu-mcp (#17877)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17876" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in nu-cli and main (#17876)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17872" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in nu-command filters and strings (#17872)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17871" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in plugin crates (#17871)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17842" target="_blank" rel="noopener noreferrer">replaced Span::unknown() with real spans in which_.rs (#17842)</a></li>
</ul>
</li>
<li>
<p>@ian-h-chamberlain:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17887" target="_blank" rel="noopener noreferrer">customized binary hex styles with color_config (#17887)</a></li>
</ul>
</li>
<li>
<p>@smartcoder0777:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17878" target="_blank" rel="noopener noreferrer">fixed known external name lookup under alias shadowing (#17878)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17875" target="_blank" rel="noopener noreferrer">preserved pipeline metadata in first and last for list/range streams (#17875)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17874" target="_blank" rel="noopener noreferrer">only updated PR labels on opened or ready PRs (#17874)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17873" target="_blank" rel="noopener noreferrer">applied <code>#[doc(no_inline)]</code> to <code>prelude</code> modules (#17873)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17870" target="_blank" rel="noopener noreferrer">added <code>From</code> conversions for <code>ErrorSite</code> (#17870)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17869" target="_blank" rel="noopener noreferrer">allowed showing error sources for generic errors (#17869)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17868" target="_blank" rel="noopener noreferrer">added <code>GenericError::new_internal_with_location</code> (#17868)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17864" target="_blank" rel="noopener noreferrer">refactored nu-protocol to replace <code>ShellError::GenericError</code> with <code>ShellError::Generic(GenericError)</code> (#17864)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17858" target="_blank" rel="noopener noreferrer">refactored more command integration tests in nu-command/testing (#17858)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17852" target="_blank" rel="noopener noreferrer">applied security updates (#17852)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17867" target="_blank" rel="noopener noreferrer">updated metadata handling for <code>skip</code> and <code>reject</code> commands (#17867)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17866" target="_blank" rel="noopener noreferrer">updated metadata handling for <code>get</code> command (#17866)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17862" target="_blank" rel="noopener noreferrer">added take_metadata and with_path_columns to nu-protocol (#17862)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17859" target="_blank" rel="noopener noreferrer">updated names in <code>keybindings list</code> (#17859)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17861" target="_blank" rel="noopener noreferrer">auto-promoted long-running evaluations to background jobs in mcp (#17861)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17851" target="_blank" rel="noopener noreferrer">fixed string interpolation with unclosed <code>)</code> in parser (#17851)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17848" target="_blank" rel="noopener noreferrer">fixed <code>test_record!</code> by specifying <code>$crate::record!</code> (#17848)</a></li>
</ul>
</li>
<li>
<p>@Moayad717:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17847" target="_blank" rel="noopener noreferrer">fixed rm symlink trailing slash (#17847)</a></li>
</ul>
</li>
<li>
<p>@app/:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17844" target="_blank" rel="noopener noreferrer">added cross-shell search terms to 16 commands (bash/CMD/PowerShell) (#17844)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17883" target="_blank" rel="noopener noreferrer">bumped toml from 1.0.6+spec-1.1.0 to 1.0.7+spec-1.1.0 (#17883)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17879" target="_blank" rel="noopener noreferrer">bumped ureq from 3.2.0 to 3.3.0 (#17879)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/125" target="_blank" rel="noopener noreferrer">refactored files for maintainability (#125)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/124" target="_blank" rel="noopener noreferrer">enhanced formatting and repair capabilities (#124)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/103" target="_blank" rel="noopener noreferrer">allowed formatting expressions like <code>ls | where type == dir</code> inside def (#103)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/102" target="_blank" rel="noopener noreferrer">added support for attribute expressions and new test cases (#102)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/99" target="_blank" rel="noopener noreferrer">fixed issues and added tests (#99)</a></li>
</ul>
</li>
<li>
<p>@asakura:</p>
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/123" target="_blank" rel="noopener noreferrer">updated nix build patch for ground_truth.rs (#123)</a></li>
</ul>
</li>
<li>
<p>@saschabuehrle:</p>
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/96" target="_blank" rel="noopener noreferrer">preserved exclusive range operator (..&lt;) (#96)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@paglobal:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2141" target="_blank" rel="noopener noreferrer">fixed typo in returned value explanation (#2141)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@1gmar:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/247" target="_blank" rel="noopener noreferrer">exposed Highlights query at crate level (#247)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@eitsupi:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1042" target="_blank" rel="noopener noreferrer">preserved prompt position after ExternalBreak (#1042)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #343</title>
      <link>https://www.nushell.sh/blog/2026-03-20-twin0343.html</link>
      <guid>https://www.nushell.sh/blog/2026-03-20-twin0343.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #343</source>
      <description>This Week in Nushell #343
Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-13 through Thursday, 2026-03-19.
Nushell


@smartcoder0777:

fixed group-by behavior...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-13 through Thursday, 2026-03-19.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@smartcoder0777:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17837" target="_blank" rel="noopener noreferrer">fixed <code>group-by</code> behavior for lists/records (#17837)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17833" target="_blank" rel="noopener noreferrer">added --base support to <code>url parse</code> (#17833)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17836" target="_blank" rel="noopener noreferrer">upgraded rmcp to version 1.2.0 (#17836)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17835" target="_blank" rel="noopener noreferrer">upgraded <code>glob</code> to use wax crate v0.7.0 (#17835)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17819" target="_blank" rel="noopener noreferrer">swapped order of user and default library directories, const $NU_LIB_DIRS (#17819)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17800" target="_blank" rel="noopener noreferrer">updated command docs to include command types (#17800)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17834" target="_blank" rel="noopener noreferrer">bumped reedline to latest main (#17834)</a></li>
</ul>
</li>
<li>
<p>@musicinmybrain:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17832" target="_blank" rel="noopener noreferrer">updated lscolors from 0.20 to 0.21 (#17832)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17825" target="_blank" rel="noopener noreferrer">fixed clippy issues (#17825)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17822" target="_blank" rel="noopener noreferrer">warned on <code>clippy::needless_raw_strings</code> (#17822)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17820" target="_blank" rel="noopener noreferrer">refactored more command integration tests (#17820)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17813" target="_blank" rel="noopener noreferrer">bumped <code>toml</code> crate to 1.0 (#17813)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17805" target="_blank" rel="noopener noreferrer">warned on <code>clippy::push_format_string</code> (#17805)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17804" target="_blank" rel="noopener noreferrer">gave <code>http get</code> tests with socks proxy more execution time (#17804)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17803" target="_blank" rel="noopener noreferrer">enabled <code>env_shlvl_in_repl</code> and <code>env_shlvl_in_exec_repl</code> tests (#17803)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17801" target="_blank" rel="noopener noreferrer">refactored <code>test_examples</code> usage with centralized testing (#17801)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17794" target="_blank" rel="noopener noreferrer">fixed <code>http</code> not respecting proxy vars like <code>ALL_PROXY</code> (#17794)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17821" target="_blank" rel="noopener noreferrer">excluded nu-test-support for loongarch64 to fix release script (#17821)</a></li>
</ul>
</li>
<li>
<p>@Rohan5commit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17818" target="_blank" rel="noopener noreferrer">fixed devdocs wording (#17818)</a></li>
</ul>
</li>
<li>
<p>@zhiburt:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17812" target="_blank" rel="noopener noreferrer">adjusted width estimation for header_on_border in nu-table (#17812)</a></li>
</ul>
</li>
<li>
<p>@tauanbinato:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17811" target="_blank" rel="noopener noreferrer">fixed output type signatures for <code>hash md5</code> and <code>hash sha256</code> (#17811)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17797" target="_blank" rel="noopener noreferrer">added <code>test_record!</code> convenience macro (#17797)</a></li>
</ul>
</li>
<li>
<p>@ymcx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17791" target="_blank" rel="noopener noreferrer">dropped mode preservation to fix copying read-only dirs (#17791)</a></li>
</ul>
</li>
<li>
<p>@weirdan:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17788" target="_blank" rel="noopener noreferrer">added completions for <code>into binary --endian</code> (#17788)</a></li>
</ul>
</li>
<li>
<p>@pickx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17787" target="_blank" rel="noopener noreferrer">added <code>group-by</code> flag to delete column after grouping (#17787)</a></li>
</ul>
</li>
<li>
<p>@blackhat-hemsworth:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17783" target="_blank" rel="noopener noreferrer">added duplicate histogram output column check (#17783)</a></li>
</ul>
</li>
<li>
<p>@stuartcarnie:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17566" target="_blank" rel="noopener noreferrer">added configurable external hinter closure to repl (#17566)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17831" target="_blank" rel="noopener noreferrer">bumped winreg from 0.55.0 to 0.56.0 (#17831)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17830" target="_blank" rel="noopener noreferrer">bumped scraper from 0.25.0 to 0.26.0 (#17830)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17774" target="_blank" rel="noopener noreferrer">bumped sqlparser from 0.60.0 to 0.61.0 (#17774)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@fvsch:
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/91" target="_blank" rel="noopener noreferrer">removed <code>cargo install nufmt</code> from README (#91)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2137" target="_blank" rel="noopener noreferrer">bumped undici from 7.16.0 to 7.24.1 (#2137)</a></li>
</ul>
</li>
<li>
<p>@c-git:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2131" target="_blank" rel="noopener noreferrer">fixed minor typos (#2131)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@SuaveIV:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/163" target="_blank" rel="noopener noreferrer">added nu_plugin_audio, nu_script_time_sync, nu_script_world_time; alphabetized entries (#163)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@app/dependabot:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/246" target="_blank" rel="noopener noreferrer">bumped minimatch from 3.1.2 to 3.1.5 (#246)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1040" target="_blank" rel="noopener noreferrer">fixed ANSI stripping for suggestion width in completion menus (#1040)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #342</title>
      <link>https://www.nushell.sh/blog/2026-03-13-twin0342.html</link>
      <guid>https://www.nushell.sh/blog/2026-03-13-twin0342.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #342</source>
      <description>This Week in Nushell #342
Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-06 through Thursday, 2026-03-12.
Nushell


@Juhan280:

updated reedline to commit 5c...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-03-29, including PRs merged Friday, 2026-03-06 through Thursday, 2026-03-12.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17785" target="_blank" rel="noopener noreferrer">updated reedline to commit 5c2f105 (#17785)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17749" target="_blank" rel="noopener noreferrer">refactored the display logic for <code>ReedlineEvent</code> and <code>EditCommand</code> to nushell (#17749)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17747" target="_blank" rel="noopener noreferrer">added ToStart/ToEnd reedline events (#17747)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17782" target="_blank" rel="noopener noreferrer">made <code>Span</code>'s <code>Debug</code> impl succinct (#17782)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17781" target="_blank" rel="noopener noreferrer">added support for parsing <code>hh:mm:ss</code> formatted strings in <code>into duration</code> (#17781)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17779" target="_blank" rel="noopener noreferrer">updated dependencies and improved compatibility (#17779)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17759" target="_blank" rel="noopener noreferrer">added 'document' flag to parse HTML as a full document in <code>query_web</code> (#17759)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17737" target="_blank" rel="noopener noreferrer">fixed select pushdown column aliasing (#17737)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17734" target="_blank" rel="noopener noreferrer">updated Rust version to 1.92.0 and fixed clippy warnings in configuration (#17734)</a></li>
</ul>
</li>
<li>
<p>@pickx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17777" target="_blank" rel="noopener noreferrer">fixed format strings with tokens after ending quote (#17777)</a></li>
</ul>
</li>
<li>
<p>@weirdan:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17775" target="_blank" rel="noopener noreferrer">preserved metadata in <code>reject</code> (#17775)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17762" target="_blank" rel="noopener noreferrer">added <code>char</code> completions (#17762)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17761" target="_blank" rel="noopener noreferrer">added <code>ansi</code> completions (#17761)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17767" target="_blank" rel="noopener noreferrer">refactored most nested command integration tests in <code>nu-command</code> (#17767)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17766" target="_blank" rel="noopener noreferrer">merged <code>To/FromYaml</code> and <code>To/FromYml</code> into one struct (#17766)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17765" target="_blank" rel="noopener noreferrer">bumped some packages to handle security issues (#17765)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17750" target="_blank" rel="noopener noreferrer">added <code>TestResult::expect_value_eq</code> and improved <code>test()</code> errors (#17750)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17748" target="_blank" rel="noopener noreferrer">used <code>std::panic::Location</code> instead of custom <code>Location</code> type (#17748)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17745" target="_blank" rel="noopener noreferrer">updated more tests and used <code>assert_contains()</code> (#17745)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17742" target="_blank" rel="noopener noreferrer">bumped aws related crates (#17742)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17740" target="_blank" rel="noopener noreferrer">moved some tests around and applied more <code>nu_test_support::test</code> (#17740)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17764" target="_blank" rel="noopener noreferrer">fixed pipefail behavior with <code>try</code>, <code>catch</code>, and <code>finally</code> (#17764)</a></li>
</ul>
</li>
<li>
<p>@0xRozier:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17753" target="_blank" rel="noopener noreferrer">allowed passing null to optional positional params in builtin commands (#17753)</a></li>
</ul>
</li>
<li>
<p>@preiter93:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17752" target="_blank" rel="noopener noreferrer">bumped edtui to 0.11.2 and removed workarounds in nu-explore (#17752)</a></li>
</ul>
</li>
<li>
<p>@Jaredw2289-svg:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17751" target="_blank" rel="noopener noreferrer">improved alias expression error message with user-friendly descriptions (#17751)</a></li>
</ul>
</li>
<li>
<p>@Bortlesboat:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17746" target="_blank" rel="noopener noreferrer">fixed confusing type mismatch error in bytes collect (#17746)</a></li>
</ul>
</li>
<li>
<p>@coravacav:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17744" target="_blank" rel="noopener noreferrer">fixed input listen timeout calculation (#17744)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17741" target="_blank" rel="noopener noreferrer">moved reserved variable name checking near <code>is_variable</code> and <code>add_variable</code> (#17741)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17772" target="_blank" rel="noopener noreferrer">bumped calamine from 0.33.0 to 0.34.0 (#17772)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17771" target="_blank" rel="noopener noreferrer">bumped quickcheck_macros from 1.1.0 to 1.2.0 (#17771)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/89" target="_blank" rel="noopener noreferrer">fixed completion signature formatting (#89)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@LikeLakers2:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2136" target="_blank" rel="noopener noreferrer">added ESC-to-clear keybind to "Coming from CMD" and "Coming from PowerShell" pages (#2136)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@eitsupi:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1035" target="_blank" rel="noopener noreferrer">added external break signal for <code>read_line</code> interruption and marked <code>Signal</code> as <code>non_exhaustive</code> (#1035)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1034" target="_blank" rel="noopener noreferrer">added EnumDiscriminants to ReedlineEvent and EditCommand (#1034)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1032" target="_blank" rel="noopener noreferrer">moved jump-to-buffer start/end bindings to common navigation (#1032)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1031" target="_blank" rel="noopener noreferrer">added <code>EditCommand::MoveLineUp</code> and <code>EditCommand::MoveLineDown</code> (#1031)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1027" target="_blank" rel="noopener noreferrer">fixed cursor position for <code>EditCommand::ReplaceChar</code> (#1027)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/956" target="_blank" rel="noopener noreferrer">fixed undo requiring two presses after copy (#956)</a></li>
</ul>
</li>
<li>
<p>@schlich:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1033" target="_blank" rel="noopener noreferrer">added minimal scaffolding for feature-gated Helix Mode implementation (#1033)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@zifengb:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1235" target="_blank" rel="noopener noreferrer">enhanced Claude Code CLI with detailed command descriptions and new functionalities (#1235)</a></li>
</ul>
</li>
<li>
<p>@jasha-hrp:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1234" target="_blank" rel="noopener noreferrer">updated nushell paths to reflect recent breaking changes (#1234)</a></li>
</ul>
</li>
<li>
<p>@deltoss:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1233" target="_blank" rel="noopener noreferrer">marked gist parameter as optional for <code>gh gist edit</code> command (#1233)</a></li>
</ul>
</li>
<li>
<p>@0x4D5352:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1231" target="_blank" rel="noopener noreferrer">added Nushell Agent Skill (#1231)</a></li>
</ul>
</li>
</ul>
<h2>showcase</h2>
<ul>
<li>@ian-h-chamberlain:
<ul>
<li><a href="https://github.com/nushell/showcase/pull/13" target="_blank" rel="noopener noreferrer">added nushell-sliced.svg and nushell-sliced-black.svg (#13)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #341</title>
      <link>https://www.nushell.sh/blog/2026-03-06-twin0341.html</link>
      <guid>https://www.nushell.sh/blog/2026-03-06-twin0341.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #341</source>
      <description>This Week in Nushell #341
Published Sunday, 2026-03-29, including PRs merged Friday, 2026-02-27 through Thursday, 2026-03-05.
Nushell


@fdncred:

added testbin &amp;quot;bins&amp;quot; to nushel...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2026-03-29, including PRs merged Friday, 2026-02-27 through Thursday, 2026-03-05.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17728" target="_blank" rel="noopener noreferrer">added testbin "bins" to nushell help (#17728)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17727" target="_blank" rel="noopener noreferrer">fixed duplicate custom commands from showing up (#17727)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17718" target="_blank" rel="noopener noreferrer">fixed the off-by-1 jump scrolling in <code>explore</code> when searching (#17718)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17699" target="_blank" rel="noopener noreferrer">reverted 17606 to make plugin handling more robust on startup (#17699)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17692" target="_blank" rel="noopener noreferrer">removed bad <code>which</code> test and created a better one (#17692)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17691" target="_blank" rel="noopener noreferrer">fixed one-off up/down arrow wrapping bug (#17691)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17680" target="_blank" rel="noopener noreferrer">updated the sqlite history timestamp and duration with nushell values (#17680)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17678" target="_blank" rel="noopener noreferrer">pinned trash to 5.2.4 to avoid needing --locked for macOS builds (#17678)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17677" target="_blank" rel="noopener noreferrer">fixed pipefail issues with complete and let (#17677)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17675" target="_blank" rel="noopener noreferrer">fixed interpolation without closing paren (#17675)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17668" target="_blank" rel="noopener noreferrer">expanded custom value handling to more commands (#17668)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17663" target="_blank" rel="noopener noreferrer">allowed <code>clip copy</code> to copy tables without ansi escapes (#17663)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17723" target="_blank" rel="noopener noreferrer">implemented selector commands for numeric types in Polars (#17723)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17722" target="_blank" rel="noopener noreferrer">added <code>polars selector ends-with</code> (#17722)</a></li>
</ul>
</li>
<li>
<p>@ChrisDenton:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17721" target="_blank" rel="noopener noreferrer">fixed tests ending cwd with a / (#17721)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17720" target="_blank" rel="noopener noreferrer">preferred PWD over current_dir if they're the same directory (#17720)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17716" target="_blank" rel="noopener noreferrer">bumped kitest &amp; removed <code>RefUnwindSafe</code> from experimental option markers (#17716)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17702" target="_blank" rel="noopener noreferrer">updated winresource versions (#17702)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17682" target="_blank" rel="noopener noreferrer">bumped patch after release (#17682)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17681" target="_blank" rel="noopener noreferrer">updated readline version, bumped minor version, fixed some feature conflicts (#17681)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17664" target="_blank" rel="noopener noreferrer">moved native <code>clip</code> commands behind an experimental option (#17664)</a></li>
</ul>
</li>
<li>
<p>@Tyarel8:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17707" target="_blank" rel="noopener noreferrer">added ctrl+p/n for navigation in <code>input list</code> (#17707)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17706" target="_blank" rel="noopener noreferrer">added <code>metadata_ref</code> and <code>metadata_mut</code> methods to <code>PipelineData</code> (#17706)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17703" target="_blank" rel="noopener noreferrer">added <code>str escape-regex</code> (#17703)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17696" target="_blank" rel="noopener noreferrer">fixed respect for <code>reorder-cell-paths</code> option in assignments (#17696)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17684" target="_blank" rel="noopener noreferrer">fixed parser handling of record keys parsed as strings (#17684)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17673" target="_blank" rel="noopener noreferrer">added type inference for cell paths (#17673)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17672" target="_blank" rel="noopener noreferrer">reworked another deprecated <code>metadata set</code> example (#17672)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17667" target="_blank" rel="noopener noreferrer">updated <code>metadata-set</code> example to use <code>--path-columns</code> syntax (#17667)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17710" target="_blank" rel="noopener noreferrer">bumped actions/upload-artifact from 6 to 7 (#17710)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@vkopio:
<a href="https://github.com/nushell/nufmt/pull/88" target="_blank" rel="noopener noreferrer">added tests and fixes for some format errors (#88)</a></li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2135" target="_blank" rel="noopener noreferrer">bumped immutable from 5.0.2 to 5.1.5 (#2135)</a></li>
</ul>
</li>
<li>
<p>@shunichironomura:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2133" target="_blank" rel="noopener noreferrer">fixed typo in <code>--experimental-options</code> in NuShell 0.111.0 release blog (#2133)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2132" target="_blank" rel="noopener noreferrer">added missing toc jumps (#2132)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2130" target="_blank" rel="noopener noreferrer">added release notes for <code>v0.111.0</code> (#2130)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2129" target="_blank" rel="noopener noreferrer">added components to simplify release changelogs (#2129)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2128" target="_blank" rel="noopener noreferrer">caught up with February TWiN (#2128)</a></li>
</ul>
</li>
<li>
<p>@LikeLakers2:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2127" target="_blank" rel="noopener noreferrer">flattened JSON files in <code>/cookbook/http.md</code> (#2127)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2126" target="_blank" rel="noopener noreferrer">refreshed command docs for 0.111 (#2126)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>
<p>@punund:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/161" target="_blank" rel="noopener noreferrer">added nu_plugin_ccl and nu_plugin_mime_message (#161)</a></li>
</ul>
</li>
<li>
<p>@freepicheep:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/160" target="_blank" rel="noopener noreferrer">added nu-salesforce and nu-quickbooks modules (#160)</a></li>
<li><a href="https://github.com/nushell/awesome-nu/pull/159" target="_blank" rel="noopener noreferrer">sorted projects alphabetically (#159)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@blindFS:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/244" target="_blank" rel="noopener noreferrer">fixed assignment as pipeline element (#244)</a></li>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/243" target="_blank" rel="noopener noreferrer">added finally clause in ctrl_try (#243)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@cptpiepmatz:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1030" target="_blank" rel="noopener noreferrer">prepared release 0.46.0 (#1030)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1230" target="_blank" rel="noopener noreferrer">ensured <code>make_release/bump_version.nu</code> updates winresource metadata (#1230)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1229" target="_blank" rel="noopener noreferrer">updated release process and notes generation (#1229)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1227" target="_blank" rel="noopener noreferrer">fixed some release notes generation issues (#1227)</a></li>
</ul>
</li>
<li>
<p>@zifengb:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1228" target="_blank" rel="noopener noreferrer">added Claude Code CLI command completion (#1228)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1203" target="_blank" rel="noopener noreferrer">updated make_release instructions and corrected commands (#1203)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1201" target="_blank" rel="noopener noreferrer">added blank lines around headings in generated release notes (#1201)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.111.0</title>
      <link>https://www.nushell.sh/blog/2026-02-28-nushell_v0_111_0.html</link>
      <guid>https://www.nushell.sh/blog/2026-02-28-nushell_v0_111_0.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.111.0</source>
      <description>Nushell 0.111.0
Today, we&amp;apos;re releasing version 0.111.0 of Nu. This release adds smoother select menus, command group aliasing so you can type less, proper finally support that r...</description>
      <content:encoded><![CDATA[
<p>Today, we're releasing version 0.111.0 of Nu. This release adds smoother select menus, command group aliasing so you can type less, proper <code>finally</code> support that really always runs, <code>let</code> right inside pipelines, and an experimental native clipboard that talks straight to your OS.</p>
<h1>Where to get it</h1>
<p>Nu 0.111.0 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.111.0" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #340</title>
      <link>https://www.nushell.sh/blog/2026-02-27-twin0340.html</link>
      <guid>https://www.nushell.sh/blog/2026-02-27-twin0340.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #340</source>
      <description>This Week in Nushell #340
Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-20 through Thursday, 2026-02-26.
Nushell


@hustcer:

Increased help indention to fi...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-20 through Thursday, 2026-02-26.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17659" target="_blank" rel="noopener noreferrer">Increased help indention to fix the docs build error (#17659)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17655" target="_blank" rel="noopener noreferrer">Updated <code>entry</code> to <code>repl_entry</code> for better understanding (#17655)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17654" target="_blank" rel="noopener noreferrer">Updated nushell to latest reedline commit 4ad0d0cb (#17654)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17653" target="_blank" rel="noopener noreferrer">Normalized slashes for <code>which</code> output (#17653)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17643" target="_blank" rel="noopener noreferrer">Allowed <code>which</code> to show where the file resides (#17643)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17639" target="_blank" rel="noopener noreferrer">Added more standardization to command arguments (#17639)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17635" target="_blank" rel="noopener noreferrer">Allowed <code>view source</code> to store file location in metadata (#17635)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17627" target="_blank" rel="noopener noreferrer">Fixed <code>detect columns</code> panic with unicode chars (#17627)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17610" target="_blank" rel="noopener noreferrer">Added custom subcommand help (#17610)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17596" target="_blank" rel="noopener noreferrer">Fixed <code>let</code> and ensured glob variables expand correctly in runtime and tests (#17596)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17645" target="_blank" rel="noopener noreferrer">Fixed <code>history | last 10</code> being in descending order (#17645)</a></li>
</ul>
</li>
<li>
<p>@pickx:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17637" target="_blank" rel="noopener noreferrer">Fixed view span to allow zero-length spans and reject out-of-bounds spans (#17637)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17626" target="_blank" rel="noopener noreferrer">Fixed compilation on targets other than linux, windows and macos (#17626)</a></li>
</ul>
</li>
<li>
<p>@fmotalleb:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17624" target="_blank" rel="noopener noreferrer">Fixed android builds (#17624)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17619" target="_blank" rel="noopener noreferrer">Fixed android builds failing with arboard clipboard (#17619)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17616" target="_blank" rel="noopener noreferrer">Added <code>clip</code> config (#17616)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17572" target="_blank" rel="noopener noreferrer">Added native clipboard support using arboard (#17572)</a></li>
</ul>
</li>
<li>
<p>@Bahex:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17617" target="_blank" rel="noopener noreferrer">Refactored par-each to reduce object churn by reusing closures (#17617)</a></li>
</ul>
</li>
<li>
<p>@amaanq:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17613" target="_blank" rel="noopener noreferrer">Fixed using <code>writeln!</code> instead of <code>format!</code> and <code>write_all</code> (#17613)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17606" target="_blank" rel="noopener noreferrer">Fixed replacing eprintln! with writeln! in error reporting to prevent double-panic (#17606)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17580" target="_blank" rel="noopener noreferrer">Fixed ls to escape control characters in filenames to prevent terminal corruption (#17580)</a></li>
</ul>
</li>
<li>
<p>@veeceey:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17607" target="_blank" rel="noopener noreferrer">Stripped ANSI escape codes from custom completion values (#17607)</a></li>
</ul>
</li>
<li>
<p>@teddygood:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17600" target="_blank" rel="noopener noreferrer">Fixed ParseOption handling in from ini (#17600)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17598" target="_blank" rel="noopener noreferrer">Added cellpath completion fallback to type based when value is unknown (#17598)</a></li>
</ul>
</li>
<li>
<p>@astral-l:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17595" target="_blank" rel="noopener noreferrer">Added <code>--timeout</code> flag to <code>input listen</code> (#17595)</a></li>
</ul>
</li>
<li>
<p>@132ikl:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17579" target="_blank" rel="noopener noreferrer">Made <code>collect</code> a keyword command and checked pipefail on <code>Instruction::Collect</code> (#17579)</a></li>
</ul>
</li>
<li>
<p>@monigarr:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17546" target="_blank" rel="noopener noreferrer">Added PR 10 (of 10) Issue 5066 help text nu command network system viewers (#17546)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17585" target="_blank" rel="noopener noreferrer">Bumped rmcp from 0.14.0 to 0.16.0 (#17585)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17584" target="_blank" rel="noopener noreferrer">Bumped quickcheck from 1.0.3 to 1.1.0 (#17584)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@gbrls:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1226" target="_blank" rel="noopener noreferrer">Improved zig build completion (#1226)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2125" target="_blank" rel="noopener noreferrer">Bumped rollup from 4.53.3 to 4.59.0 (#2125)</a></li>
</ul>
</li>
<li>
<p>@c-git:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2123" target="_blank" rel="noopener noreferrer">Fixed minor typos in string manipulation section (#2123)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>
<p>@SuaveIV:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/157" target="_blank" rel="noopener noreferrer">Added gh_status.nu - GitHub service health checker (#157)</a></li>
<li><a href="https://github.com/nushell/awesome-nu/pull/156" target="_blank" rel="noopener noreferrer">Added nu_script_hnews and tightened wttr.in entry (#156)</a></li>
</ul>
</li>
<li>
<p>@galuszkak:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/155" target="_blank" rel="noopener noreferrer">Added nu_plugin_bigquery to README.md &amp; config.yaml (#155)</a></li>
</ul>
</li>
<li>
<p>@fnuttens:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/154" target="_blank" rel="noopener noreferrer">Added vouch script link to README (#154)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@Juhan280:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1025" target="_blank" rel="noopener noreferrer">Added dedicated events for buffer jumps while preserving selection via EditCommands (#1025)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #339</title>
      <link>https://www.nushell.sh/blog/2026-02-20-twin0339.html</link>
      <guid>https://www.nushell.sh/blog/2026-02-20-twin0339.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #339</source>
      <description>This Week in Nushell #339
Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-13 through Thursday, 2026-02-19.
Nushell


@Juhan280:

feat(table): made record rend...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-13 through Thursday, 2026-02-19.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17602" target="_blank" rel="noopener noreferrer">feat(table): made record render also respect path_columns metadata (#17602)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17564" target="_blank" rel="noopener noreferrer">feat(nu-command): added <code>--keep-last</code> flag for <code>uniq-by</code> command (#17564)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17562" target="_blank" rel="noopener noreferrer">refactor: deprecated datasource-ls in favor of path-columns (#17562)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17560" target="_blank" rel="noopener noreferrer">feat(commands): added path_columns metadata for <code>du</code> command (#17560)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17594" target="_blank" rel="noopener noreferrer">fixed <code>is-empty</code> / <code>is-not-empty</code> on <code>Empty</code> Pipelines (#17594)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17593" target="_blank" rel="noopener noreferrer">made <code>sys host</code> and <code>uname</code> const commands (#17593)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17578" target="_blank" rel="noopener noreferrer">updated nushell to latest reedline cefb611 (#17578)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17577" target="_blank" rel="noopener noreferrer">added user <code>id</code> to <code>sys users</code> (#17577)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17563" target="_blank" rel="noopener noreferrer">updated how <code>$NU_LIB_DIRS</code> / <code>$env.NU_LIB_DIRS</code> is handled at startup time (#17563)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17558" target="_blank" rel="noopener noreferrer">abstracted env var names so they're insensitive on windows and sensitive on other operating systems (#17558)</a></li>
</ul>
</li>
<li>
<p>@astral-l:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17589" target="_blank" rel="noopener noreferrer">used RFC 3339 formatting for displaying dates with year &gt; 9999 (#17589)</a></li>
</ul>
</li>
<li>
<p>@amaanq:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17581" target="_blank" rel="noopener noreferrer">fixed: used write_all instead of eprintln! to avoid double-panic on stderr teardown (#17581)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17571" target="_blank" rel="noopener noreferrer">pipefail: fixed freeze when assigning a large result of an external command to a variable (#17571)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17568" target="_blank" rel="noopener noreferrer">attempted to fix "TLS required, but transport is unsecured" error (#17568)</a></li>
</ul>
</li>
<li>
<p>@it-education-md:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17525" target="_blank" rel="noopener noreferrer">fixed pipeline <code>let</code> builtin var validation (#17525)</a></li>
</ul>
</li>
<li>
<p>@cablehead:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17507" target="_blank" rel="noopener noreferrer">allowed Ctrl+C to interrupt HTTP requests (#17507)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17587" target="_blank" rel="noopener noreferrer">built(deps): bumped uuid from 1.20.0 to 1.21.0 (#17587)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17582" target="_blank" rel="noopener noreferrer">built(deps): bumped crate-ci/typos from 1.43.4 to 1.43.5 (#17582)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@kevmoo:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1225" target="_blank" rel="noopener noreferrer">stopped parsing Dart and Flutter command output at runtime (#1225)</a></li>
</ul>
</li>
<li>
<p>@gbrls:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1224" target="_blank" rel="noopener noreferrer">added zig and zvm completions (#1224)</a></li>
</ul>
</li>
<li>
<p>@LostExcalibur:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1223" target="_blank" rel="noopener noreferrer">added support for blocks that define more than one Host in ssh-completion (#1223)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@c-git:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2122" target="_blank" rel="noopener noreferrer">fixed typo in Nushell features section (#2122)</a></li>
</ul>
</li>
<li>
<p>@elviejo79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2121" target="_blank" rel="noopener noreferrer">made the parser error explicit (#2121)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@SuaveIV:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/153" target="_blank" rel="noopener noreferrer">added nu_script_wttr weather fetcher link (#153)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@eitsupi:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1023" target="_blank" rel="noopener noreferrer">fixed: used LF instead of CRLF in insert_newline on Windows (#1023)</a></li>
</ul>
</li>
</ul>
<h2>VSCode Extension</h2>
<ul>
<li>@PiotrTrzpil:
<ul>
<li><a href="https://github.com/nushell/vscode-nushell-lang/pull/228" target="_blank" rel="noopener noreferrer">fixed: corrected TextMate scopes for keywords vs identifiers (#228)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #338</title>
      <link>https://www.nushell.sh/blog/2026-02-13-twin0338.html</link>
      <guid>https://www.nushell.sh/blog/2026-02-13-twin0338.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #338</source>
      <description>This Week in Nushell #338
Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-06 through Thursday, 2026-02-12.
Nushell


@fdncred:

cleaned up ansi command pr.md ...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-02-27, including PRs merged Friday, 2026-02-06 through Thursday, 2026-02-12.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17555" target="_blank" rel="noopener noreferrer">cleaned up ansi command pr.md (#17555)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17533" target="_blank" rel="noopener noreferrer">added <code>nu</code> to the ignore_list for <code>:try</code> in <code>explore</code> (#17533)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17532" target="_blank" rel="noopener noreferrer">disabled auto tail and tracked previous row count in push_layer in explore (#17532)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17516" target="_blank" rel="noopener noreferrer">updated to latest reedline commit bdcc842 (#17516)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17514" target="_blank" rel="noopener noreferrer">updated structured ansi to support attr names and codes (#17514)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17511" target="_blank" rel="noopener noreferrer">updated nushell to reedline to 4c16687 (#17511)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17446" target="_blank" rel="noopener noreferrer">made <code>let</code> pass-thru in mid pipeline, output no values when assigned at beginning of the pipeline, output values at the end of the pipeline (#17446)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17553" target="_blank" rel="noopener noreferrer">fixed block duplication for aliased ones only in <code>replace_in_variable</code> (#17553)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17551" target="_blank" rel="noopener noreferrer">updated uu libs to 0.6.0 (#17551)</a></li>
</ul>
</li>
<li>
<p>@jlcrochet:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17550" target="_blank" rel="noopener noreferrer">removed <code>$env.config.input_list</code> from <code>input list</code> (#17550)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17549" target="_blank" rel="noopener noreferrer">aligned --tmpdir behavior in <code>mktemp</code> with coreutils/uutils (#17549)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17540" target="_blank" rel="noopener noreferrer">added <code>path_columns</code> to PipelineMetadata for flexible path rendering (#17540)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17508" target="_blank" rel="noopener noreferrer">added linewise and non-blank start edit commands (#17508)</a></li>
</ul>
</li>
<li>
<p>@evolvomind:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17547" target="_blank" rel="noopener noreferrer">fixed variable expansion inconsistency in path arguments for commands using GlobPattern (#17547)</a></li>
</ul>
</li>
<li>
<p>@monigarr:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17545" target="_blank" rel="noopener noreferrer">improved strings command help text (PR 9 of 10) (#17545)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17544" target="_blank" rel="noopener noreferrer">improved math random help text (PR 8 of 10) (#17544)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17528" target="_blank" rel="noopener noreferrer">improved help text for filesystem, path, and platform commands (PR 7 of 10) (#17528)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17523" target="_blank" rel="noopener noreferrer">improved help text for bytes, conversions, database, and date commands (#17523)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17522" target="_blank" rel="noopener noreferrer">improved help text for format commands (PR 4 of 10) (#17522)</a></li>
</ul>
</li>
<li>
<p>@maxim-uvarov:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17539" target="_blank" rel="noopener noreferrer">avoided panic in replace_in_variable for permanent blocks (#17539)</a></li>
</ul>
</li>
<li>
<p>@cablehead:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17537" target="_blank" rel="noopener noreferrer">deprecated <code>metadata set --merge</code> in favor of closure form (#17537)</a></li>
</ul>
</li>
<li>
<p>@InnocentZero:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17526" target="_blank" rel="noopener noreferrer">added skip columns functionality (#17526)</a></li>
</ul>
</li>
<li>
<p>@cuiweixie:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17521" target="_blank" rel="noopener noreferrer">fixed median calculation to use sorted len (#17521)</a></li>
</ul>
</li>
<li>
<p>@weirdan:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17519" target="_blank" rel="noopener noreferrer">fixed poll/pool typo for <code>http pool</code> (#17519)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17517" target="_blank" rel="noopener noreferrer">upgraded interprocess to 2.3.1 (#17517)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17506" target="_blank" rel="noopener noreferrer">pinned libc and interprocess to fix cross-platform build failures (#17506)</a></li>
</ul>
</li>
<li>
<p>@BluewyDiamond:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17509" target="_blank" rel="noopener noreferrer">made <code>rm</code> behavior consistent with <code>mv</code>, <code>du</code>, and <code>cp</code> (#17509)</a></li>
</ul>
</li>
<li>
<p>@stuartcarnie:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17491" target="_blank" rel="noopener noreferrer">enabled OSC133 click events via reedline (#17491)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17541" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.43.1 to 1.43.4 (#17541)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17495" target="_blank" rel="noopener noreferrer">bumped git2 from 0.20.0 to 0.20.4 (#17495)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@Zaubentrucker:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1222" target="_blank" rel="noopener noreferrer">fixed conda activate for conda&gt;=25.11 (#1222)</a></li>
</ul>
</li>
<li>
<p>@kevmoo:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1221" target="_blank" rel="noopener noreferrer">added alias completion to git-completion (#1221)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1219" target="_blank" rel="noopener noreferrer">added correct completion for <code>git checkout -b</code> and <code>git switch -c</code> (#1219)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1218" target="_blank" rel="noopener noreferrer">updated dart-completion to support completing scripts with <code>dart</code> command (#1218)</a></li>
</ul>
</li>
<li>
<p>@fredrik-stock:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1220" target="_blank" rel="noopener noreferrer">improved fnm module with better error handling, user configuration, and missing version workflow (#1220)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1217" target="_blank" rel="noopener noreferrer">allowed globs in bat-completions (#1217)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@weirdan:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2120" target="_blank" rel="noopener noreferrer">fixed <code>buffer_editor</code> example for <code>code</code> (#2120)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1024" target="_blank" rel="noopener noreferrer">reverted osc133;P to osc133;A (#1024)</a></li>
</ul>
</li>
<li>
<p>@Juhan280:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1022" target="_blank" rel="noopener noreferrer">added keybindings for moving to start and end of buffer (#1022)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/953" target="_blank" rel="noopener noreferrer">added gg/G motions and fixed ^ motion behavior in vi-mode (#953)</a></li>
</ul>
</li>
<li>
<p>@eitsupi:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1015" target="_blank" rel="noopener noreferrer">added idle_callback feature to set callback while waiting for input (#1015)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1011" target="_blank" rel="noopener noreferrer">exported HistoryItemExtraInfo etc. (#1011)</a></li>
</ul>
</li>
<li>
<p>@NiltonVolpato:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1014" target="_blank" rel="noopener noreferrer">added <code>libc</code> feature to enable crossterm's libc backend (#1014)</a></li>
</ul>
</li>
<li>
<p>@schlich:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/963" target="_blank" rel="noopener noreferrer">improved CONTRIBUTING.md to more closely match CI execution (#963)</a></li>
</ul>
</li>
</ul>
<h2>New nu-parser</h2>
<ul>
<li>
<p>@InnocentZero:</p>
<ul>
<li><a href="https://github.com/nushell/new-nu-parser/pull/66" target="_blank" rel="noopener noreferrer">added benchmark tests (#66)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/new-nu-parser/pull/65" target="_blank" rel="noopener noreferrer">added support for <code>try</code> expression and <code>extern</code> statements (#65)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #337</title>
      <link>https://www.nushell.sh/blog/2026-02-06-twin0337.html</link>
      <guid>https://www.nushell.sh/blog/2026-02-06-twin0337.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #337</source>
      <description>This Week in Nushell #337
Published Friday, 2026-02-27, including PRs merged Friday, 2026-01-30 through Thursday, 2026-02-05.
Nushell


@WindSoilder:

updated dependencies (#174...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-02-27, including PRs merged Friday, 2026-01-30 through Thursday, 2026-02-05.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17497" target="_blank" rel="noopener noreferrer">updated dependencies (#17497)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17451" target="_blank" rel="noopener noreferrer">fixed try..finally to ensure finally block runs even if <code>exit</code> is used inside <code>try</code> (#17451)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17449" target="_blank" rel="noopener noreferrer">enabled pipefail by default (#17449)</a></li>
</ul>
</li>
<li>
<p>@monigarr:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17494" target="_blank" rel="noopener noreferrer">improved help text for nu command filters (5066 help text pr3) (#17494)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17490" target="_blank" rel="noopener noreferrer">improved help text in nu-cmd-extra (Issue 5066) (#17490)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17489" target="_blank" rel="noopener noreferrer">improved help text in nu-cmd-lang (core commands) (#17489)</a></li>
</ul>
</li>
<li>
<p>@moooooji:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17492" target="_blank" rel="noopener noreferrer">removed unreachable short-flag empty-group check (#17492)</a></li>
</ul>
</li>
<li>
<p>@fennewald:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17471" target="_blank" rel="noopener noreferrer">made Umask detection threadsafe (#17471)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17468" target="_blank" rel="noopener noreferrer">added OSC 133 P (k=) markers for semantic prompts (#17468)</a></li>
</ul>
</li>
<li>
<p>@smartcoder0777:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17462" target="_blank" rel="noopener noreferrer">fixed format filesize to respect .config.float_precision (#17462)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17460" target="_blank" rel="noopener noreferrer">mentioned 'retain' in select/reject help (#17460)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17400" target="_blank" rel="noopener noreferrer">prefilled input --reedline buffer from --default (#17400)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17459" target="_blank" rel="noopener noreferrer">updated formats mod.nu (#17459)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17456" target="_blank" rel="noopener noreferrer">fixed bugs and keybindings in <code>explore regex</code> (#17456)</a></li>
</ul>
</li>
<li>
<p>@maxim-uvarov:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17458" target="_blank" rel="noopener noreferrer">applied TLS certificate verification to connection pool (#17458)</a></li>
</ul>
</li>
<li>
<p>@Ady0333:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17362" target="_blank" rel="noopener noreferrer">allowed .ps1 files in command completion on Windows (#17362)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17161" target="_blank" rel="noopener noreferrer">added HTTP streaming transport and cancellation support to mcp (#17161)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17483" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.42.3 to 1.43.1 (#17483)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@kevmoo:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1215" target="_blank" rel="noopener noreferrer">fixed Dart and Flutter commands (#1215)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1214" target="_blank" rel="noopener noreferrer">added contribution docs (#1214)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1213" target="_blank" rel="noopener noreferrer">fixed git-completion (#1213)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2119" target="_blank" rel="noopener noreferrer">published TWiN 335 and 336 (#2119)</a></li>
</ul>
</li>
<li>
<p>@0x4D5352:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2118" target="_blank" rel="noopener noreferrer">added attributes documentation for custom commands (#2118)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/152" target="_blank" rel="noopener noreferrer">updated config.yaml (#152)</a></li>
</ul>
</li>
<li>
<p>@Chailotl:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/151" target="_blank" rel="noopener noreferrer">added nu_plugin_input_global_listen to README.md (#151)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@stuartcarnie:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1021" target="_blank" rel="noopener noreferrer">extracted shared layout computation from painter (#1021)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/1020" target="_blank" rel="noopener noreferrer">added OSC 133 click_events support (#1020)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1019" target="_blank" rel="noopener noreferrer">added native semantic prompt support for OSC 133/633 (#1019)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/84" target="_blank" rel="noopener noreferrer">updated dependencies (#84)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/83" target="_blank" rel="noopener noreferrer">fixed issue 82 (#83)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/80" target="_blank" rel="noopener noreferrer">preserved inline param comment formatting (#80)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/79" target="_blank" rel="noopener noreferrer">updated nufmt deps (#79)</a></li>
<li><a href="https://github.com/nushell/nufmt/pull/78" target="_blank" rel="noopener noreferrer">fixed double parens issue (#78)</a></li>
</ul>
</li>
</ul>
<h2>Integrations</h2>
<ul>
<li>@hustcer:
<ul>
<li><a href="https://github.com/nushell/integrations/pull/75" target="_blank" rel="noopener noreferrer">used try-catch to handle winget uninstall errors (#75)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #336</title>
      <link>https://www.nushell.sh/blog/2026-01-30-twin0336.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-30-twin0336.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #336</source>
      <description>This Week in Nushell #336
Published Wednesday, 2026-02-04, including PRs merged Friday, 2026-01-23 through Thursday, 2026-01-29.
Nushell


@fdncred:

fixed cargo semver-checks w...</description>
      <content:encoded><![CDATA[
<p>Published Wednesday, 2026-02-04, including PRs merged Friday, 2026-01-23 through Thursday, 2026-01-29.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17457" target="_blank" rel="noopener noreferrer">fixed <code>cargo semver-checks</code> with <code>history</code> (#17457)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17453" target="_blank" rel="noopener noreferrer">added more rules to agents.md (#17453)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17452" target="_blank" rel="noopener noreferrer">deserialized spans in <code>ast --json</code> command (#17452)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17430" target="_blank" rel="noopener noreferrer">updated to ratatui 0.30 (#17430)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17423" target="_blank" rel="noopener noreferrer">updated <code>view source</code> to show flags on custom commands (#17423)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17415" target="_blank" rel="noopener noreferrer">added special handling for sqlite dbs with <code>last</code>, <code>first</code>, <code>select</code>, <code>length</code> (#17415)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17405" target="_blank" rel="noopener noreferrer">refactored cli lexopt (#17405)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17443" target="_blank" rel="noopener noreferrer">bumped shadow-rs from 1.6.0 to 1.7.0 (#17443)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17442" target="_blank" rel="noopener noreferrer">bumped sysinfo from 0.37.2 to 0.38.0 (#17442)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17440" target="_blank" rel="noopener noreferrer">bumped uuid from 1.19.0 to 1.20.0 (#17440)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17439" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.42.1 to 1.42.3 (#17439)</a></li>
</ul>
</li>
<li>
<p>@ChrisDenton:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17437" target="_blank" rel="noopener noreferrer">fixed old plugin file migration (#17437)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17412" target="_blank" rel="noopener noreferrer">replaced more <code>canonicalize</code> with <code>absolute</code> (#17412)</a></li>
</ul>
</li>
<li>
<p>@pyz4:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17436" target="_blank" rel="noopener noreferrer">added join on advanced column expressions to polars (#17436)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17435" target="_blank" rel="noopener noreferrer">added <code>nulls-equal</code> argument to <code>polars join</code> (#17435)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17426" target="_blank" rel="noopener noreferrer">updated assert_cmd to 2.1.1 (#17426)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17397" target="_blank" rel="noopener noreferrer">added support for <code>try {} finally {}</code> (#17397)</a></li>
</ul>
</li>
<li>
<p>@sgvictorino:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17417" target="_blank" rel="noopener noreferrer">updated eml-parser to 0.1.5 (#17417)</a></li>
</ul>
</li>
<li>
<p>@benblank:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17386" target="_blank" rel="noopener noreferrer">added a <code>umask</code> command (#17386)</a></li>
</ul>
</li>
<li>
<p>@astral-l:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17332" target="_blank" rel="noopener noreferrer">fixed std repeat returning empty list on null input (#17332)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17330" target="_blank" rel="noopener noreferrer">allowed custom/external completers to override display value (#17330)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17323" target="_blank" rel="noopener noreferrer">added <code>Type::Any</code> to input type for error_make (#17323)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@adevore:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/150" target="_blank" rel="noopener noreferrer">added nu_plugin_ldap (#150)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@flinesse:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2117" target="_blank" rel="noopener noreferrer">fixed and clarified explanation of semicolon behavior in pipelines (#2117)</a></li>
</ul>
</li>
<li>
<p>@Kissaki:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2116" target="_blank" rel="noopener noreferrer">improved code blocks with common format and output (#2116)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2115" target="_blank" rel="noopener noreferrer">removed duplicate windows ls change listing (#2115)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2114" target="_blank" rel="noopener noreferrer">fixed typo in <code>rm</code> behavior change description (#2114)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2113" target="_blank" rel="noopener noreferrer">fixed match and guard 'arms' typo (#2113)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2112" target="_blank" rel="noopener noreferrer">fixed <code>unlet</code> example code in 0.110.0 release notes (#2112)</a></li>
</ul>
</li>
<li>
<p>@james-smith-za:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2101" target="_blank" rel="noopener noreferrer">documented deprecation of $env.NU_LIB_DIRS (#2101)</a></li>
</ul>
</li>
<li>
<p>@Noah765:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2099" target="_blank" rel="noopener noreferrer">updated carapace example to use $env.CARAPACE_LENIENT (#2099)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@Kissaki:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1211" target="_blank" rel="noopener noreferrer">documented WolframAlpha API wrapper AppId requirement (#1211)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1210" target="_blank" rel="noopener noreferrer">added winget pin custom completions (#1210)</a></li>
</ul>
</li>
<li>
<p>@kevmoo:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1209" target="_blank" rel="noopener noreferrer">added completion for <code>branch -D</code> to git (#1209)</a></li>
</ul>
</li>
<li>
<p>@PeterhrCZ:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1207" target="_blank" rel="noopener noreferrer">fixed from-env format to work with nushell version &gt; 109.1 (#1206) (#1207)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@blindFS:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/241" target="_blank" rel="noopener noreferrer">added new let syntax (#241)</a></li>
</ul>
</li>
</ul>
<h2>VSCode Extension</h2>
<ul>
<li>@Paul-16098:
<ul>
<li><a href="https://github.com/nushell/vscode-nushell-lang/pull/227" target="_blank" rel="noopener noreferrer">added <code>&lt;&gt;</code> to <code>autoClosingPairs</code> (#227)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1002" target="_blank" rel="noopener noreferrer">allowed overriding suggestion display value (#1002)</a></li>
</ul>
</li>
</ul>
<h2>NUPM</h2>
<ul>
<li>@TianyangGuo:
<ul>
<li><a href="https://github.com/nushell/nupm/pull/127" target="_blank" rel="noopener noreferrer">replaced deprecated $nu.temp-path with $nu.temp-dir (#127)</a></li>
</ul>
</li>
</ul>
<div class="language-" data-highlighter="shiki" data-ext="" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-"><span class="line"><span></span></span></code></pre>
</div>]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #335</title>
      <link>https://www.nushell.sh/blog/2026-01-23-twin0335.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-23-twin0335.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #335</source>
      <description>This Week in Nushell #335
Published Wednesday, 2026-02-04, including PRs merged Friday, 2026-01-16 through Thursday, 2026-01-22.
Nushell


@cablehead:

added content-type metada...</description>
      <content:encoded><![CDATA[
<p>Published Wednesday, 2026-02-04, including PRs merged Friday, 2026-01-16 through Thursday, 2026-01-22.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@cablehead:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17398" target="_blank" rel="noopener noreferrer">added content-type metadata for ndjson, jsonl, ndnuon in std/formats (#17398)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17396" target="_blank" rel="noopener noreferrer">added short params to join (#17396)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17395" target="_blank" rel="noopener noreferrer">bumped Rust toolchain to 1.91.1 (#17395)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17384" target="_blank" rel="noopener noreferrer">added <code>explore regex</code> help popup (#17384)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17383" target="_blank" rel="noopener noreferrer">removed unlet vars from completions (#17383)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17382" target="_blank" rel="noopener noreferrer">updated <code>explore regex</code> to use <code>AltGr</code> keys (#17382)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17368" target="_blank" rel="noopener noreferrer">updated UseAnsiColoring with TERM=dumb (#17368)</a></li>
</ul>
</li>
<li>
<p>@smartcoder0777:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17393" target="_blank" rel="noopener noreferrer">added --prefix/--suffix to join to disambiguate columns (#17393)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17392" target="_blank" rel="noopener noreferrer">bumped rmcp lib from 0.8 to 0.13 (#17392)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17377" target="_blank" rel="noopener noreferrer">added <code>polars entropy</code> (#17377)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17365" target="_blank" rel="noopener noreferrer">fixed help to display aliased command when calling <code>help &lt;alias&gt;</code> (#17365)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17359" target="_blank" rel="noopener noreferrer">allowed aliasing to work on sub commands (#17359)</a></li>
</ul>
</li>
<li>
<p>@kaathewisegit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17381" target="_blank" rel="noopener noreferrer">made <code>it</code> a reserved variable name (#17381)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17370" target="_blank" rel="noopener noreferrer">bumped to dev version 0.110.1 (#17370)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17367" target="_blank" rel="noopener noreferrer">bumped to 0.110.0 for release (#17367)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17366" target="_blank" rel="noopener noreferrer">pinned reedline to 0.45 for 0.110 release (#17366)</a></li>
</ul>
</li>
<li>
<p>@ChrisDenton:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17369" target="_blank" rel="noopener noreferrer">stopped canonicalizing config path (#17369)</a></li>
</ul>
</li>
<li>
<p>@hovancik:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17178" target="_blank" rel="noopener noreferrer">updated closures-related tutors (#17178)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17391" target="_blank" rel="noopener noreferrer">bumped lsp-textdocument from 0.4.2 to 0.5.0 (#17391)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17390" target="_blank" rel="noopener noreferrer">bumped shadow-rs from 1.5.0 to 1.6.0 (#17390)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17388" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.42.0 to 1.42.1 (#17388)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17347" target="_blank" rel="noopener noreferrer">bumped quick-xml from 0.38.3 to 0.39.0 (#17347)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17344" target="_blank" rel="noopener noreferrer">bumped data-encoding from 2.9.0 to 2.10.0 (#17344)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@sandyspiers:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2110" target="_blank" rel="noopener noreferrer">renamed <code>home-path</code> / <code>temp-path</code> to <code>home-dir</code> / <code>temp-dir</code> (#2110)</a></li>
</ul>
</li>
<li>
<p>@weirdan:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2109" target="_blank" rel="noopener noreferrer">added <code>error_style = nested</code> docs (#2109)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2108" target="_blank" rel="noopener noreferrer">published release notes for v0.110.0 (#2108)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2107" target="_blank" rel="noopener noreferrer">refreshed command docs for 0.110.0 (#2107)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2106" target="_blank" rel="noopener noreferrer">published TWiN 333 and 334 (#2106)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1012" target="_blank" rel="noopener noreferrer">bumped version for 0.45.0 release (#1012)</a></li>
</ul>
</li>
</ul>
<h2>New nu-parser</h2>
<ul>
<li>@WindSoilder:
<ul>
<li><a href="https://github.com/nushell/new-nu-parser/pull/63" target="_blank" rel="noopener noreferrer">added support for --env and --wrapped in def (#63)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.110.0</title>
      <link>https://www.nushell.sh/blog/2026-01-17-nushell_v0_110_0.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-17-nushell_v0_110_0.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.110.0</source>
      <description>Nushell 0.110.0
Today, we&amp;apos;re releasing version 0.110.0 of Nu. This release adds a let pipeline command, an unlet command, improvements to the Polars plugin, improvements to expl...</description>
      <content:encoded><![CDATA[
<p>Today, we're releasing version 0.110.0 of Nu. This release adds a <code>let</code> pipeline command, an <code>unlet</code> command, improvements to the Polars plugin, improvements to <code>explore</code>, and faster <code>ls</code> on Windows.</p>
<h1>Where to get it</h1>
<p>Nu 0.110.0 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.110.0" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

<ul>
<li><a href="#highlights-and-themes-of-this-release-toc"><em>Highlights and themes of this release</em></a>
<ul>
<li><a href="#let-can-be-used-in-pipelines-toc"><em><code>let</code> can be used in pipelines</em></a></li>
<li><a href="#destroying-variables-with-unlet-toc"><em>Destroying variables with <code>unlet</code></em></a></li>
<li><a href="#polars-plugin-supports-selectors-toc"><em>Polars plugin supports selectors</em></a></li>
<li><a href="#polars-plugin-supports-more-cloud-providers-toc"><em>Polars plugin supports more cloud providers</em></a>
<ul>
<li><a href="#azure-support-toc"><em>Azure support</em></a></li>
<li><a href="#google-cloud-support-toc"><em>Google Cloud support</em></a></li>
</ul>
</li>
<li><a href="#explore-regex-toc"><em><code>explore regex</code></em></a></li>
<li><a href="#new-explore-config-tui-toc"><em>New <code>explore config</code> TUI</em></a></li>
<li><a href="#faster-ls-on-windows-toc"><em>Faster <code>ls</code> on Windows</em></a></li>
<li><a href="#improvements-to-error-make-toc"><em>Improvements to <code>error make</code></em></a></li>
</ul>
</li>
<li><a href="#changes-toc"><em>Changes</em></a>
<ul>
<li><a href="#breaking-changes-toc"><em>Breaking changes</em></a>
<ul>
<li><a href="#renamed-nu-temp-path-and-nu-home-path-toc"><em>Renamed <code>$nu.temp-path</code> and <code>$nu.home-path</code></em></a></li>
<li><a href="#no-longer-matches-dotfiles-in-mv-cp-du-by-default-toc"><em><code>*</code> no longer matches dotfiles in mv/cp/du by default</em></a></li>
<li><a href="#use-labels-for-multiple-labels-in-error-make-toc"><em>Use <code>labels</code> for multiple labels in <code>error make</code></em></a></li>
<li><a href="#ide-menu-min-description-width-should-be-non-zero-toc"><em>IDE menu <code>min_description_width</code> should be non-zero</em></a></li>
<li><a href="#to-md-formats-lists-as-unordered-markdown-lists-toc"><em><code>to md</code> formats lists as unordered Markdown lists</em></a></li>
</ul>
</li>
<li><a href="#additions-toc"><em>Additions</em></a>
<ul>
<li><a href="#new-configuration-option-env-config-show-hints-toc"><em>New Configuration Option: <code>$env.config.show_hints</code></em></a></li>
<li><a href="#configuring-errors-toc"><em>Configuring errors</em></a></li>
<li><a href="#added-record-conversion-to-into-list-toc"><em>Added record conversion to <code>into list</code></em></a></li>
<li><a href="#include-mcp-server-support-by-default-toc"><em>Include MCP server support by default</em></a></li>
<li><a href="#connection-pool-for-http-commands-toc"><em>Connection pool for <code>http</code> commands</em></a></li>
<li><a href="#new-output-flag-for-timeit-toc"><em>New <code>--output</code> flag for <code>timeit</code></em></a></li>
<li><a href="#allow-disabling-filtering-in-custom-completions-toc"><em>Allow disabling filtering in custom completions</em></a></li>
<li><a href="#new-plugin-interface-get-block-ir-toc"><em>New plugin interface <code>get_block_ir</code></em></a></li>
<li><a href="#new-list-flag-to-control-list-formatting-in-to-md-toc"><em>New <code>--list</code> flag to control list formatting in <code>to md</code></em></a></li>
<li><a href="#add-icons-option-to-table-for-ls-tables-toc"><em>Add <code>--icons</code> option to table for <code>ls</code> tables</em></a></li>
<li><a href="#alias-definitions-shown-in-which-command-toc"><em>Alias definitions shown in <code>which</code> command</em></a></li>
<li><a href="#allow-serializing-as-raw-strings-in-to-nuon-toc"><em>Allow serializing as raw strings in <code>to nuon</code></em></a></li>
<li><a href="#other-additions-toc"><em>Other additions</em></a></li>
</ul>
</li>
<li><a href="#removals-toc"><em>Removals</em></a>
<ul>
<li><a href="#replace-deprecated-current-dir-usage-with-enginestate-cwd-in-multiple-files-toc"><em>Replace deprecated current_dir usage with EngineState::cwd in multiple files</em></a></li>
</ul>
</li>
<li><a href="#other-changes-toc"><em>Other changes</em></a>
<ul>
<li><a href="#update-explore-regex-command-to-look-more-helpful-and-professional-toc"><em>Update explore regex command to look more helpful and professional</em></a></li>
<li><a href="#more-descriptive-error-messages-for-rm-toc"><em>More descriptive error messages for <code>rm</code></em></a></li>
<li><a href="#some-nushell-commands-no-longer-canonicalize-paths-toc"><em>Some Nushell commands no longer canonicalize paths</em></a></li>
<li><a href="#add-repl-style-state-persistence-across-evaluations-for-mcp-server-toc"><em>Add REPL-style state persistence across evaluations for MCP server</em></a></li>
<li><a href="#use-structured-response-format-for-mcp-server-toc"><em>Use structured response format for MCP server</em></a></li>
<li><a href="#additional-changes-toc"><em>Additional changes</em></a></li>
</ul>
</li>
<li><a href="#bug-fixes-toc"><em>Bug fixes</em></a>
<ul>
<li><a href="#fixed-parsing-of-ranges-with-parentheses-toc"><em>Fixed parsing of ranges with parentheses</em></a></li>
<li><a href="#fixed-parsing-issue-with-multiarm-match-guard-toc"><em>Fixed parsing issue with multiarm match + guard</em></a></li>
<li><a href="#infinite-sequences-can-be-terminated-when-piped-to-other-commands-toc"><em>Infinite sequences can be terminated when piped to other commands</em></a></li>
<li><a href="#pipefail-works-with-try-block-toc"><em>Pipefail works with <code>try</code> block</em></a></li>
<li><a href="#nushell-exits-early-when-running-scripts-or-commands-with-bad-config-files-toc"><em>Nushell exits early when running scripts or commands with bad config files</em></a></li>
<li><a href="#fix-http-dns-resolution-service-not-supported-error-in-docker-containers-toc"><em>Fix <code>http</code> DNS resolution "Service not supported" error in Docker containers</em></a></li>
<li><a href="#fix-variables-remaining-active-after-overlay-hide-toc"><em>Fix variables remaining active after <code>overlay hide</code></em></a></li>
<li><a href="#other-fixes-toc"><em>Other fixes</em></a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#notes-for-plugin-developers-toc"><em>Notes for plugin developers</em></a></li>
<li><a href="#hall-of-fame-toc"><em>Hall of fame</em></a></li>
<li><a href="#full-changelog-toc"><em>Full changelog</em></a></li>
</ul>
<h1><a class="header-anchor" href="#highlights-and-themes-of-this-release-toc"><span>Highlights and themes of this release [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h2><a class="header-anchor" href="#let-can-be-used-in-pipelines-toc"><span><code>let</code> can be used in pipelines [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p>With <a href="https://github.com/nushell/nushell/pull/17247" target="_blank" rel="noopener noreferrer">#17247</a>, the <code>let</code> command is now allowed to be at the end of the pipeline when a variable name is also provided.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> get</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> name</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> let</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> files</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># Equivalent to the following:</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">let</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> files</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> ls</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> get</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> name</span></span></code></pre>
</div><h2><a class="header-anchor" href="#destroying-variables-with-unlet-toc"><span>Destroying variables with <code>unlet</code> [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p>To bring balance to the universe, <a href="https://github.com/nushell/nushell/pull/17270" target="_blank" rel="noopener noreferrer">#17270</a> introduces a new command <code>unlet</code> for deleting variables from memory.</p>
<div class="language-nu line-numbers-mode" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">let</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> a</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">let</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> b</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 2</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">let</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> c</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">let</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> d</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 4</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">$"(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$c</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$d</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)"</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; 1234</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">unlet</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $a</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $b</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $c</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $d</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">$"(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$c</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)(</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">$d</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">)"</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; Error: nu::shell::variable_not_found</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; </span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;   × Variable not found</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;    ╭─[entry #21:1:4]</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;  1 │ $"($a)($b)($c)($d)"</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;    ·    ─┬</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;    ·     ╰── variable not found</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt;    ╰────</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>Accompanying this is a new <code>mem_size</code> column in the output of the <code>scope variables</code> command for showing the size of each variable in memory (implemented in <a href="https://github.com/nushell/nushell/pull/17287" target="_blank" rel="noopener noreferrer">#17287</a>).</p>
<h2><a class="header-anchor" href="#polars-plugin-supports-selectors-toc"><span>Polars plugin supports selectors [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p><a href="https://github.com/nushell/nushell/pull/17296" target="_blank" rel="noopener noreferrer">#17296</a> introduces <a href="https://docs.pola.rs/api/python/stable/reference/selectors.html" target="_blank" rel="noopener noreferrer">Polars selector</a> support. This introduces the NuSelector type and adds following new commands.</p>
<ul>
<li><code>polars selector all</code> (plugin) - Creates a selector that selects all columns.</li>
<li><code>polars selector by-dtype</code> (plugin) - Creates a selector that selects columns by data type.</li>
<li><code>polars selector by-name</code> (plugin) - Creates a selector that selects columns by name.</li>
<li><code>polars selector first</code> (plugin) - Creates a selector that selects the first column(s) by index.</li>
<li><code>polars selector last</code> (plugin) - Creates a selector that selects the last column(s) by index.</li>
</ul>
<p>Selectors may be used with <code>polars select</code> and <code>polars with-column</code>.</p>
<h2><a class="header-anchor" href="#polars-plugin-supports-more-cloud-providers-toc"><span>Polars plugin supports more cloud providers [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#azure-support-toc"><span>Azure support [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17116" target="_blank" rel="noopener noreferrer">#17116</a> brings Azure blob storage support to the Polars plugin. The following environment variables are now supported:</p>
<ul>
<li><code>AZURE_STORAGE_ACCOUNT_NAME</code>: storage account name</li>
<li><code>AZURE_STORAGE_ACCOUNT_KEY</code>: storage account master key</li>
<li><code>AZURE_STORAGE_ACCESS_KEY</code>: alias for <code>AZURE_STORAGE_ACCOUNT_KEY</code></li>
<li><code>AZURE_STORAGE_CLIENT_ID</code>: client id for service principal authorization</li>
<li><code>AZURE_STORAGE_CLIENT_SECRET</code>: client secret for service principal authorization</li>
<li><code>AZURE_STORAGE_TENANT_ID</code>: tenant id used in oauth flows</li>
</ul>
<p>Example Usage:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.AZURE_STORAGE_ACCOUNT_KEY</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "&lt;your access key value&gt;"</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.AZURE_STORAGE_ACCOUNT_NAME</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "&lt;your account name&gt;"</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ps</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars into-df</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars save</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> azure://&lt;your</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> account</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> name&gt;/ps.parquet</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">polars open</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> azure://&lt;your</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> account</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> name&gt;/ps.parquet</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars first</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 5</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars collect</span></span></code></pre>
</div><h3><a class="header-anchor" href="#google-cloud-support-toc"><span>Google Cloud support [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17135" target="_blank" rel="noopener noreferrer">#17135</a> brings Google Cloud Storage support to the Polars plugin.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.GOOGLE_SERVICE_ACCOUNT</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "/path/to/service_account.json"</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.GOOGLE_BUCKET</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "your_bucket"</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ps</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars into-df</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars save</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> gs://nushell_testing/ps.parquet</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">polars open</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> gs://nushell_testing/ps.parquet</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars first</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 5</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> polars collect</span></span></code></pre>
</div><h2><a class="header-anchor" href="#explore-regex-toc"><span><code>explore regex</code> [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p><a href="https://github.com/nushell/nushell/pull/17187" target="_blank" rel="noopener noreferrer">#17187</a> adds a quick reference panel to <code>explore regex</code> so you won't have to remember every character class or anchor. Use F1 to trigger it and ESC to dismiss.</p>
<p><img src="https://github.com/user-attachments/assets/502a6566-715f-4ce0-b787-6012fc5b9942" alt="quick reference panel screenshot"></p>
<h2><a class="header-anchor" href="#new-explore-config-tui-toc"><span>New <code>explore config</code> TUI [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p><a href="https://github.com/nushell/nushell/pull/17147" target="_blank" rel="noopener noreferrer">#17147</a> introduces the <code>explore config</code> command, which launches a TUI allowing you to view and interactively modify your config.</p>
<p>Functionality:</p>
<ul>
<li>When launched with no parameters, it loads your config settings into a tree and editor to allow you to traverse, explore, and change settings.</li>
<li>When launched with the <code>--tree</code> parameter, it draws a tree view of your piped in input into the terminal</li>
<li>When launched with the <code>--use-example-data</code> parameter, it shows you a customized configuration (my config actually). May be removed later.</li>
<li>When JSON is piped into it e.g <code>'{"abc": 1, "xyz": 2}' | explore config --output foo.json</code> it allows you to explore and edit the JSON data and save it out to the provided filename.</li>
<li>When in "config mode" it shows you the nushell datatypes as you traverse the tree. When in "json" mode it shows you the json datatypes as you traverse the tree.</li>
<li>When in "config mode" it shows you a description of the config setting <em>assuming proper documentation in doc_config.nu</em>. This file will need to be updated a bit in a separate PR. If there is no documentation it shows you a warning triangle by the tree item.</li>
<li>As you make changes to your config, you can save those changes and they're immediately applied.</li>
<li>If you hit Enter on any node leaf, you immediately jump into editing that value. If you hit Enter on tree nodes, the tree expands or collapses.</li>
</ul>
<p>Below is a GIF showing off the TUI:</p>
<p><img src="https://github.com/user-attachments/assets/10f4407e-28a0-4aac-8baa-88f7b95229e2" alt="explore-config2"></p>
<p>Help</p>
<div class="language-nushell line-numbers-mode" data-highlighter="shiki" data-ext="nushell" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nushell"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">❯</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">help</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Launch</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> view</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> and</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> edit</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nushell</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> configuration</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> interactively.</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">By</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> default</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">opens</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> current</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nushell</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> configuration</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.config</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">) </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">in</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI.</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Changes</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> made</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> in</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> mode</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> are</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> applied</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> running</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> session</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> when</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> you</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> quit.</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">You</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> can</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> also</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> pipe</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> JSON</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> arbitrary</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> structures</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">or</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> use</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">--use-example-data</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> see</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> sample</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> configuration</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data.</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">TUI</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> Keybindings:</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Tab</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">           Switch</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> between</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> tree</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> and</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> editor</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> panes</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ↑↓</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">            Navigate</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> tree</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> /</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> scroll</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> editor</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ←→</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">            Collapse</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/Expand</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> tree</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nodes</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Enter</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/Space</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   Toggle</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> tree</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> node</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> expansion</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Enter</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/Space</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   On</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> leaf</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nodes</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">open</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> editor</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> pane</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Enter</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/e</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">       Start</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> editing</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">in</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> editor</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> pane</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Ctrl</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">+Enter</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">    Apply</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> edit</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Esc</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">           Cancel</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> edit</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Ctrl</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">+S</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">        Save/Apply</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> changes</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  q</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">             Quit</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">applies</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> changes</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> if</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> modified</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Ctrl</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">+C</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">        Force</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> quit</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> without</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> saving</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Usage</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span></span>
<span class="line"><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">  &gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">flags</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Flags</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  -h</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">--help:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> Display</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> help</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> message</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> for</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> this</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> command</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  -e</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">--use-example-data:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> Show</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nushell</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> configuration</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> using</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> example</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  -t</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">--tree:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> Do</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> not</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> show</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">just</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> show</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> tree</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> structure</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> of</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  -o</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">--output</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> &lt;string&gt;:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> Optional</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> output</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> file</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> save</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> changes</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">default</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> output.json</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Input</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/output</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> types:</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ╭─#─┬──input──┬─output─╮</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 0</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> nothing</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> string</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> string</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> string</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ╰───┴─────────┴────────╯</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Examples</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Open</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> the</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nushell</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> configuration</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> in</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> an</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> interactive</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> editor</span></span>
<span class="line"><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">  &gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> JSON</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> interactively</span></span>
<span class="line"><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">  &gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> open</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">raw</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data.json</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">  Explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> with</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> example</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> data</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> to</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> see</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> TUI</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> features</span></span>
<span class="line"><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">  &gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> explore</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">use-example-data</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2><a class="header-anchor" href="#faster-ls-on-windows-toc"><span>Faster <code>ls</code> on Windows [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p><a href="https://github.com/nushell/nushell/pull/17339" target="_blank" rel="noopener noreferrer">#17339</a> makes <code>ls</code> much faster on Windows by caching and not calling <code>metadata()</code> so frequently.</p>
<p>Before:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">❯</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> use</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> std/bench</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> *</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">❯</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bench</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> length</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } </span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic">--</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">rounds</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 10</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╭─#─┬────────────────code─────────────────┬──────────mean──────────┬──────────min───────────┬──────────max───────────┬───────std────────┬─ratio─╮</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 0</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> length</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 536ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 50µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 650ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 502ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 450µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 200ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 605ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 537µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 100ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 29ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 468µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 800ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1.01</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> }          </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 527ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 102µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 580ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 508ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 441µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 300ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1sec</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 556ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 144µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 800ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 17ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 852µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 739ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1.00</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╰─#─┴────────────────code─────────────────┴──────────mean──────────┴──────────min───────────┴──────────max───────────┴───────std────────┴─ratio─╯</span></span></code></pre>
</div><p>After:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">❯</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> use</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> std/bench</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> *</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">❯</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bench</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> length</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } </span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic">--</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">rounds</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 10</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╭─#─┬────────────────code─────────────────┬───────mean────────┬────────min────────┬────────max────────┬───────std───────┬─ratio─╮</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 0</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> length</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 171ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 623µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 760ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 167ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 632µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 400ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 182ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 443µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 100ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  4ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 263µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 43ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1.01</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">ls</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c:\windows\system32</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> }          </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 170ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 398µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 400ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 167ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 103µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 200ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 174ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 190µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 500ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 2ms</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 260µs</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 683ns</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1.00</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╰─#─┴────────────────code─────────────────┴───────mean────────┴────────min────────┴────────max────────┴───────std───────┴─ratio─╯</span></span></code></pre>
</div><h2><a class="header-anchor" href="#improvements-to-error-make-toc"><span>Improvements to <code>error make</code> [</span></a><a href="#table-of-contents">toc</a>]</h2>
<p><a href="https://github.com/nushell/nushell/pull/17070" target="_blank" rel="noopener noreferrer">#17070</a> introduced several improvements to <code>error make</code>.</p>
<h4>Creating errors more easily</h4>
<p><code>error make</code> can now be called without arguments:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> error make</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> originates</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> from</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> here</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #4:1:1]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> make</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> ──────────</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
</div><p>It can also be passed a single message in any of the following ways:</p>
<ul>
<li>Pipeline input: <code>{msg: foo} | error make</code></li>
<li>Record argument: <code>error make {msg: foo}</code></li>
<li>String argument: <code>error make foo</code></li>
</ul>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> foo</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #2:1:12]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> make</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> foo</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">            ──────────</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
</div><h4>Chaining errors together</h4>
<p><code>error make</code> already lets you created chained errors using <code>inner</code>, like so:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bar</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> inner:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [{</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> foo</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}]}</span></span></code></pre>
</div><p>Now, you can achieve the same effect by:</p>
<ul>
<li>Passing a message as pipeline input: <code>{msg: foo} | error make bar</code></li>
<li>Creating an error in a <code>catch</code> block: <code>try {error make foo} catch {error make bar}</code></li>
</ul>
<p>Here's how that second one looks:</p>
<div class="language-nu line-numbers-mode" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bar</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #1:1:29]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> try</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> foo</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">} </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">catch</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> bar</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">                             ──────────</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">Error:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> foo</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #1:1:6]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> try</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> foo</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">} </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">catch</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> bar</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">      ──────────</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4>Labels</h4>
<p>Labels can now be created without a <code>text</code> field, like this error that only has a <code>span</code>. The span is highlighted, but with an empty label:</p>
<div class="language-nu line-numbers-mode" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF"> def</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> f</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">x</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] {</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">  error make</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> here</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> label:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">span</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">metadata</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $x</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">.span</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}}</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">f</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> abcd</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> here</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #7:4:3]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> }</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 4</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> f</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> abcd</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ────</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4>External sources</h4>
<p>The new <code>src</code> field allows highlighting spans of text in any file, not just internal Nushell spans.</p>
<div class="language-nu line-numbers-mode" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "foo</span><span style="--shiki-light:#D7BA7D;--shiki-dark:#D7BA7D;--shiki-onedarkpro:#56B6C2">\n</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">bar</span><span style="--shiki-light:#D7BA7D;--shiki-dark:#D7BA7D;--shiki-onedarkpro:#56B6C2">\n</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">baz"</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> save</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> -</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">f</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> /tmp/foo.bar</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">error make</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span></span>
<span class="line"><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">  msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> 'error here'</span></span>
<span class="line"><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">  src</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">path</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> /tmp/foo.bar</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">  labels</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">    {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">text</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "this"</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> span</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">start</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 4</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> end</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 7</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}}</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  ]</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::outside</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> here</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">/tmp/foo.bar:2:1</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 1</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> foo</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 2</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bar</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> ─┬─</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ╰──</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> this</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> baz</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h1><a class="header-anchor" href="#changes-toc"><span>Changes [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h2><a class="header-anchor" href="#breaking-changes-toc"><span>Breaking changes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#renamed-nu-temp-path-and-nu-home-path-toc"><span>Renamed <code>$nu.temp-path</code> and <code>$nu.home-path</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>For consistency with other <code>$nu</code> fields:</p>
<ul>
<li><code>$nu.temp-path</code> has been renamed to <code>$nu.temp-dir</code></li>
<li><code>$nu.home-path</code> has been renamed to <code>$nu.home-dir</code></li>
</ul>
<p>Implemented in <a href="https://github.com/nushell/nushell/pull/17129" target="_blank" rel="noopener noreferrer">#17129</a>.</p>
<h3><a class="header-anchor" href="#no-longer-matches-dotfiles-in-mv-cp-du-by-default-toc"><span><code>*</code> no longer matches dotfiles in mv/cp/du by default [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17185" target="_blank" rel="noopener noreferrer">#17185</a>, the glob <code>*</code> won't match files whose names start with a dot (<code>.</code>) when using <code>cp</code>, <code>mv</code>, and <code>du</code>. However, these commands have a new <code>--all(-a)</code> flag for forcing the glob to match dotfiles.</p>
<div class="language-nushell" data-highlighter="shiki" data-ext="nushell" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nushell"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> touch</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> .a</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> cp</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> *</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> /tmp</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "/tmp/.a"</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> path exists</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#D19A66">false</span></span></code></pre>
</div><h3><a class="header-anchor" href="#use-labels-for-multiple-labels-in-error-make-toc"><span>Use <code>labels</code> for multiple labels in <code>error make</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Previously, when calling <code>error make</code> with a record argument, the <code>label</code> field could be either a single label or a list of labels. Now, it must be a single label. There is a new <code>labels</code> field that can hold a list of labels. Updated in <a href="https://github.com/nushell/nushell/pull/17070" target="_blank" rel="noopener noreferrer">#17070</a>.</p>
<div class="language-nu line-numbers-mode" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF"> def</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> f</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">x</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic"> y</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic"> z</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] {</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">  error make</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">msg</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> here</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> labels:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">    {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">text</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "there"</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> span</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">metadata</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $x</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">.span</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">    {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">text</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "everywhere"</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> span</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">metadata</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $y</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">.span</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">    {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">text</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "somewhere"</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> span</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> (</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">metadata</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $z</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">.span</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  ]</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  }</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">f</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> abcd</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">x</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> y</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> z</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">d</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> a</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Error</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">:</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">  ×</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> here</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╭─</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">entry</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"> #11:9:3]</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 8</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> }</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 9</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> f</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> abcd</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">x</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> y</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> z</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] {</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">d</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> a</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ──┬─</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> ───┬───</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> ───┬──</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">     │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">     │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">       ╰──</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> somewhere</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">     │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">     ╰──</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> everywhere</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ·</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">     ╰──</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> there</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   ╰────</span></span></code></pre>
<div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3><a class="header-anchor" href="#ide-menu-min-description-width-should-be-non-zero-toc"><span>IDE menu <code>min_description_width</code> should be non-zero [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/reedline/pull/996" target="_blank" rel="noopener noreferrer">reedline#996</a>, the <code>min_description_width</code> setting for the IDE menu is used to determine when to switch the description to the left if <code>description_mode</code> is <code>prefer_right</code>. This means that if <code>min_description_width</code> is set to 0, the description box will always stay on the right, even when there isn't enough space to show it.</p>
<p>To fix this, set <code>min_description_width</code> to a width at which the description box can still hold a decent amount of text (e.g., 15, the new default).</p>
<h3><a class="header-anchor" href="#to-md-formats-lists-as-unordered-markdown-lists-toc"><span><code>to md</code> formats lists as unordered Markdown lists [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><code>to md</code> will now format lists as unordered Markdown lists by default. For more information, see <a href="#new-list-flag-to-control-list-formatting-in-to-md-toc"><strong>New <code>--list</code> flag to control list formatting in <code>to md</code></strong></a>.</p>
<h2><a class="header-anchor" href="#additions-toc"><span>Additions [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#new-configuration-option-env-config-show-hints-toc"><span>New Configuration Option: <code>$env.config.show_hints</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>You can now disable hints for completions and the history by setting <code>$env.config.show_hints = false</code>.</p>
<h3><a class="header-anchor" href="#configuring-errors-toc"><span>Configuring errors [</span></a><a href="#table-of-contents">toc</a>]</h3>
<h4>New <code>error_style = short</code> setting</h4>
<p><a href="https://github.com/nushell/nushell/pull/17097" target="_blank" rel="noopener noreferrer">#17097</a> adds a new <code>short</code> option to <code>$env.config.error_style</code> for displaying errors as concise, single-line messages similar to classic shells.</p>
<div class="language-" data-highlighter="shiki" data-ext="" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-"><span class="line"><span>$ ll</span></span>
<span class="line"><span>Error: External command failed: Command `ll` not found (Did you mean `all`?)</span></span></code></pre>
</div><h4>New <code>error_style = nested</code> setting</h4>
<p><a href="https://github.com/nushell/nushell/pull/17105" target="_blank" rel="noopener noreferrer">#17105</a> adds a new <code>nested</code> option for <code>$env.config.error_style</code> to show related/nested errors.</p>
<h4>New <code>error_lines</code> setting</h4>
<p><a href="https://github.com/nushell/nushell/pull/17105" target="_blank" rel="noopener noreferrer">#17105</a> adds a new <code>$env.config.error_lines</code> option to control the number of lines printed for error context. By default, this is set to 1.</p>
<h3><a class="header-anchor" href="#added-record-conversion-to-into-list-toc"><span>Added record conversion to <code>into list</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17127" target="_blank" rel="noopener noreferrer">#17127</a>, <code>into list</code> from <code>std-rfc/conversions</code> now handles record types.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF">use</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> std-rfc/</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">conversions</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> *</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">{ </span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">a</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">b</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 7</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">c</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">:</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 10</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> } </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">|</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> into</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> list</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; ╭───┬─────┬───────╮</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ # │ key │ value │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; ├───┼─────┼───────┤</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ 0 │ a   │     3 │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ 1 │ b   │     7 │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ 2 │ c   │    10 │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; ╰───┴─────┴───────╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#include-mcp-server-support-by-default-toc"><span>Include MCP server support by default [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>The MCP server support is now included as a default feature in <a href="https://github.com/nushell/nushell/pull/17151" target="_blank" rel="noopener noreferrer">#17151</a>.</p>
<h3><a class="header-anchor" href="#connection-pool-for-http-commands-toc"><span>Connection pool for <code>http</code> commands [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17157" target="_blank" rel="noopener noreferrer">#17157</a> <code>http</code> subcommands now have a <code>--pool</code> flag for reusing connections:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">http get</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> https://www.google.com</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">pool</span></span></code></pre>
</div><p>The <code>http pool</code> command can be used to reset and customize the HTTP connection pool.</p>
<h3><a class="header-anchor" href="#new-output-flag-for-timeit-toc"><span>New <code>--output</code> flag for <code>timeit</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17202" target="_blank" rel="noopener noreferrer">#17202</a> adds a flag called <code>--output</code> to the <code>timeit</code> command that will make the command return a record with both the execution time and the output of the closure.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> timeit</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">output</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> { </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">'example text'</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> }</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╭────────┬──────────────╮</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> time</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">   │</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 14328</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">        │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">│</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> output</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> example</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> text</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> │</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">╰────────┴──────────────╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#allow-disabling-filtering-in-custom-completions-toc"><span>Allow disabling filtering in custom completions [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17253" target="_blank" rel="noopener noreferrer">#17253</a> allows disabling filtering in custom completions. This is useful if you have a completer that filters on something other than the <code>value</code> of the suggestion (e.g. a completer that displays git commits and filters based on commit description).</p>
<div class="hint-container note">
<p class="hint-container-title">Note</p>
<p>If you disable filtering, your completions will also not be sorted.</p>
</div>
<h3><a class="header-anchor" href="#new-plugin-interface-get-block-ir-toc"><span>New plugin interface <code>get_block_ir</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17279" target="_blank" rel="noopener noreferrer">#17279</a> a new engine call to the plugin protocol for getting the compiled Intermediate Representation (IR) for a block:</p>
<div class="language-rust" data-highlighter="shiki" data-ext="rust" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-rust"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">fn</span><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF"> get_block_ir</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">(&amp;</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">self</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">block_id</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">: </span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">BlockId</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">) -&gt; </span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">Result</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">&lt;</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">IrBlock</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">, </span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">ShellError</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">&gt;</span></span></code></pre>
</div><h3><a class="header-anchor" href="#new-list-flag-to-control-list-formatting-in-to-md-toc"><span>New <code>--list</code> flag to control list formatting in <code>to md</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17250" target="_blank" rel="noopener noreferrer">#17250</a>, <code>to md</code> will format lists as unordered Markdown lists by default. The <code>--list</code> flag can be used to control this:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">|</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> to md</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">                   # =&gt; "* a\n* b\n* c"</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">|</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> to md</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">list</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> unordered</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">  # =&gt; "* a\n* b\n* c"</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">|</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> to md</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">list</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> ordered</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">    # =&gt; "1. a\n2. b\n3. c"</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  [</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">a</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> b</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> c</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">] </span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">|</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> to md</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">list</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> none</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">       # =&gt; "a\nb\nc"</span></span></code></pre>
</div><div class="hint-container warning">
<p class="hint-container-title">Warning</p>
<p><strong>Breaking change</strong>: The previous behavior was equivalent to <code>--list none</code> (no formatting for lists). The new behavior is <code>--list unordered</code>.</p>
</div>
<h3><a class="header-anchor" href="#add-icons-option-to-table-for-ls-tables-toc"><span>Add <code>--icons</code> option to table for <code>ls</code> tables [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Similar to <code>ls | grid -i</code>, now <code>ls | table --icons</code> will display file icons to the left of the filename. This can be used in your <code>$env.config.hooks.display_output</code> to always display icons when using <code>ls</code>. Implemented in <a href="https://github.com/nushell/nushell/pull/17248" target="_blank" rel="noopener noreferrer">#17248</a>.</p>
<p><img src="https://github.com/user-attachments/assets/3d8fad53-018d-4616-a659-37ef9122f6c3" alt="table --icons screenshot"></p>
<h3><a class="header-anchor" href="#alias-definitions-shown-in-which-command-toc"><span>Alias definitions shown in <code>which</code> command [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17338" target="_blank" rel="noopener noreferrer">#17338</a>, the <code>which</code> command includes a <code>definitions</code> column when inspecting aliases to show the command that the alias expands to.</p>
<h3><a class="header-anchor" href="#allow-serializing-as-raw-strings-in-to-nuon-toc"><span>Allow serializing as raw strings in <code>to nuon</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17189" target="_blank" rel="noopener noreferrer">#17189</a> adds a <code>--raw-strings</code> flag to <code>to nuon</code> for serializing strings with raw string syntax (<code>r#'...'#</code>) instead of strings with escapes.</p>
<h3><a class="header-anchor" href="#other-additions-toc"><span>Other additions [</span></a><a href="#table-of-contents">toc</a>]</h3>
<ul>
<li><code>job flush</code> can now take a <code>--tag</code> to filter which messages to discard (<a href="https://github.com/nushell/nushell/pull/17056" target="_blank" rel="noopener noreferrer">#17056</a>)</li>
<li>Add <code>$history</code> variable to MCP (<a href="https://github.com/nushell/nushell/pull/17132" target="_blank" rel="noopener noreferrer">#17132</a>)</li>
</ul>
<h2><a class="header-anchor" href="#removals-toc"><span>Removals [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#replace-deprecated-current-dir-usage-with-enginestate-cwd-in-multiple-files-toc"><span>Replace deprecated current_dir usage with EngineState::cwd in multiple files [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17303" target="_blank" rel="noopener noreferrer">#17303</a> removes some deprecated Rust functions from <code>nu-engine</code> that have been deprecated since Nushell 0.92.3:</p>
<ul>
<li><code>current_dir_str()</code></li>
<li><code>current_dir_str_const()</code></li>
<li><code>current_dir()</code></li>
<li><code>current_dir_const()</code></li>
</ul>
<h2><a class="header-anchor" href="#other-changes-toc"><span>Other changes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#update-explore-regex-command-to-look-more-helpful-and-professional-toc"><span>Update explore regex command to look more helpful and professional [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17149" target="_blank" rel="noopener noreferrer">#17149</a>, the <code>explore regex</code> UI now looks more helpful and professional.</p>
<p><img src="https://github.com/user-attachments/assets/15e64dcf-96f7-4c6c-87da-b52c1f78d986" alt="New explore regex UI"></p>
<h3><a class="header-anchor" href="#more-descriptive-error-messages-for-rm-toc"><span>More descriptive error messages for <code>rm</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>The <code>rm</code> command now provides more descriptive error messages when it runs into an IO error. Implemented in <a href="https://github.com/nushell/nushell/pull/17134" target="_blank" rel="noopener noreferrer">#17134</a>.</p>
<h3><a class="header-anchor" href="#some-nushell-commands-no-longer-canonicalize-paths-toc"><span>Some Nushell commands no longer canonicalize paths [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17319" target="_blank" rel="noopener noreferrer">#17319</a>, <code>rm</code>, <code>watch</code>, and <code>source</code> no longer canonicalize paths. Additionally, the file path links in table view will no longer be canonicalized if you click them.</p>
<h3><a class="header-anchor" href="#add-repl-style-state-persistence-across-evaluations-for-mcp-server-toc"><span>Add REPL-style state persistence across evaluations for MCP server [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17121" target="_blank" rel="noopener noreferrer">#17121</a>, variables and environment changes now persist across MCP tool calls (REPL-style). This enables workflows like</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.MY_VAR</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> =</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> "hello"</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">  # First call</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$env</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.MY_VAR</span><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">            # Second call returns "hello"</span></span></code></pre>
</div><h3><a class="header-anchor" href="#use-structured-response-format-for-mcp-server-toc"><span>Use structured response format for MCP server [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17132" target="_blank" rel="noopener noreferrer">#17132</a>, all MCP responses will be wrapped in a structured record with:</p>
<ul>
<li><code>history_index</code>: 0-based index of result in history</li>
<li><code>cwd</code>: current working directory after command</li>
<li><code>output</code>: command output (possibly truncated)</li>
</ul>
<h3><a class="header-anchor" href="#additional-changes-toc"><span>Additional changes [</span></a><a href="#table-of-contents">toc</a>]</h3>
<ul>
<li>Single column dataframes (series) or expressions can now be passed into <code>polars is-in</code> (<a href="https://github.com/nushell/nushell/pull/17275" target="_blank" rel="noopener noreferrer">#17275</a>)</li>
<li>Lists can now be passed into <code>polars lit</code> (<a href="https://github.com/nushell/nushell/pull/17275" target="_blank" rel="noopener noreferrer">#17275</a>)</li>
<li><code>bytes length</code> can now be used at const time (<a href="https://github.com/nushell/nushell/pull/17204" target="_blank" rel="noopener noreferrer">#17204</a>)</li>
<li>Add a quick reference panel to <code>explore regex</code> with the F1 keybinding and dismiss it with the ESC keybinding. (<a href="https://github.com/nushell/nushell/pull/17187" target="_blank" rel="noopener noreferrer">#17187</a>)</li>
<li>Within the <code>explore</code> command the <code>:nu</code> command will now stream content by spawning the command issues without blocking. (<a href="https://github.com/nushell/nushell/pull/17208" target="_blank" rel="noopener noreferrer">#17208</a>)</li>
<li><code>--help</code> is now available for <code>debug env</code>. (<a href="https://github.com/nushell/nushell/pull/17278" target="_blank" rel="noopener noreferrer">#17278</a>)</li>
<li>This PR adds the <code>memory_size()</code> function on nushell <code>Value</code> so that we can get the size of variables to understand them better. (<a href="https://github.com/nushell/nushell/pull/17287" target="_blank" rel="noopener noreferrer">#17287</a>)</li>
<li>Update agents.md for better LLM use. (<a href="https://github.com/nushell/nushell/pull/17318" target="_blank" rel="noopener noreferrer">#17318</a>)</li>
<li>Make <code>detect type</code> more robust with datetime handling by updating regular expressions (<a href="https://github.com/nushell/nushell/pull/17357" target="_blank" rel="noopener noreferrer">#17357</a>)</li>
</ul>
<h2><a class="header-anchor" href="#bug-fixes-toc"><span>Bug fixes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#fixed-parsing-of-ranges-with-parentheses-toc"><span>Fixed parsing of ranges with parentheses [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Ranges that include a parenthesized expression will now be parsed correctly after <a href="https://github.com/nushell/nushell/pull/17109" target="_blank" rel="noopener noreferrer">#17109</a>. The below example will now evaluate to the range <code>0..1</code> rather than being parsed as an invalid three-part range <code>0..(1..2</code>.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">0</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">..</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">(</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">1</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD">..</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">2</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> first</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; ╭───┬───╮</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ 0 │ 0 │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; │ 1 │ 1 │</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; ╰───┴───╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#fixed-parsing-issue-with-multiarm-match-guard-toc"><span>Fixed parsing issue with multiarm match + guard [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Match statements with multiple arms and a guard expression, such as the below example, will now be parsed correctly after <a href="https://github.com/nushell/nushell/pull/17115" target="_blank" rel="noopener noreferrer">#17115</a>. Previously, such an expression would fail to parse.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">match</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span></span>
<span class="line"><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66">  1</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 2</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#B5CEA8;--shiki-dark:#B5CEA8;--shiki-onedarkpro:#D19A66"> 3</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> if</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#D19A66"> true</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> =&gt;</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> 'test'</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span>
<span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic"># =&gt; test</span></span></code></pre>
</div><h3><a class="header-anchor" href="#infinite-sequences-can-be-terminated-when-piped-to-other-commands-toc"><span>Infinite sequences can be terminated when piped to other commands [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17245" target="_blank" rel="noopener noreferrer">#17245</a> allows infinite sequences to be terminated when piped to other commands.</p>
<div class="language-" data-highlighter="shiki" data-ext="" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-"><span class="line"><span>&gt; `1..inf | to md`  # then press ctrl-c</span></span>
<span class="line"><span>^CError: nu::shell::error</span></span>
<span class="line"><span></span></span>
<span class="line"><span>  × Operation interrupted</span></span>
<span class="line"><span>   ╭─[entry #1:1:1]</span></span>
<span class="line"><span> 1 │ 1..inf | to md</span></span>
<span class="line"><span>   · ───────┬──────</span></span>
<span class="line"><span>   ·        ╰── This operation was interrupted</span></span>
<span class="line"><span>   ╰────</span></span></code></pre>
</div><h3><a class="header-anchor" href="#pipefail-works-with-try-block-toc"><span>Pipefail works with <code>try</code> block [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17052" target="_blank" rel="noopener noreferrer">#17052</a>, the following code will an empty list with additional <code>1</code>, because the command is failed actually.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> nu</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">experimental-options</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">=</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">[</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">pipefail</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">]</span></span>
<span class="line"><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">&gt;</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> try</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">  ^</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">false</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> lines</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">} </span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">catch</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {|</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">e</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">|</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">  print</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75"> $e.exit_code</span></span>
<span class="line"><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">}</span></span></code></pre>
</div><h3><a class="header-anchor" href="#nushell-exits-early-when-running-scripts-or-commands-with-bad-config-files-toc"><span>Nushell exits early when running scripts or commands with bad config files [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17103" target="_blank" rel="noopener noreferrer">#17103</a>, if a script or command is run with a <code>config.nu</code> or <code>env.nu</code> that can't be evaluated, Nushell will exit.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">echo</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> 'errnocmd'</span><span style="--shiki-light:#CE92A4;--shiki-dark:#CE92A4;--shiki-onedarkpro:#C678DD"> |</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD"> save</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config.nu</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">nu</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> --</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">config</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config.nu</span><span style="--shiki-light:#CE92A4;--shiki-light-font-style:inherit;--shiki-dark:#CE92A4;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#C678DD;--shiki-onedarkpro-font-style:italic"> -</span><span style="--shiki-light:#9CDCFE;--shiki-light-font-style:inherit;--shiki-dark:#9CDCFE;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#E06C75;--shiki-onedarkpro-font-style:italic">c</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> 'echo $env.NU_VERSION'</span></span></code></pre>
</div><p>This will exit with status code 1 rather than printing the Nushell version.</p>
<h3><a class="header-anchor" href="#fix-http-dns-resolution-service-not-supported-error-in-docker-containers-toc"><span>Fix <code>http</code> DNS resolution "Service not supported" error in Docker containers [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>With <a href="https://github.com/nushell/nushell/pull/17125" target="_blank" rel="noopener noreferrer">#17125</a>, <code>http</code> commands will no longer error with "Service not supported for this socket type" in certain Linux environments (particularly Docker containers running Debian Trixie).</p>
<h3><a class="header-anchor" href="#fix-variables-remaining-active-after-overlay-hide-toc"><span>Fix variables remaining active after <code>overlay hide</code> [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p><a href="https://github.com/nushell/nushell/pull/17130" target="_blank" rel="noopener noreferrer">#17130</a> makes overlays work more reliably inside scripts.</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#6A9955;--shiki-light-font-style:inherit;--shiki-dark:#6A9955;--shiki-dark-font-style:inherit;--shiki-onedarkpro:#7F848E;--shiki-onedarkpro-font-style:italic">#!/usr/bin/env nu</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF">def</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> something</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [] { </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">"example"</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> }</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF">module</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> spam</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> {}</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">overlay use</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> spam</span></span>
<span class="line"><span style="--shiki-light:#DCDCAA;--shiki-dark:#DCDCAA;--shiki-onedarkpro:#61AFEF">def</span><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B"> bar</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> [] { </span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379">"bar"</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF"> }</span></span>
<span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">overlay hide</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> spam</span></span>
<span class="line"><span style="--shiki-light:#4EC9B0;--shiki-dark:#4EC9B0;--shiki-onedarkpro:#E5C07B">bar</span></span></code></pre>
</div><p>Previously, <code>bar</code> would be available to use even after <code>overlay hide spam</code>. This has been fixed.</p>
<h3><a class="header-anchor" href="#other-fixes-toc"><span>Other fixes [</span></a><a href="#table-of-contents">toc</a>]</h3>
<ul>
<li>Type mismatch errors no longer list the same type multiple times (<a href="https://github.com/nushell/nushell/pull/17075" target="_blank" rel="noopener noreferrer">#17075</a>)</li>
<li>Allow creating aliases for commands with required flags (<a href="https://github.com/nushell/nushell/pull/17106" target="_blank" rel="noopener noreferrer">#17106</a>)</li>
<li><code>rm</code> can now delete broken symlinks on Windows (<a href="https://github.com/nushell/nushell/pull/17320" target="_blank" rel="noopener noreferrer">#17320</a>)</li>
<li><code>format date</code> can see locale environment variables set by <code>with-env</code> (<a href="https://github.com/nushell/nushell/pull/17333" target="_blank" rel="noopener noreferrer">#17333</a>)</li>
<li>Changes to <code>$env.config</code> outside of <code>config.nu</code> are reflected in more places (<a href="https://github.com/nushell/nushell/pull/17058" target="_blank" rel="noopener noreferrer">17058</a>)</li>
<li>Multiplying duration by integers now throws an error on overflow (<a href="https://github.com/nushell/nushell/pull/17063" target="_blank" rel="noopener noreferrer">#17063</a>)</li>
<li>rm command will return error when there is one file it failed to remove. (<a href="https://github.com/nushell/nushell/pull/17237" target="_blank" rel="noopener noreferrer">#17237</a>)</li>
<li>Changed the behavior of <code>cal --month-names</code> to create a new <code>month_name</code> column instead of overriding <code>month</code>. (<a href="https://github.com/nushell/nushell/pull/17302" target="_blank" rel="noopener noreferrer">#17302</a>)</li>
<li><code>glob</code> no longer canonicalizes paths internally (<a href="https://github.com/nushell/nushell/pull/17312" target="_blank" rel="noopener noreferrer">#17312</a>)</li>
<li>Fixed the issue where "Duplicate Pane" in Windows Terminal failed when the current path contained Chinese characters by removing unnecessary URL-encoding in OSC 9;9 sequences. (<a href="https://github.com/nushell/nushell/pull/17311" target="_blank" rel="noopener noreferrer">#17311</a>)</li>
<li>Enable <code>detect columns</code> to be more robust, specifically for handling the output of tablelike structures that are created with ascii or unicode table characters like we use in nushell today. Many tools are starting to use this columnar data output so hopefully this will enable nushell to be able to parse this data better. (<a href="https://github.com/nushell/nushell/pull/17317" target="_blank" rel="noopener noreferrer">#17317</a>)</li>
<li><code>input -s</code> will append newline when user finishes typing. (<a href="https://github.com/nushell/nushell/pull/17298" target="_blank" rel="noopener noreferrer">#17298</a>)</li>
<li><code>std/help</code>: Add colors, proper examples, fix output (<a href="https://github.com/nushell/nushell/pull/17010" target="_blank" rel="noopener noreferrer">#17010</a>)</li>
<li><code>table -i false</code> no longer panic when there is an index column, e.g: <code>[{index: 0, data: yes}] | table -i false</code> (<a href="https://github.com/nushell/nushell/pull/17126" target="_blank" rel="noopener noreferrer">#17126</a>)</li>
</ul>
<h1><a class="header-anchor" href="#notes-for-plugin-developers-toc"><span>Notes for plugin developers [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h1><a class="header-anchor" href="#hall-of-fame-toc"><span>Hall of fame [</span></a><a href="#table-of-contents">toc</a>]</h1>
<p>Thanks to all the contributors below for helping us solve issues, improve documentation, refactor code, and more! 🙏</p>
<p>| author                                             | change                                                                               | link                                                    |
|</p>
]]></content:encoded>
      <enclosure url="https://github.com/user-attachments/assets/502a6566-715f-4ce0-b787-6012fc5b9942" type="image/"/>
    </item>
    <item>
      <title>This week in Nushell #334</title>
      <link>https://www.nushell.sh/blog/2026-01-16-twin0334.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-16-twin0334.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #334</source>
      <description>This Week in Nushell #334
Published Friday, 2026-01-16, including PRs merged Friday, 2026-01-09 through Thursday, 2026-01-15.
Nushell


@fdncred:

added better regex pattern han...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-01-16, including PRs merged Friday, 2026-01-09 through Thursday, 2026-01-15.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17357" target="_blank" rel="noopener noreferrer">added better regex pattern handling (#17357)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17342" target="_blank" rel="noopener noreferrer">updated evaluate_tool.md (#17342)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17339" target="_blank" rel="noopener noreferrer">made <code>ls</code> faster (#17339)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17328" target="_blank" rel="noopener noreferrer">updated nushell to latest reedline commit 6ceda500 (#17328)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17317" target="_blank" rel="noopener noreferrer">made <code>detect columns</code> more robust + refactor + new switch (#17317)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17343" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.41.0 to 1.42.0 (#17343)</a></li>
</ul>
</li>
<li>
<p>@dhr412:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17338" target="_blank" rel="noopener noreferrer">added <code>definition</code> column to <code>which</code> command for aliases (#17338)</a></li>
</ul>
</li>
<li>
<p>@playwmadness:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17333" target="_blank" rel="noopener noreferrer">fixed (#17321): <code>with-env</code> not applying locale env vars to <code>format date</code> (#17333)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17298" target="_blank" rel="noopener noreferrer">made input -s always write "\n" when user finished typing (#17298)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17296" target="_blank" rel="noopener noreferrer">introduced Polars selector support (#17296)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17276" target="_blank" rel="noopener noreferrer">replaced dep <code>rust-embed</code> with custom code generation (#17276)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17105" target="_blank" rel="noopener noreferrer">added <code>error_lines</code> and <code>error_style = tree</code> settings (#17105)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@RangHo:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/149" target="_blank" rel="noopener noreferrer">added opam.nu link to README.md (#149)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2105" target="_blank" rel="noopener noreferrer">removed bash-env external command from docs (#2105)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1200" target="_blank" rel="noopener noreferrer">removed incorrect less subcommand definition (#1200)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/1001" target="_blank" rel="noopener noreferrer">fixed handling of longer first suggestion in find_common_string (#1001)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #333</title>
      <link>https://www.nushell.sh/blog/2026-01-09-twin0333.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-09-twin0333.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #333</source>
      <description>This Week in Nushell #333
Published Friday, 2026-01-16, including PRs merged Friday, 2026-01-02 through Thursday, 2026-01-08.
Highlights

New command - unlet!

Nushell


@ChrisD...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-01-16, including PRs merged Friday, 2026-01-02 through Thursday, 2026-01-08.</p>
<h2>Highlights</h2>
<ul>
<li>New command - <code>unlet</code>!</li>
</ul>
<h2>Nushell</h2>
<ul>
<li>
<p>@ChrisDenton:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17320" target="_blank" rel="noopener noreferrer">Fixed removing broken symlinks on Windows (#17320)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17319" target="_blank" rel="noopener noreferrer">Replaced uses of canonicalize in nu-command (#17319)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17312" target="_blank" rel="noopener noreferrer">Introduced <code>nupath::absolute_with</code> and used it in <code>glob</code> (#17312)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17318" target="_blank" rel="noopener noreferrer">Added more details to agents.md (#17318)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17303" target="_blank" rel="noopener noreferrer">Replaced deprecated current_dir usage with EngineState::cwd in multiple files (#17303)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17299" target="_blank" rel="noopener noreferrer">Updated reedline to latest commit (#17299)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17289" target="_blank" rel="noopener noreferrer">Fixed <code>explore</code> searching (#17289)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17287" target="_blank" rel="noopener noreferrer">Added <code>memory_size</code> function on nushell's <code>Value</code> (#17287)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17270" target="_blank" rel="noopener noreferrer">Added new command: <code>unlet</code> (#17270)</a></li>
</ul>
</li>
<li>
<p>@IvolliousElectrolux:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17311" target="_blank" rel="noopener noreferrer">Fixed OSC 9;9 path reporting in Windows Terminal (Fixes #17300) (#17311)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17310" target="_blank" rel="noopener noreferrer">Fixed typo &amp; upgraded crate-ci/typos (#17310)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17250" target="_blank" rel="noopener noreferrer">Added --list flag to <code>to md</code> for ordered/unordered/none list formatting (#17250)</a></li>
</ul>
</li>
<li>
<p>@astral-l:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17302" target="_blank" rel="noopener noreferrer">Added <code>month_name</code> column to <code>cal --month-names</code> (#17302)</a></li>
</ul>
</li>
<li>
<p>@atahabaki:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17294" target="_blank" rel="noopener noreferrer">Stopped treating 0 as padding always | bracoxide | str expand (#17294)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17280" target="_blank" rel="noopener noreferrer">Changed default IdeMenu min_description_width to 15 (#17280)</a></li>
</ul>
</li>
<li>
<p>@tom-lubenow:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17279" target="_blank" rel="noopener noreferrer">Added GetBlockIR engine call to plugin protocol (#17279)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17278" target="_blank" rel="noopener noreferrer">Used <code>Signature::build</code> instead of <code>new</code> on <code>debug env</code> (#17278)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17275" target="_blank" rel="noopener noreferrer">Allowed series and expressions to be passed into <code>polars is-in</code> (#17275)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17248" target="_blank" rel="noopener noreferrer">Added <code>--icons</code> option to <code>table</code> for <code>ls</code> tables (#17248)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17316" target="_blank" rel="noopener noreferrer">Bumped schemars from 1.1.0 to 1.2.0 (#17316)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17315" target="_blank" rel="noopener noreferrer">Bumped shadow-rs from 1.4.0 to 1.5.0 (#17315)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17314" target="_blank" rel="noopener noreferrer">Bumped dialoguer from 0.11.0 to 0.12.0 (#17314)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17313" target="_blank" rel="noopener noreferrer">Bumped lru from 0.12.5 to 0.16.3 (#17313)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17309" target="_blank" rel="noopener noreferrer">Bumped tokio from 1.46.1 to 1.49.0 (#17309)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17308" target="_blank" rel="noopener noreferrer">Bumped unicase from 2.8.0 to 2.9.0 (#17308)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17307" target="_blank" rel="noopener noreferrer">Bumped fancy-regex from 0.16.1 to 0.17.0 (#17307)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17306" target="_blank" rel="noopener noreferrer">Bumped calamine from 0.28.0 to 0.32.0 (#17306)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17264" target="_blank" rel="noopener noreferrer">Bumped uuid from 1.18.1 to 1.19.0 (#17264)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17262" target="_blank" rel="noopener noreferrer">Bumped csv from 1.3.1 to 1.4.0 (#17262)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17261" target="_blank" rel="noopener noreferrer">Bumped tempfile from 3.23.0 to 3.24.0 (#17261)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@pcrockett:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2104" target="_blank" rel="noopener noreferrer">Used non-conflicting .list filename in install instructions (#2104)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2102" target="_blank" rel="noopener noreferrer">Published TWiN 332 (#2102)</a></li>
</ul>
</li>
<li>
<p>@cablehead:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2059" target="_blank" rel="noopener noreferrer">Documented the new --unix-socket flag for HTTP builtins (#2059)</a></li>
</ul>
</li>
<li>
<p>@nome:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2044" target="_blank" rel="noopener noreferrer">Removed outdated section on closure type signatures (#2044)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@ysthakur:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/998" target="_blank" rel="noopener noreferrer">Fixed IdeMenu to use width instead of bytes/chars (#998)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/996" target="_blank" rel="noopener noreferrer">Fixed IdeMenu description position not depending on description width (#996)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/917" target="_blank" rel="noopener noreferrer">Fixed #912 (#917)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #332</title>
      <link>https://www.nushell.sh/blog/2026-01-02-twin0332.html</link>
      <guid>https://www.nushell.sh/blog/2026-01-02-twin0332.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #332</source>
      <description>This Week in Nushell #332
Published Friday, 2026-01-02, including PRs merged Friday, 2025-12-26 through Thursday, 2026-01-01.
Highlights

A long awaited feature has landed - You...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2026-01-02, including PRs merged Friday, 2025-12-26 through Thursday, 2026-01-01.</p>
<h2>Highlights</h2>
<ul>
<li>A long awaited feature has landed - You can now pipe a value into the <code>let</code> command to set a variable within a pipeline! Thanks @fdncred!</li>
</ul>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17266" target="_blank" rel="noopener noreferrer">updated reedline to latest commit (#17266)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17247" target="_blank" rel="noopener noreferrer">allowed <code>let</code> to be used at the end of the pipeline (#17247)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17208" target="_blank" rel="noopener noreferrer">streamed explore nu output (#17208)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17259" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.40.0 to 1.40.1 (#17259)</a></li>
</ul>
</li>
<li>
<p>@DevAldrete:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17253" target="_blank" rel="noopener noreferrer">allowed disabling filtering in custom completions (#17253)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17252" target="_blank" rel="noopener noreferrer">bumped reedline to latest main (reedline#991) (#17252)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17249" target="_blank" rel="noopener noreferrer">fixed rm -f when some files not found (#17249)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17245" target="_blank" rel="noopener noreferrer">made Value::List and Value::Range interruptible when piping to other commands (#17245)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17237" target="_blank" rel="noopener noreferrer">made rm return Error when it failed to remove a file (#17237)</a></li>
</ul>
</li>
<li>
<p>@Ecorous:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17242" target="_blank" rel="noopener noreferrer">bumped rmp(-serde) to 0.8.15/1.3.1 (#17242)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>
<p>@Neuron-Mr-White:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/145" target="_blank" rel="noopener noreferrer">added nu_plugin_terminal_qr plugin link to README (#145)</a></li>
</ul>
</li>
<li>
<p>@vmeurisse:</p>
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/143" target="_blank" rel="noopener noreferrer">updated nu-lint link to new repository location (#143)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/994" target="_blank" rel="noopener noreferrer">fixed menu to not apply selected_text style to matched text in suggestions (#994)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/991" target="_blank" rel="noopener noreferrer">restored pre-798 ColumnarMenu highlighting behavior (#991)</a></li>
</ul>
</li>
<li>
<p>@majiayu000:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/992" target="_blank" rel="noopener noreferrer">fixed ANSI styling reset before printing prompt (#992)</a></li>
</ul>
</li>
</ul>
<h2>nufmt</h2>
<ul>
<li>@fdncred:
<ul>
<li><a href="https://github.com/nushell/nufmt/pull/75" target="_blank" rel="noopener noreferrer">updated nufmt (#75)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@hongquan:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1198" target="_blank" rel="noopener noreferrer">updated uv-completer to match parameters of uv v0.9.x (#1198)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@NotTheDr01ds:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2098" target="_blank" rel="noopener noreferrer">posted TWiN 0331 (#2098)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #331</title>
      <link>https://www.nushell.sh/blog/2025-12-26-twin0331.html</link>
      <guid>https://www.nushell.sh/blog/2025-12-26-twin0331.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #331</source>
      <description>This Week in Nushell #331
Published Friday, 2025-12-26, including PRs merged Friday, 2025-12-19 through Thursday, 2025-12-25.
Highlights

Polars hits the trifecta with AWS, Azur...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2025-12-26, including PRs merged Friday, 2025-12-19 through Thursday, 2025-12-25.</p>
<h2>Highlights</h2>
<ul>
<li>Polars hits the trifecta with AWS, Azure, and now, thanks to @ayax79 - Google Cloud Platform!</li>
<li>You can now both time a command and return its output using <code>timeit --output</code> thanks to @Tyarel8!</li>
</ul>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17223" target="_blank" rel="noopener noreferrer">Increased help menu description rows from 10 to 15 (#17223)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17219" target="_blank" rel="noopener noreferrer">Used graphemes instead of byte indexes in <code>explore regegx</code> (#17219)</a></li>
</ul>
</li>
<li>
<p>@Jan9103:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17204" target="_blank" rel="noopener noreferrer">Made bytes length available at const-time (#17204)</a></li>
</ul>
</li>
<li>
<p>@Tyarel8:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17202" target="_blank" rel="noopener noreferrer">Added <code>--output</code> flag to <code>timeit</code> (#17202)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17171" target="_blank" rel="noopener noreferrer">Added par-each preference to mcp instructions (#17171)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17135" target="_blank" rel="noopener noreferrer">Added Google Cloud support to Polars (#17135)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17227" target="_blank" rel="noopener noreferrer">Bumped mach2 from 0.4.3 to 0.6.0 (#17227)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17225" target="_blank" rel="noopener noreferrer">Bumped toml from 0.8.19 to 0.9.10+spec-1.1.0 (#17225)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17224" target="_blank" rel="noopener noreferrer">Bumped rmcp from 0.8.1 to 0.8.5 (#17224)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@Paul-16098:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2097" target="_blank" rel="noopener noreferrer">Clarified user defined menu layout in zh-cn docs (#2097)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2095" target="_blank" rel="noopener noreferrer">Published TWiN 330 (#2095)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #330</title>
      <link>https://www.nushell.sh/blog/2025-12-19-twin0330.html</link>
      <guid>https://www.nushell.sh/blog/2025-12-19-twin0330.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #330</source>
      <description>This Week in Nushell #330
Published Friday, 2025-12-19, including PRs merged Friday, 2025-12-12 through Thursday, 2025-12-18.
Highlights
This week brings a shiny new explore con...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2025-12-19, including PRs merged Friday, 2025-12-12 through Thursday, 2025-12-18.</p>
<h2>Highlights</h2>
<p>This week brings a shiny new <code>explore config</code> command, some improved <code>explore regex</code> and <code>explore</code> UI, and HTTP pooling (amazing that our little shell does <em>this</em>!).</p>
<p>Also, MCP is included in all builds by default going forward! And hints can be user-disabled without resorting to hacky theme changes!</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@reubeno:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17203" target="_blank" rel="noopener noreferrer">updated reedline to the latest commit (#17203)</a></li>
</ul>
</li>
<li>
<p>@sgvictorino:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17200" target="_blank" rel="noopener noreferrer">made MCP server interruptible (#17200)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17199" target="_blank" rel="noopener noreferrer">fixed the mcp ctrl-c bug (#17199)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17197" target="_blank" rel="noopener noreferrer">updated reedline to the latest commit (#17197)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17187" target="_blank" rel="noopener noreferrer">added quick reference panel to <code>explore regex</code> command (#17187)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17183" target="_blank" rel="noopener noreferrer">updated uutils to 0.5.0 (#17183)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17181" target="_blank" rel="noopener noreferrer">refactored <code>explore</code> family of commands for better understanding and maintenance (#17181)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17176" target="_blank" rel="noopener noreferrer">added syntax highlighting to <code>explore config</code> (#17176)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17172" target="_blank" rel="noopener noreferrer">cleaned up explore a bit (#17172)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17170" target="_blank" rel="noopener noreferrer">added search capability to <code>explore config</code> command (#17170)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17169" target="_blank" rel="noopener noreferrer">updated match count when test text changes (#17169)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17168" target="_blank" rel="noopener noreferrer">updated doc config (#17168)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17148" target="_blank" rel="noopener noreferrer">added agents.md to help LLMs (#17148)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17147" target="_blank" rel="noopener noreferrer">added new command: <code>explore config</code> TUI (#17147)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17195" target="_blank" rel="noopener noreferrer">bumped procfs from 0.17.0 to 0.18.0 (#17195)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17194" target="_blank" rel="noopener noreferrer">bumped strum from 0.26.3 to 0.27.2 (#17194)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17193" target="_blank" rel="noopener noreferrer">bumped winreg from 0.52.0 to 0.55.0 (#17193)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17192" target="_blank" rel="noopener noreferrer">bumped bytes from 1.10.0 to 1.11.0 (#17192)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17191" target="_blank" rel="noopener noreferrer">bumped http from 1.3.1 to 1.4.0 (#17191)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17190" target="_blank" rel="noopener noreferrer">bumped actions/upload-artifact from 5 to 6 (#17190)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17186" target="_blank" rel="noopener noreferrer">added CARGO* and RUSTUP* environment variables back to test environment (#17186)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17185" target="_blank" rel="noopener noreferrer">made <code>mv/cp/du *</code> not match dotfiles by default (#17185)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17177" target="_blank" rel="noopener noreferrer">added http pool cmd (#17177)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17157" target="_blank" rel="noopener noreferrer">enabled http commands to use builtin connection pool (#17157)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17163" target="_blank" rel="noopener noreferrer">added stderr redirection BAD/GOOD examples to mcp instructions (#17163)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17153" target="_blank" rel="noopener noreferrer">added string interpolation syntax to mcp instructions (#17153)</a></li>
</ul>
</li>
<li>
<p>@splintersuidman:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17156" target="_blank" rel="noopener noreferrer">added configuration option for showing hints (#17156)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17152" target="_blank" rel="noopener noreferrer">fixed parser overflow by using <code>checked_sub</code> in <code>parse_range</code> (#17152)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17151" target="_blank" rel="noopener noreferrer">added mcp to default and all features (#17151)</a></li>
</ul>
</li>
<li>
<p>@blackhat-hemsworth:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17134" target="_blank" rel="noopener noreferrer">improved error message for rm Os errors (#17134)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@LQR471814:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/142" target="_blank" rel="noopener noreferrer">added nu_plugin_caldav (#142)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>
<p>@reubeno:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/988" target="_blank" rel="noopener noreferrer">fixed kitty support check to only run when enabled (#988)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/985" target="_blank" rel="noopener noreferrer">used <code>rfind</code> instead of <code>filter.next_back</code> (#985)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/982" target="_blank" rel="noopener noreferrer">fixed custom Enter keybindings in vi mode (#982)</a></li>
</ul>
</li>
<li>
<p>@Diabezdemona:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/977" target="_blank" rel="noopener noreferrer">made menu settings public (#977)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/973" target="_blank" rel="noopener noreferrer">fixed ColumnarMenu suggestions to always take 1 line (#973)</a></li>
</ul>
</li>
<li>
<p>@sholderbach:</p>
<ul>
<li><a href="https://github.com/nushell/reedline/pull/970" target="_blank" rel="noopener noreferrer">bumped <code>arboard</code> to latest version (#970)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@samoylovfp:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1196" target="_blank" rel="noopener noreferrer">sorted readme of modules (#1196)</a></li>
<li><a href="https://github.com/nushell/nu_scripts/pull/1195" target="_blank" rel="noopener noreferrer">implemented HMAC SHA256 function in nushell (#1195)</a></li>
</ul>
</li>
<li>
<p>@yuanczx:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1194" target="_blank" rel="noopener noreferrer">added completion for podman (#1194)</a></li>
</ul>
</li>
<li>
<p>@alightgoesout:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1193" target="_blank" rel="noopener noreferrer">improved and updated jj completions (#1193)</a></li>
</ul>
</li>
</ul>
<h2>plugin-examples</h2>
<ul>
<li>@jochumdev:
<ul>
<li><a href="https://github.com/nushell/plugin-examples/pull/9" target="_blank" rel="noopener noreferrer">fixed README config and updated nu deps in rust/nu_plugin_example (#9)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>@NotTheDr01ds:
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2094" target="_blank" rel="noopener noreferrer">published TWiN 329 (#2094)</a></li>
</ul>
</li>
</ul>
<h2>New nu-parser</h2>
<ul>
<li>@AucaCoyan:
<ul>
<li><a href="https://github.com/nushell/new-nu-parser/pull/62" target="_blank" rel="noopener noreferrer">normalized new lines in tests (\r\n) (#62)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@mkatychev:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/238" target="_blank" rel="noopener noreferrer">added eslint configuration file (#238)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #329</title>
      <link>https://www.nushell.sh/blog/2025-12-12-twin0329.html</link>
      <guid>https://www.nushell.sh/blog/2025-12-12-twin0329.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #329</source>
      <description>This Week in Nushell #329
Published Saturday, 2025-12-13, including PRs merged Friday, 2025-12-05 through Thursday, 2025-12-11.
Nushell


@fdncred:

updated explore regex comman...</description>
      <content:encoded><![CDATA[
<p>Published Saturday, 2025-12-13, including PRs merged Friday, 2025-12-05 through Thursday, 2025-12-11.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17149" target="_blank" rel="noopener noreferrer">updated explore regex command to look more helpful and professional (#17149)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17133" target="_blank" rel="noopener noreferrer">bumped the rust-toolchain to 1.90.0 (#17133)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17139" target="_blank" rel="noopener noreferrer">bumped bytesize from 2.1.0 to 2.3.1 (#17139)</a></li>
</ul>
</li>
<li>
<p>@andrewgazelka:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17132" target="_blank" rel="noopener noreferrer">added $history variable and structured response format (#17132)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17121" target="_blank" rel="noopener noreferrer">added REPL-style state persistence across evaluations (#17121)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17120" target="_blank" rel="noopener noreferrer">refactored mcp to extract tool descriptions to markdown files (#17120)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17119" target="_blank" rel="noopener noreferrer">switched mcp to output NUON format instead of expanded string (#17119)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17131" target="_blank" rel="noopener noreferrer">upgraded nushell to 0.109.1 for release and nightly workflow (#17131)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17126" target="_blank" rel="noopener noreferrer">fixed <code>table -i false</code> panic when there is an index column (#17126)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17125" target="_blank" rel="noopener noreferrer">fixed http DNS resolution 'Service not supported' error in Docker containers (#17125)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17130" target="_blank" rel="noopener noreferrer">prevented merge_predecl from moving all predecls to overlay (#17130)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17103" target="_blank" rel="noopener noreferrer">made --env-config and --config errors lead to error status code when running nu scripts (#17103)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17052" target="_blank" rel="noopener noreferrer">fixed pipefail behavior inside try block (#17052)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17129" target="_blank" rel="noopener noreferrer">changed home-path/temp-path to home-dir/temp-dir (#17129)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17127" target="_blank" rel="noopener noreferrer">added record conversion to <code>into list</code> (#17127)</a></li>
</ul>
</li>
<li>
<p>@ayax79:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17116" target="_blank" rel="noopener noreferrer">added Azure blob storage support for polars (#17116)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17084" target="_blank" rel="noopener noreferrer">updated flake.lock and added <code>latest</code> devshell variant (#17084)</a></li>
</ul>
</li>
<li>
<p>@sgvictorino:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17058" target="_blank" rel="noopener noreferrer">used <code>Stack::get_config()</code> in more places (#17058)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>
<p>@Minhir:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1192" target="_blank" rel="noopener noreferrer">simplified fnm config and made it respect package.json (#1192)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1191" target="_blank" rel="noopener noreferrer">tweaked a variety of scripts (#1191)</a></li>
</ul>
</li>
<li>
<p>@CAESIUS-TIM:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1190" target="_blank" rel="noopener noreferrer">fixed grt in git-aliases (#1190)</a></li>
</ul>
</li>
<li>
<p>@ehdevries:</p>
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1188" target="_blank" rel="noopener noreferrer">fixed bugs in panache-git showing modified files and non-home dirs (#1188)</a></li>
</ul>
</li>
</ul>
<h2>New nu-parser</h2>
<ul>
<li>@AucaCoyan:
<ul>
<li><a href="https://github.com/nushell/new-nu-parser/pull/61" target="_blank" rel="noopener noreferrer">updated rust-toolchain to 1.90 (#61)</a></li>
</ul>
</li>
</ul>
<h2>Awesome Nu</h2>
<ul>
<li>@InnocentZero:
<ul>
<li><a href="https://github.com/nushell/awesome-nu/pull/141" target="_blank" rel="noopener noreferrer">added supac to Integrations (#141)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@luk3953:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2091" target="_blank" rel="noopener noreferrer">added 'Coming from PowerShell' guide to the Nushell Book (#2091)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2090" target="_blank" rel="noopener noreferrer">published TWiN 328 (#2090)</a></li>
</ul>
</li>
</ul>
<h2>Tree-sitter</h2>
<ul>
<li>@mkatychev:
<ul>
<li><a href="https://github.com/nushell/tree-sitter-nu/pull/236" target="_blank" rel="noopener noreferrer">removed indirection for punctuation (#236)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #328</title>
      <link>https://www.nushell.sh/blog/2025-12-05-twin0328.html</link>
      <guid>https://www.nushell.sh/blog/2025-12-05-twin0328.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #328</source>
      <description>This Week in Nushell #328
Published Sunday, 2025-12-07, including PRs merged Friday, 2025-11-28 through Thursday, 2025-12-04.
Nushell


@blackhat-hemsworth:

fixed parsing issue...</description>
      <content:encoded><![CDATA[
<p>Published Sunday, 2025-12-07, including PRs merged Friday, 2025-11-28 through Thursday, 2025-12-04.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@blackhat-hemsworth:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17115" target="_blank" rel="noopener noreferrer">fixed parsing issue with multiarm match + guard (#17115)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17109" target="_blank" rel="noopener noreferrer">fixed handling of ranges with respect to parentheses (#17109)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17106" target="_blank" rel="noopener noreferrer">fixed issue with alias "missing required flag" on create (#17106)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17075" target="_blank" rel="noopener noreferrer">deduplicated types in type_check process to improve error message (#17075)</a></li>
</ul>
</li>
<li>
<p>@migraine-user:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17110" target="_blank" rel="noopener noreferrer">fixed typo in docs for <code>each</code> (#17110)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17108" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.39.2 to 1.40.0 (#17108)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17078" target="_blank" rel="noopener noreferrer">bumped schemars from 1.0.4 to 1.1.0 (#17078)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17076" target="_blank" rel="noopener noreferrer">bumped actions/checkout from 5 to 6 (#17076)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17107" target="_blank" rel="noopener noreferrer">bumped version to 0.109.2 (#17107)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17101" target="_blank" rel="noopener noreferrer">added backticks to readmes (#17101)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17085" target="_blank" rel="noopener noreferrer">fixed env.rs tests (#17085)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17010" target="_blank" rel="noopener noreferrer">improved std/help with colors, proper examples, and fixed output (#17010)</a></li>
</ul>
</li>
<li>
<p>@yanek:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17097" target="_blank" rel="noopener noreferrer">added <code>short</code> error_style (#17097)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17096" target="_blank" rel="noopener noreferrer">attempted to fix winget automatic validation error (#17096)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17094" target="_blank" rel="noopener noreferrer">fixed use constants in bare-word-strings with source error (#17094)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17093" target="_blank" rel="noopener noreferrer">bumped to dev version 0.109.1 (#17093)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17092" target="_blank" rel="noopener noreferrer">fixed http get panic (#17092)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17082" target="_blank" rel="noopener noreferrer">bumped version to 0.109.0 (#17082)</a></li>
</ul>
</li>
<li>
<p>@kaathewisegit:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17063" target="_blank" rel="noopener noreferrer">fixed overflow errors in duration integer multiplication (#17063)</a></li>
</ul>
</li>
<li>
<p>@ysthakur:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17060" target="_blank" rel="noopener noreferrer">fixed custom completer spans relative to command expr (#17060)</a></li>
</ul>
</li>
<li>
<p>@Dorumin:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17056" target="_blank" rel="noopener noreferrer">added --tag on job flush (#17056)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@orthonormalremy:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1187" target="_blank" rel="noopener noreferrer">added support for module completions in just-completions (#1187)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@samoylovfp:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2089" target="_blank" rel="noopener noreferrer">added 'chunks' subcommand to binary common commands (#2089)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2088" target="_blank" rel="noopener noreferrer">added release notes for <code>v0.109.1</code> (#2088)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2084" target="_blank" rel="noopener noreferrer">added release notes for <code>v0.109.0</code> (#2084)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2087" target="_blank" rel="noopener noreferrer">bumped mdast-util-to-hast from 13.2.0 to 13.2.1 (#2087)</a></li>
</ul>
</li>
<li>
<p>@Kissaki:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2086" target="_blank" rel="noopener noreferrer">improved v0.109.0 Release Notes (#2086)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2085" target="_blank" rel="noopener noreferrer">published TWiN 327 (#2085)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/1878" target="_blank" rel="noopener noreferrer">updated Cookbook direnv instructions for new std helper (#1878)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2077" target="_blank" rel="noopener noreferrer">refreshed Nu command docs for v0.109.0 (#2077)</a></li>
</ul>
</li>
</ul>
<h2>reedline</h2>
<ul>
<li>@cptpiepmatz:
<ul>
<li><a href="https://github.com/nushell/reedline/pull/981" target="_blank" rel="noopener noreferrer">bumped <code>crossbeam-channel</code> (#981)</a></li>
<li><a href="https://github.com/nushell/reedline/pull/980" target="_blank" rel="noopener noreferrer">bumped to 0.44.0 (#980)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.109.1</title>
      <link>https://www.nushell.sh/blog/2025-12-02-nushell_v0_109_1.html</link>
      <guid>https://www.nushell.sh/blog/2025-12-02-nushell_v0_109_1.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.109.1</source>
      <description>Nushell 0.109.1
Today, we&amp;apos;re releasing version 0.109.1 of Nu. This release fixes some regressions of Nu 0.109.0, especially fixes to http get and source.
Where to get it
Nu 0.10...</description>
      <content:encoded><![CDATA[
<p>Today, we're releasing version 0.109.1 of Nu. This release fixes some regressions of Nu 0.109.0, especially fixes to <code>http get</code> and <code>source</code>.</p>
<h1>Where to get it</h1>
<p>Nu 0.109.1 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.109.1" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

<ul>
<li><a href="#changes-toc"><em>Changes</em></a>
<ul>
<li><a href="#bug-fixes-toc"><em>Bug fixes</em></a>
<ul>
<li><a href="#fix-http-get-domain-overflow-toc"><em>Fix <code>http get</code> domain overflow</em></a></li>
<li><a href="#fix-path-resolution-for-source-using-bare-word-string-interpolation-toc"><em>Fix path resolution for <code>source</code> using bare-word-string-interpolation</em></a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#notes-for-plugin-developers-toc"><em>Notes for plugin developers</em></a></li>
<li><a href="#hall-of-fame-toc"><em>Hall of fame</em></a></li>
<li><a href="#full-changelog-toc"><em>Full changelog</em></a></li>
</ul>
<h1><a class="header-anchor" href="#changes-toc"><span>Changes [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h2><a class="header-anchor" href="#bug-fixes-toc"><span>Bug fixes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#fix-http-get-domain-overflow-toc"><span>Fix <code>http get</code> domain overflow [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>The dns resolution #17030 implemented in v0.109.0 for <code>http get</code> could overflow an array for domains with a lot of resolved IPs. This is fixed now by truncating the resolved IP amount.</p>
<h3><a class="header-anchor" href="#fix-path-resolution-for-source-using-bare-word-string-interpolation-toc"><span>Fix path resolution for <code>source</code> using bare-word-string-interpolation [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Fixed a regression in v0.109.0 that disallowed using patterns like:</p>
<div class="language-nu" data-highlighter="shiki" data-ext="nu" style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#abb2bf;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;--shiki-onedarkpro-bg:#282c34"><pre class="shiki shiki-themes dark-plus dark-plus one-dark-pro vp-code"><code class="language-nu"><span class="line"><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#C678DD">  source</span><span style="--shiki-light:#CE9178;--shiki-dark:#CE9178;--shiki-onedarkpro:#98C379"> config/</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">(</span><span style="--shiki-light:#569CD6;--shiki-dark:#569CD6;--shiki-onedarkpro:#E5C07B">$nu</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.os-info.name</span><span style="--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4;--shiki-onedarkpro:#ABB2BF">)</span><span style="--shiki-light:#9CDCFE;--shiki-dark:#9CDCFE;--shiki-onedarkpro:#E06C75">.nu</span></span></code></pre>
</div><h1><a class="header-anchor" href="#notes-for-plugin-developers-toc"><span>Notes for plugin developers [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h1><a class="header-anchor" href="#hall-of-fame-toc"><span>Hall of fame [</span></a><a href="#table-of-contents">toc</a>]</h1>
<p>Thanks to all the contributors below for helping us solve issues, improve documentation, refactor code, and more! 🙏</p>
<p>| author                                     | change                                       | link                                                    |
|</p>
]]></content:encoded>
    </item>
    <item>
      <title>Nushell 0.109.0</title>
      <link>https://www.nushell.sh/blog/2025-11-29-nushell_v0_109_0.html</link>
      <guid>https://www.nushell.sh/blog/2025-11-29-nushell_v0_109_0.html</guid>
      <source url="https://www.nushell.sh/rss.xml">Nushell 0.109.0</source>
      <description>Nushell 0.109.0
Today, we&amp;apos;re releasing version 0.109.0 of Nu. This release adds the option to use regex in the explore command and a bunch of bug fixes and other small tweaks.
W...</description>
      <content:encoded><![CDATA[<!-- NOTE: start from the TODO all the way at the bottom (and sort of work your way up) -->
<h1>Nushell 0.109.0</h1>
<p>Today, we're releasing version 0.109.0 of Nu. This release adds the option to use regex in the <code>explore</code> command and a bunch of bug fixes and other small tweaks.</p>
<h1>Where to get it</h1>
<p>Nu 0.109.0 is available as <a href="https://github.com/nushell/nushell/releases/tag/0.109.0" target="_blank" rel="noopener noreferrer">pre-built binaries</a> or from <a href="https://crates.io/crates/nu" target="_blank" rel="noopener noreferrer">crates.io</a>. If you have Rust installed you can install it using <code>cargo install nu</code>.</p>
<p>As part of this release, we also publish a set of optional <a href="https://www.nushell.sh/book/plugins.html" target="_blank" rel="noopener noreferrer">plugins</a> you can install and use with Nushell.</p>

<ul>
<li><a href="#changes-toc"><em>Changes</em></a>
<ul>
<li><a href="#additions-toc"><em>Additions</em></a>
<ul>
<li><a href="#add-explore-regex-command-toc"><em>Add <code>explore regex</code> command</em></a></li>
<li><a href="#add-name-and-description-to-the-plugin-list-command-toc"><em>Add name and description to the plugin list command</em></a></li>
<li><a href="#other-additions-toc"><em>Other additions</em></a></li>
</ul>
</li>
<li><a href="#other-changes-toc"><em>Other changes</em></a></li>
<li><a href="#bug-fixes-toc"><em>Bug fixes</em></a>
<ul>
<li><a href="#better-errors-for-dynamic-http-commands-toc"><em>Better errors for dynamic <code>http</code> commands</em></a></li>
<li><a href="#allow-streaming-to-commands-with-union-typed-pipeline-input-toc"><em>Allow streaming to commands with union-typed pipeline input</em></a></li>
<li><a href="#fix-split-column-switch-to-0-index-like-other-commands-toc"><em>Fix(<code>split column</code>): switch to 0-index like other commands</em></a></li>
<li><a href="#don-t-error-on-optional-cellpaths-toc"><em>Don't error on optional cellpaths</em></a></li>
<li><a href="#other-fixes-toc"><em>Other fixes</em></a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#notes-for-plugin-developers-toc"><em>Notes for plugin developers</em></a></li>
<li><a href="#hall-of-fame-toc"><em>Hall of fame</em></a></li>
<li><a href="#full-changelog-toc"><em>Full changelog</em></a></li>
</ul>
<!-- TODO: once all the content below is finished and committed, `use nu_scripts/make_release/release-note/notes.nu *` and run `write-toc $this_file`. -->
<!-- NOTE: if you wanna write a section about a breaking change, when it's a very important one,
    please add the following snippet to have a "warning" banner :)
    > see [an example](https://www.nushell.sh/blog/2023-09-19-nushell_0_85_0.html#pythonesque-operators-removal)

    ```md
    ::: warning Breaking change
    See a full overview of the [breaking changes](#breaking-changes)
    :::
    ```
-->
<!-- NOTE: see https://vuepress.github.io/reference/default-theme/markdown.html#custom-containers
    for the list of available *containers*
-->
<h1><a class="header-anchor" href="#changes-toc"><span>Changes [</span></a><a href="#table-of-contents">toc</a>]</h1>
<h2><a class="header-anchor" href="#additions-toc"><span>Additions [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#add-explore-regex-command-toc"><span>Add <code>explore regex</code> command [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>The new <code>explore regex</code> command is meant to provide a TUI for exploring regular expressions and visualizing the results in real time. You can pipe text into the command and that text becomes the "test string" that the regular expressions run on. You can also start it up without piping anything into it and manually type the "test string" and then the regex. You can use the tab key to switch between panes. The arrow keys work to navigate as we as the page up and page down keys, home, and end.
</p>
<h3><a class="header-anchor" href="#add-name-and-description-to-the-plugin-list-command-toc"><span>Add name and description to the plugin list command [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>The <code>plugin list</code> command now adds an inline table containing the plugin commands names and descriptions.</p>
<div class="language-ansi" data-highlighter="shiki" data-ext="ansi" style="background-color:#1e1e1e;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"><pre class="shiki shiki-themes one-dark-pro dark-plus dark-plus vp-code"><code class="language-ansi"><span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">plugin list</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> select</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79"> commands</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> table</span><span style="color:#4aa5f0;--shiki-onedarkpro-font-weight:bold;--shiki-light:#2472C8;--shiki-light-font-weight:bold;--shiki-dark:#2472C8;--shiki-dark-font-weight:bold"> --expand</span><span style="color:#4aa5f0;--shiki-onedarkpro-font-weight:bold;--shiki-light:#2472C8;--shiki-light-font-weight:bold;--shiki-dark:#2472C8;--shiki-dark-font-weight:bold"> --width</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> 80</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╭───┬──────────────────────────────────────────────────────────────────────────╮</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">#</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │                                 </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">commands</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">                                 │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">├───┼──────────────────────────────────────────────────────────────────────────┤</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ ╭───┬────────────┬───────────────────────────────────────╮               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">#</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │    </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">name</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">    │              </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">description</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">              │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ ├───┼────────────┼───────────────────────────────────────┤               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ from eml   │ Parse text as .eml and create record. │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ from ics   │ Parse text as .ics and create table.  │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">2</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ from ini   │ Parse text as .ini and create table.  │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">3</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ from plist │ Convert plist to Nushell values       │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">4</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ from vcf   │ Parse text as .vcf and create table.  │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">5</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ to plist   │ Convert Nu values into plist          │               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ ╰───┴────────────┴───────────────────────────────────────╯               │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ ╭───┬────────────────────┬─────────────────────────────────────────────╮ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">#</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │        </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">name</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">        │                 </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">description</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">                 │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ ├───┼────────────────────┼─────────────────────────────────────────────┤ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ query              │ Show all the query commands                 │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ query json         │ execute json query on json file (open --raw │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │   │                    │  &lt;file&gt; | query json 'query string')        │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">2</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ query web          │ execute selector query on html/web          │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">3</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ query webpage-info │ uses the webpage crate to extract info from │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │   │                    │  html: title, description, language, links, │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │   │                    │  RSS feeds, Opengraph, Schema.org, and more │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">4</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ query xml          │ Execute XPath 1.0 query on XML input        │ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│   │ ╰───┴────────────────────┴─────────────────────────────────────────────╯ │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╰───┴──────────────────────────────────────────────────────────────────────────╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#other-additions-toc"><span>Other additions [</span></a><a href="#table-of-contents">toc</a>]</h3>
<ul>
<li>
<p>All <code>http</code> commands now support connecting via Unix domain sockets using the <code>--unix-socket</code> (or <code>-U</code>) flag, enabling communication with local services like Docker daemon, systemd, and other IPC services. (<a href="https://github.com/nushell/nushell/pull/16907" target="_blank" rel="noopener noreferrer">#16907</a>)</p>
</li>
<li>
<p><code>str replace</code> now accepts a closure that computes the replacement value for each match (<a href="https://github.com/nushell/nushell/pull/16854" target="_blank" rel="noopener noreferrer">#16854</a>)</p>
</li>
</ul>
<h2><a class="header-anchor" href="#other-changes-toc"><span>Other changes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<ul>
<li>add a <code>--dry</code> flag to <code>mktemp</code>: Don't create a file and just return the path that would have been created. (<a href="https://github.com/nushell/nushell/pull/17039" target="_blank" rel="noopener noreferrer">#17039</a>)</li>
</ul>
<h2><a class="header-anchor" href="#bug-fixes-toc"><span>Bug fixes [</span></a><a href="#table-of-contents">toc</a>]</h2>
<h3><a class="header-anchor" href="#better-errors-for-dynamic-http-commands-toc"><span>Better errors for dynamic <code>http</code> commands [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Defining an HTTP command dynamically using a string for the method used to cause an unclear, uncategorized error. It now produces a clear and specific error message instead.</p>
<div class="language-ansi" data-highlighter="shiki" data-ext="ansi" style="background-color:#1e1e1e;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"><pre class="shiki shiki-themes one-dark-pro dark-plus dark-plus vp-code"><code class="language-ansi"><span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">let</span><span style="color:#c162de;--shiki-light:#BC3FBC;--shiki-dark:#BC3FBC"> method</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> = </span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79">"get"</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">http</span><span style="color:#c162de;--shiki-light:#BC3FBC;--shiki-dark:#BC3FBC"> $method</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79"> example.com</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">Error: </span><span style="color:#e05561;--shiki-light:#cd3131;--shiki-dark:#cd3131">nu::shell::error</span></span>
<span class="line"></span>
<span class="line"><span style="color:#e05561;--shiki-light:#cd3131;--shiki-dark:#cd3131">  ×</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> Invalid command construction</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ╭─[</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-onedarkpro-text-decoration:underline;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-light-text-decoration:underline;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold;--shiki-dark-text-decoration:underline">entry #5:1:26</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">]</span></span>
<span class="line"><span style="color:#80858f80;--shiki-light:#D4D4D480;--shiki-dark:#D4D4D480"> 1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ let method = "get"; http $method example.com</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   · </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">                         ───┬───</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ·                             </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">╰── Using "get" dynamically is bad command construction</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ╰────</span></span>
<span class="line"><span style="color:#42b3c2;--shiki-light:#11A8CD;--shiki-dark:#11A8CD">  help: </span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">Prefer to use `http get` directly</span></span></code></pre>
</div><h3><a class="header-anchor" href="#allow-streaming-to-commands-with-union-typed-pipeline-input-toc"><span>Allow streaming to commands with union-typed pipeline input [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Commands whose input signatures are declared with <code>oneof</code> now accept
streams instead of erroring:</p>
<div class="language-ansi has-collapsed-lines collapsed" data-highlighter="shiki" data-ext="ansi" style="--vp-collapsed-lines:3;background-color:#1e1e1e;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"><pre class="shiki shiki-themes one-dark-pro dark-plus dark-plus vp-code"><code class="language-ansi"><span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">def</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79"> f</span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold"> []: [oneof&lt;list&gt; -&gt; nothing]</span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold"> {}</span></span>
<span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">[]</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> each</span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold"> {}</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> f</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">Error: </span><span style="color:#e05561;--shiki-light:#cd3131;--shiki-dark:#cd3131">nu::shell::only_supports_this_input_type</span></span>
<span class="line"></span>
<span class="line"><span style="color:#e05561;--shiki-light:#cd3131;--shiki-dark:#cd3131">  ×</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> Input type not supported.</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ╭─[</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-onedarkpro-text-decoration:underline;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-light-text-decoration:underline;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold;--shiki-dark-text-decoration:underline">entry #2:1:6</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">]</span></span>
<span class="line"><span style="color:#80858f80;--shiki-light:#D4D4D480;--shiki-dark:#D4D4D480"> 1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ [] | each {} | f</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   · </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">     ──┬─</span><span style="color:#d18f52;--shiki-onedarkpro-font-weight:bold;--shiki-light:#E5E510;--shiki-light-font-weight:bold;--shiki-dark:#E5E510;--shiki-dark-font-weight:bold">      ┬</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ·        </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">│</span><span style="color:#d18f52;--shiki-onedarkpro-font-weight:bold;--shiki-light:#E5E510;--shiki-light-font-weight:bold;--shiki-dark:#E5E510;--shiki-dark-font-weight:bold">       ╰── only oneof&lt;list&lt;any&gt;&gt; input data is supported</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ·        </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">╰── input type: list&lt;any&gt;</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">   ╰────</span></span>
<span class="line"></span></code></pre>
<div class="collapsed-lines"></div></div><h3><a class="header-anchor" href="#switch-split-column-to-0-index-like-other-commands-toc"><span>Switch <code>split column</code> to 0-index like other commands [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Like <code>detect columns</code> or <code>parse</code>, <code>split column</code> now also uses 0-index for the default column names.</p>
<div class="language-ansi" data-highlighter="shiki" data-ext="ansi" style="background-color:#1e1e1e;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"><pre class="shiki shiki-themes one-dark-pro dark-plus dark-plus vp-code"><code class="language-ansi"><span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79">'a b c'</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> detect columns</span><span style="color:#4aa5f0;--shiki-onedarkpro-font-weight:bold;--shiki-light:#2472C8;--shiki-light-font-weight:bold;--shiki-dark:#2472C8;--shiki-dark-font-weight:bold"> --no-headers</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╭───┬─────────┬─────────┬─────────╮</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">#</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column2</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">├───┼─────────┼─────────┼─────────┤</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ a       │ b       │ c       │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╰───┴─────────┴─────────┴─────────╯</span></span>
<span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79">'a b c'</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> split column</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79"> ' '</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╭───┬─────────┬─────────┬─────────╮</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">#</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column1</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column2</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">column3</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">├───┼─────────┼─────────┼─────────┤</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">0</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ a       │ b       │ c       │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╰───┴─────────┴─────────┴─────────╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#don-t-error-on-optional-cellpaths-toc"><span>Don't error on optional cellpaths [</span></a><a href="#table-of-contents">toc</a>]</h3>
<p>Now, when you specify an optional cellpath in <code>update</code>, it won't error if it is not present.</p>
<div class="language-ansi" data-highlighter="shiki" data-ext="ansi" style="background-color:#1e1e1e;--shiki-light-bg:#1E1E1E;--shiki-dark-bg:#1E1E1E;color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"><pre class="shiki shiki-themes one-dark-pro dark-plus dark-plus vp-code"><code class="language-ansi"><span class="line"><span style="color:#4cd1e0;--shiki-light:#29B8DB;--shiki-dark:#29B8DB">&gt; </span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">{</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79">a</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">: </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">1</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold">}</span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold"> |</span><span style="color:#42b3c2;--shiki-onedarkpro-font-weight:bold;--shiki-light:#11A8CD;--shiki-light-font-weight:bold;--shiki-dark:#11A8CD;--shiki-dark-font-weight:bold"> update</span><span style="color:#8cc265;--shiki-light:#0DBC79;--shiki-dark:#0DBC79"> b</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">? </span><span style="color:#c162de;--shiki-onedarkpro-font-weight:bold;--shiki-light:#BC3FBC;--shiki-light-font-weight:bold;--shiki-dark:#BC3FBC;--shiki-dark-font-weight:bold">2</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╭───┬───╮</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">│ </span><span style="color:#8cc265;--shiki-onedarkpro-font-weight:bold;--shiki-light:#0DBC79;--shiki-light-font-weight:bold;--shiki-dark:#0DBC79;--shiki-dark-font-weight:bold">a</span><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4"> │ 1 │</span></span>
<span class="line"><span style="color:#80858f;--shiki-light:#D4D4D4;--shiki-dark:#D4D4D4">╰───┴───╯</span></span></code></pre>
</div><h3><a class="header-anchor" href="#other-fixes-toc"><span>Other fixes [</span></a><a href="#table-of-contents">toc</a>]</h3>
<ul>
<li>
<p>Fixed the new operators <code>not-starts-with</code> and <code>not-ends-with</code> not appearing in <code>help operators</code> (<a href="https://github.com/nushell/nushell/pull/16873" target="_blank" rel="noopener noreferrer">#16873</a>)</p>
</li>
<li>
<p>Fixed a bug in completion matcher where <code>foo "b&lt;tab&gt;</code> doesn't match <code>"bar baz"</code>. (<a href="https://github.com/nushell/nushell/pull/16869" target="_blank" rel="noopener noreferrer">#16869</a>)</p>
</li>
<li>
<p>Fixed a bug in flattening aliased external calls. (<a href="https://github.com/nushell/nushell/pull/16876" target="_blank" rel="noopener noreferrer">#16876</a>)</p>
</li>
<li>
<p>Fixed a bug of wrong argument order when calling <code>$env.config.buffer_editor</code> from <code>config nu</code>. (<a href="https://github.com/nushell/nushell/pull/16877" target="_blank" rel="noopener noreferrer">#16877</a>)</p>
</li>
<li>
<p>Fixed an issue where plugins built without the <code>nu-protocol/sqlite</code> feature would fail to load if <code>$env.config.history.file_format</code> was set to <code>"sqlite"</code>. (<a href="https://github.com/nushell/nushell/pull/16890" target="_blank" rel="noopener noreferrer">#16890</a>)</p>
</li>
<li>
<p>Fixed the output type of <code>version check</code> to be <code>record</code> instead of <code>string</code>. (<a href="https://github.com/nushell/nushell/pull/16893" target="_blank" rel="noopener noreferrer">#16893</a>)</p>
</li>
<li>
<p>Fixed a bug in aliased external command completion where <code>alias ea = ^$env.EDITOR /tmp/test.s; e&lt;tab&gt;</code> gets empty result. (<a href="https://github.com/nushell/nushell/pull/16882" target="_blank" rel="noopener noreferrer">#16882</a>)</p>
</li>
<li>
<p>Fixes a regression that causes absolute paths to be required when opening files with the polars plugin. (<a href="https://github.com/nushell/nushell/pull/16900" target="_blank" rel="noopener noreferrer">#16900</a>)</p>
</li>
<li>
<p>The <code>which</code> command now filters files found in <code>$PATH</code> to include only executables. (<a href="https://github.com/nushell/nushell/pull/16895" target="_blank" rel="noopener noreferrer">#16895</a>)</p>
</li>
<li>
<p>Fixed a regression of custom-completion for short flags without a long name. (<a href="https://github.com/nushell/nushell/pull/16967" target="_blank" rel="noopener noreferrer">#16967</a>)</p>
</li>
<li>
<p>Fixed the "polars slice" command so that it will return a lazyframe output when given a lazyframe as input. Fixes #17065 (<a href="https://github.com/nushell/nushell/pull/17067" target="_blank" rel="noopener noreferrer">#17067</a>)</p>
</li>
</ul>
<h1><a class="header-anchor" href="#notes-for-plugin-developers-toc"><span>Notes for plugin developers [</span></a><a href="#table-of-contents">toc</a>]</h1>
<p>Due to <a href="https://github.com/nushell/nushell/pull/16890" target="_blank" rel="noopener noreferrer">#16890</a>, plugins no longer need to be built with the <code>nu-protocol/sqlite</code> feature.</p>
<h1><a class="header-anchor" href="#hall-of-fame-toc"><span>Hall of fame [</span></a><a href="#table-of-contents">toc</a>]</h1>
<p>Thanks to all the contributors below for helping us solve issues, improve documentation, refactor code, and more! 🙏</p>
<p>| author                                         | change                                                        | link                                                    |
|</p>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #327</title>
      <link>https://www.nushell.sh/blog/2025-11-28-twin0327.html</link>
      <guid>https://www.nushell.sh/blog/2025-11-28-twin0327.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #327</source>
      <description>This Week in Nushell #327
Published Saturday, 2025-11-29, including PRs merged Friday, 2025-11-21 through Thursday, 2025-11-27.
Integrations

@hustcer:

used explicit key for De...</description>
      <content:encoded><![CDATA[
<p>Published Saturday, 2025-11-29, including PRs merged Friday, 2025-11-21 through Thursday, 2025-11-27.</p>
<h2>Integrations</h2>
<ul>
<li>@hustcer:
<ul>
<li><a href="https://github.com/nushell/integrations/pull/74" target="_blank" rel="noopener noreferrer">used explicit key for Debian / Ubuntu repo (#74)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@xav-ie:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2082" target="_blank" rel="noopener noreferrer">fixed carapace examples (#2082)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2078" target="_blank" rel="noopener noreferrer">updated vuepress plugins (fix CMD/Ctrl+K!) (#2078)</a></li>
</ul>
</li>
<li>
<p>@hongquan:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2080" target="_blank" rel="noopener noreferrer">used explicit key for Debian / Ubuntu repo (#2080)</a></li>
</ul>
</li>
<li>
<p>@hustcer:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2079" target="_blank" rel="noopener noreferrer">fixed missing sidebar config in /blog/* build output (#2079)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2076" target="_blank" rel="noopener noreferrer">updated GitHub actions and node to 22 (#2076)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2075" target="_blank" rel="noopener noreferrer">fixed warning about vuepress plugins being used multiple times (#2075)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2074" target="_blank" rel="noopener noreferrer">upgraded vuepress and related plugins (#2074)</a></li>
</ul>
</li>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2073" target="_blank" rel="noopener noreferrer">published TWiN 326 (#2073)</a></li>
</ul>
</li>
</ul>
<h2>Nushell</h2>
<ul>
<li>
<p>@blackhat-hemsworth:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17067" target="_blank" rel="noopener noreferrer">adjusted polars/slice command to return lazy output on lazy input (#17067)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17066" target="_blank" rel="noopener noreferrer">added <code>--strict</code> flag to <code>first</code> and <code>last</code> commands to raise error on empty list (#17066)</a></li>
</ul>
</li>
<li>
<p>@Tyarel8:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17064" target="_blank" rel="noopener noreferrer">fixed <code>split column</code> to use 0-index like other commands (#17064)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17055" target="_blank" rel="noopener noreferrer">made <code>update</code> not error on optional cellpaths (#17055)</a></li>
</ul>
</li>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17054" target="_blank" rel="noopener noreferrer">made <code>first</code> and <code>last</code> return <code>nothing</code> on empty results (#17054)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17049" target="_blank" rel="noopener noreferrer">allowed overriding half of the span in custom/external completer (#17049)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17044" target="_blank" rel="noopener noreferrer">fixed flag values with spaces &amp; wrong position arg for custom completion without placeholder (#17044)</a></li>
</ul>
</li>
<li>
<p>@sgvictorino:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17048" target="_blank" rel="noopener noreferrer">allowed streaming to commands with union-typed pipeline input (#17048)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17013" target="_blank" rel="noopener noreferrer">prevented <code>nu-table</code> from adding empty column when there's only 1 column (#17013)</a></li>
</ul>
</li>
<li>
<p>@ItsHarper:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/16886" target="_blank" rel="noopener noreferrer">added <code>--optional</code> flag to <code>std-rfc/iter only</code> (#16886)</a></li>
</ul>
</li>
</ul>
<h2>Nu_Scripts</h2>
<ul>
<li>@NotTheDr01ds:
<ul>
<li><a href="https://github.com/nushell/nu_scripts/pull/1084" target="_blank" rel="noopener noreferrer">removed direnv hook example (#1084)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>This week in Nushell #326</title>
      <link>https://www.nushell.sh/blog/2025-11-21-twin0326.html</link>
      <guid>https://www.nushell.sh/blog/2025-11-21-twin0326.html</guid>
      <source url="https://www.nushell.sh/rss.xml">This week in Nushell #326</source>
      <description>This Week in Nushell #326
Published Friday, 2025-11-21, including PRs merged Friday, 2025-11-14 through Thursday, 2025-11-20.
Nushell


@fdncred:

added rfind ability to the fin...</description>
      <content:encoded><![CDATA[
<p>Published Friday, 2025-11-21, including PRs merged Friday, 2025-11-14 through Thursday, 2025-11-20.</p>
<h2>Nushell</h2>
<ul>
<li>
<p>@fdncred:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17045" target="_blank" rel="noopener noreferrer">added rfind ability to the find command (#17045)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17023" target="_blank" rel="noopener noreferrer">updated to latest reedline (#17023)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17043" target="_blank" rel="noopener noreferrer">bumped crate-ci/typos from 1.39.0 to 1.39.2 (#17043)</a></li>
</ul>
</li>
<li>
<p>@Dorumin:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17039" target="_blank" rel="noopener noreferrer">added --dry to mktemp (#17039)</a></li>
</ul>
</li>
<li>
<p>@KaiSforza:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17037" target="_blank" rel="noopener noreferrer">added all <code>LabeledError</code> structure parts to <code>error make</code> (#17037)</a></li>
</ul>
</li>
<li>
<p>@Jan9103:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17036" target="_blank" rel="noopener noreferrer">fixed into_sqlite by passing a span along (#17036)</a></li>
</ul>
</li>
<li>
<p>@mrdgo:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17035" target="_blank" rel="noopener noreferrer">fixed a typo (#17035)</a></li>
</ul>
</li>
<li>
<p>@cptpiepmatz:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17030" target="_blank" rel="noopener noreferrer">improved DNS-related errors (#17030)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17022" target="_blank" rel="noopener noreferrer">used <code>rustc</code> as external instead of <code>sleep</code> for highlight test (#17022)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17019" target="_blank" rel="noopener noreferrer">used native cert store on Android for rustls (#17019)</a></li>
</ul>
</li>
<li>
<p>@blindFS:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17026" target="_blank" rel="noopener noreferrer">included already parsed module names in dotnu completion (#17026)</a></li>
<li><a href="https://github.com/nushell/nushell/pull/17025" target="_blank" rel="noopener noreferrer">fixed wrong span of <code>export def/extern</code> with attributes &amp; snippet completion for attributable commands (#17025)</a></li>
</ul>
</li>
<li>
<p>@WindSoilder:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/17017" target="_blank" rel="noopener noreferrer">added <code>call: DynamicCompletionCall</code> parameter to <code>get_dynamic_completion</code> and allowed returning span (#17017)</a></li>
</ul>
</li>
<li>
<p>@taearls:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/16999" target="_blank" rel="noopener noreferrer">improved error message when <code>plugin add</code> fails due to missing config directory (#16999)</a></li>
</ul>
</li>
<li>
<p>@Tyarel8:</p>
<ul>
<li><a href="https://github.com/nushell/nushell/pull/16933" target="_blank" rel="noopener noreferrer">added example on how to delete original columns in <code>group-by</code> (#16933)</a></li>
</ul>
</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>
<p>@NotTheDr01ds:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2071" target="_blank" rel="noopener noreferrer">caught up TWiN 319 to 325 backlog (#2071)</a></li>
</ul>
</li>
<li>
<p>@app/dependabot:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2070" target="_blank" rel="noopener noreferrer">bumped js-yaml from 3.14.1 to 3.14.2 (#2070)</a></li>
</ul>
</li>
<li>
<p>@QazCetelic:</p>
<ul>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2069" target="_blank" rel="noopener noreferrer">documented differences between <code>get</code> and <code>select</code> (#2069)</a></li>
<li><a href="https://github.com/nushell/nushell.github.io/pull/2068" target="_blank" rel="noopener noreferrer">added explanations and examples for brackets to operators page (#2068)</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
    </item>
  </channel>
</rss>