Skip to content

Commit 5a6b8cb

Browse files
authored
std-lib breaking changes (#1578)
* std-lib breaking changes * small typo
1 parent 1e826e0 commit 5a6b8cb

File tree

1 file changed

+38
-4
lines changed

1 file changed

+38
-4
lines changed

blog/2024-10-15-nushell_0_99_0.md

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@ author_site: https://twitter.com/nu_shell
55
author_image: https://www.nushell.sh/blog/images/nu_logo.png
66
excerpt: Today, we're releasing version 0.99.0 of Nu. This release adds...
77
---
8+
89
<!-- TODO: complete the excerpt above -->
910

1011
# Nushell 0.99.0
1112

1213
Nushell, or Nu for short, is a new shell that takes a modern, structured approach to your command line. It works seamlessly with the data from your filesystem, operating system, and a growing number of file formats to make it easy to build powerful command line pipelines.
1314

1415
<!-- TODO: write this excerpt -->
16+
1517
Today, we're releasing version 0.99.0 of Nu. This release adds...
1618

1719
# Where to get it
@@ -21,6 +23,7 @@ Nu 0.99.0 is available as [pre-built binaries](https://github.com/nushell/nushel
2123
As part of this release, we also publish a set of optional plugins you can install and use with Nu. To install, use `cargo install nu_plugin_<plugin name>`.
2224

2325
# Table of contents
26+
2427
- [_Highlights and themes of this release_](#highlights-and-themes-of-this-release-toc)
2528
- [_Changes_](#changes-toc)
2629
- [_Additions_](#additions-toc)
@@ -48,6 +51,7 @@ As part of this release, we also publish a set of optional plugins you can insta
4851
-->
4952

5053
# Highlights and themes of this release [[toc](#table-of-content)]
54+
5155
<!-- NOTE: if you wanna write a section about a breaking change, when it's a very important one,
5256
please add the following snippet to have a "warning" banner :)
5357
> see [an example](https://www.nushell.sh/blog/2023-09-19-nushell_0_85_0.html#pythonesque-operators-removal)
@@ -68,8 +72,37 @@ As part of this release, we also publish a set of optional plugins you can insta
6872

6973
## Breaking changes [[toc](#table-of-content)]
7074

75+
### Standard Library
76+
77+
The internal storage location for the standard library, as well as how it is handled during Nushell start-up, has changed to improve launch times. While every effort has been made to ensure backward-compatibility, there may be some corner-cases in how other scripts and modules have imported `std` in the past.
78+
79+
If you run into an issue, try the following import pattern. Replace `log` or `formats` with the module name you are using:
80+
81+
```nu
82+
# If the module commands should be "prefixed", e.g., `log warning "Hello"`
83+
use std/log
84+
85+
# When the module's command names should be available in the current namespace
86+
# E.g., `ls | to jsonl`
87+
use std/formats *
88+
```
89+
90+
Refer to the [Standard Library](/book/standard_library.md) documentation for more information.
91+
7192
## Deprecations [[toc](#table-of-content)]
7293

94+
### Standard Library - Directory Stack / Shells / dirs Module
95+
96+
- [#13842](https://github.com/nushell/nushell/pull/13842): Starting with the next release, Nushell will no longer automatically load the `std/dirs` aliases at startup. In 0.99.0, using one of these aliases (`n`, `p`, `g`, `enter`, `dexit`, or `shells`) will result in a warning message.
97+
98+
To disable the warning message and prepare for 0.100.0, add the following to your startup configuration (typically `config.nu` or `env.nu`, etc.):
99+
100+
```nu
101+
use std/dirs shells-aliases *
102+
```
103+
104+
See the [Shells in Shells](/book/shells_in_shells.html) chapter of the Book for more options.
105+
73106
## Removals [[toc](#table-of-content)]
74107

75108
## Bug fixes and other changes [[toc](#table-of-content)]
@@ -107,15 +140,16 @@ As part of this release, we also publish a set of optional plugins you can insta
107140

108141
Thanks to all the contributors below for helping us solve issues and improve documentation :pray:
109142

110-
| author | title | url |
111-
| ------------------------------------ | ----------- | ------------------------------------------------------- |
112-
| [@author](https://github.com/author) | ... | [#12345](https://github.com/nushell/nushell/pull/12345) |
143+
| author | title | url |
144+
| ------------------------------------ | ----- | ------------------------------------------------------- |
145+
| [@author](https://github.com/author) | ... | [#12345](https://github.com/nushell/nushell/pull/12345) |
113146

114147
# Full changelog [[toc](#table-of-content)]
148+
115149
<!-- TODO:
116150
paste the output of
117151
```nu
118152
./make_release/release-note/get-full-changelog
119153
```
120154
here
121-
-->
155+
-->

0 commit comments

Comments
 (0)