This Week in Nushell #366
Published Friday, 2026-08-28, including PRs merged Friday, 2026-08-21 through Thursday, 2026-08-27.
Nushell
@aron-intframe:
@fdncred:
- fixed inferring string from
semver | into string(#18901) - fixed completions to keep the REPL usable when a completer runs
fzforinput list(#18881) - fixed
lines --skip-emptyfor string and byte stream input (#18872) - fixed unmatched
{at end offormat patternandparsepatterns (#18871) - improved performance by stopping parse-time-loading modules and extra cwd walks while typing
use std/(#18841) - reduced ast dependency for ir calls - phase 1 (#18813)
- made named parameters able to pass null or omit parameter entirely for easier shadowing (#18796)
- fixed inferring string from
@kronberger-droid:
@ayax79:
@cptpiepmatz:
@philocalyst:
@pickx:
reedline
@cptpiepmatz:
@catlover-bot:
@kronberger-droid:
- docs(enums): recorded why WordKind::Unicode is not collapsing (#1194)
- fix: guarded the zero-width divisions in the painter and menus (#1187)
- fix(menu): closed the division panics in the columnar menu (#1186)
- feat(helix): accepted a HelixChangeMode event so keybindings can switch mode (#1182)
- refactor(engine): dropped two invariant re-check panics in the event arms (#1181)
- refactor(menu): sliced the list page with get instead of indexing (#1180)
- refactor(menu): read display widths through a checked helper (#1179)
- ci: added nushell's security-audit workflow (#1178)
- chore: bumped wayland-scanner to 0.31.11 for quick-xml 0.41 (#1177)
- refactor(menu): read the picked example through and_then instead of expect (#1174)
- fix(engine): propagated history errors instead of panicking (#1173)
- refactor(engine): read the excluded history item through Option instead of unwrap (#1172)
- fix(engine): kept history traversal alive while moving inside a recalled entry (#1171)
- fix(menu): kept the whole diff when old is a prefix of new (#1170)
- refactor: made three invariant re-checks structural (#1168)
- fix(painter): rebuilt pairs in style_range instead of splitting in place (#1167)
- refactor(menu): removed the panic surfaces in parse_selection_char and truncate_with_ansi (#1165)
- fix(hinter): stopped panicking when the history search fails (#1164)
- refactor(editor): made EditStack a zipper so no index can go stale (#1163)
- chore(external_printer)!: replaced crossbeam with std::sync::mpsc (#1162)
- chore!: dropped the helix feature flag (#1161)
- chore: folded the sqlite/sqlite-dynlib cfg pairs into a _sqlite feature (#1160)
- chore: dropped the idle_callback feature flag (#1158)
- feat(history): let callers construct HistorySessionId (#1157)
- fix(painter): kept the cursor position query off the tty in tests (#1156)
- fix(vi): pasted linewise before the current line, not the previous one (#1155)
- fix(engine): dropped the todo!() arm for SubstringSearch in history navigation (#1154)
- fix(vi): saturated the count parser and capped it at u16::MAX (#1153)
Integrations
Nu_Scripts
- @hongquan:
Documentation
@cptpiepmatz:
@NotTheDr01ds:
@Kissaki:
@dependabot: