Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
164 changes: 164 additions & 0 deletions blog/2025-02-14-twin0286.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
---
title: 'This week in Nushell #286'
author: The Nu Authors
author_site: https://nushell.sh
author_image: https://www.nushell.sh/blog/images/nu_logo.png
excerpt: 'Some exciting changes this week in main and nightlies include the first drop of a new Custom Attributes feature - Thanks @Bahex!'
---

# This Week in Nushell #286

Published Friday, 2025-02-14

## Highlights

Happy Valentine's Day from TWiN!

Some exciting changes this week in `main` and nightlies include the first drop of a new Custom Attributes feature - Thanks @Bahex!
This has been a much anticpiated (and discussed) feature. Attributes can now be defined and assigned to custom commands.
Custom Attributes are currently being used to attach nicely-formatted examples to the custom commands in the Standard Library (`std`),
define test cases for the those commands, and even assign new search terms to the help. And there's more to come!

In addition, `std-rfc` has been moved into Nushell-proper (and updated with custom attributes as well). These "early look"/preview
commands can now be used out-of-the-box with `use std-rfc/<submodule>`.

And those who have already wasted far too much time theming their shell can now also custom-theme the Welcome Banner.

## Nushell

- Bahex

- [Added custom command attributes](https://github.com/nushell/nushell/pull/14906)
- [Made `chunks` easier to discover for binary data](https://github.com/nushell/nushell/pull/15117)
- [Fixed scanning tests being affected by user config](https://github.com/nushell/nushell/pull/15113)
- [Updated `std-rfc docs` with actual examples](https://github.com/nushell/nushell/pull/15097)
- [Implemented `run_const` for `const`](https://github.com/nushell/nushell/pull/15082)
- [Exposed constants with `overlay use`](https://github.com/nushell/nushell/pull/15081)
- [Retained state in subshells or with exec-restarts in `std/dirs`](https://github.com/nushell/nushell/pull/15080)
- [Switched to 0-indexing in `explore`](https://github.com/nushell/nushell/pull/15079)
- [Fixed block spans for the `module` keyword](https://github.com/nushell/nushell/pull/15078)

- blindFS

- [Added hover showing manpages for external commands in LSP](https://github.com/nushell/nushell/pull/15115)
- [Fixed inlay hints span issue with user config scripts](https://github.com/nushell/nushell/pull/15071)
- [Fixed LSP exit on `null root_dir`](https://github.com/nushell/nushell/pull/15051)
- [Refactored variable/cell_path completion to be expression-based](https://github.com/nushell/nushell/pull/15033)

- sholderbach

- [Reverted `/` vi binding due to priority bug](https://github.com/nushell/nushell/pull/15111)
- [Bumped Ubuntu runners to 22.04 LTS for tests](https://github.com/nushell/nushell/pull/15109)
- [Bumped yanked dependencies](https://github.com/nushell/nushell/pull/15090)
- [Fixed `match` blocks in `std-rfc/kv` implementation](https://github.com/nushell/nushell/pull/15089)
- [Bumped `bytesize` to fix `into filesize`](https://github.com/nushell/nushell/pull/15088)
- [Refactored/fixed tests affecting the whole command set](https://github.com/nushell/nushell/pull/15073)
- [Used `build_target` information in startup banner](https://github.com/nushell/nushell/pull/15046)
- [Fixed usages of `fmt` to `format number`](https://github.com/nushell/nushell/pull/15041)
- [Triggered tests for patch release branch pushes](https://github.com/nushell/nushell/pull/15037)
- [Implemented fuzzing more realistically with keyword const eval](https://github.com/nushell/nushell/pull/15036)

- hustcer

- [Refactored `kv` commands to replace inline params in SQL queries](https://github.com/nushell/nushell/pull/15108)

- dependabot[bot]

- [Bumped `data-encoding` from 2.7.0 to 2.8.0](https://github.com/nushell/nushell/pull/15101)

- NotTheDr01ds

- [Moved `std-rfc` into Nushell](https://github.com/nushell/nushell/pull/15042)
- [Updated `std-rfc` tests to use `@test` attributes](https://github.com/nushell/nushell/pull/15098)
- [Enabled theming the Welcome Banner](https://github.com/nushell/nushell/pull/15095)
- [Added `std-rfc` README](https://github.com/nushell/nushell/pull/15066)
- [Fixed `char lsep` assignment](https://github.com/nushell/nushell/pull/15065)
- [Added platform-agnostic EoL separator to `char` command](https://github.com/nushell/nushell/pull/15059)
- [Removed `--no-default-features` for `std-lib-and-python-virtualenv` CI](https://github.com/nushell/nushell/pull/15045)

- cptpiepmatz

- [Switched to `proc-macro-error2` from `proc-macro-error`](https://github.com/nushell/nushell/pull/15093)
- [Replaced `IoError::new_with_additional_context` calls with proper spans](https://github.com/nushell/nushell/pull/15056)

- WindSoilder

- [Made plugin compatible with nightly Nushell version](https://github.com/nushell/nushell/pull/15084)
- [Fixed "missing required overlay" error](https://github.com/nushell/nushell/pull/15058)
- [Allowed `export alias` in REPL](https://github.com/nushell/nushell/pull/15054)

- sgvictorino

- [Fixed ranges over zero-length input](https://github.com/nushell/nushell/pull/15062)
- [Removed `nu-check` examples with the `--all` flag](https://github.com/nushell/nushell/pull/15047)

- 132ikl

- [Fixed `match` running closures as blocks](https://github.com/nushell/nushell/pull/15032)

- ysthakur

- [Fixed spread operator lexing in records](https://github.com/nushell/nushell/pull/15023)

- IanManske
- [Reworked operator type errors](https://github.com/nushell/nushell/pull/14429)

## Documentation

- Tyarel8

- [Fixed typo in `custom_commands`](https://github.com/nushell/nushell.github.io/pull/1802)

- NotTheDr01ds

- [Fixed bad localhost link in TWiN 285](https://github.com/nushell/nushell.github.io/pull/1801)
- [Added `def --wrapped` documentation](https://github.com/nushell/nushell.github.io/pull/1792)
- [Published This Week in Nushell #285](https://github.com/nushell/nushell.github.io/pull/1791)

- Bahex

- [Removed mention of `build-string` from `coloring_and_theming.md`](https://github.com/nushell/nushell.github.io/pull/1800)

- Kissaki

- [Combined command and output code blocks](https://github.com/nushell/nushell.github.io/pull/1799)
- [Made code examples executable](https://github.com/nushell/nushell.github.io/pull/1798)
- [Fixed code block spacing](https://github.com/nushell/nushell.github.io/pull/1797)
- [Fixed typos and CI failure caused by typos](https://github.com/nushell/nushell.github.io/pull/1796)
- [Added missing code block language](https://github.com/nushell/nushell.github.io/pull/1795)
- [Dropped empty closing line from code blocks](https://github.com/nushell/nushell.github.io/pull/1794)

- massongit
- [Fixed typo in Japanese README](https://github.com/nushell/nushell.github.io/pull/1793)

## Nu_Scripts

- hongquan

- [Updated `toolkit.nu` per removal of `stdlib-candidate`](https://github.com/nushell/nu_scripts/pull/1046)
- [Provided completion for git subcommands](https://github.com/nushell/nu_scripts/pull/1044)
- [Added autocomplete for "docker image rm"](https://github.com/nushell/nu_scripts/pull/1040)

- hustcer

- [Fixed `from env` custom command](https://github.com/nushell/nu_scripts/pull/1045)

- NotTheDr01ds

- [Deprecated the `nu_scripts` version of `stdlib-candidate`](https://github.com/nushell/nu_scripts/pull/1042)
- [Added `std-rfc/conversions`](https://github.com/nushell/nu_scripts/pull/1032)

- flying-sheep
- [Added subcommand list to `task` module](https://github.com/nushell/nu_scripts/pull/1039)

## reedline

- thomasschafer

- [Implemented clearing the selection when exiting visual mode](https://github.com/nushell/reedline/pull/878)
- [Added Vi `o` command to swap anchor and cursor](https://github.com/nushell/reedline/pull/877)

- deephbz
- [Added atomic unified commands for ChangeInside/DeleteInside in Vi-Mode](https://github.com/nushell/reedline/pull/874)
- [Implemented vi-mode "Yank" (copy)](https://github.com/nushell/reedline/pull/868)
- [Improved Visual Mode Selection and Command Consistency](https://github.com/nushell/reedline/pull/867)