_Nu, now noticeably faster_
The 0.30 release is the first to include the engine-p experimental approaches that we mentioned in the last release. These changes streamline the engine, moving it from [async streams to iterators](https://github.com/nushell/nushell/pull/3270), [simplifying how commands handle their arguments](https://github.com/nushell/nushell/pull/3281), and how [outputs are passed from one command to the next](https://github.com/nushell/nushell/pull/3304).
The end result is an engine that is both simpler and much faster. In the above example we run two different benchmarks. The first is a run of [this script](https://github.com/nushell/nu_scripts/blob/main/coloring/gradient.nu) in the Nushell script repo. The second is a tight processing loop over many 10 million small records: `echo 1..10000000 | prepend 777 | append 555 | where $it > 7 | length`.
Though the performance numbers are still early, they're extremely promising.
## New built-in variable `$scope` (stevenbarragan, fdncred)
We're experimenting with a new built-in variable called `$scope`. This gives you access to definitions in scope, including variables.
## New Commands
- [`math sqrt`](https://github.com/nushell/nushell/pull/3239) (luccasmmg)
- [`any?` and `all?`](https://github.com/nushell/nushell/pull/3253) (andrasio)
- [`path parse`, `path join`, and `path split`](https://github.com/nushell/nushell/pull/3256) (kubouch)
- [`into int`](https://github.com/nushell/nushell/pull/3279) (efx)
- [`query json`](https://github.com/nushell/nushell/pull/3327) (fdncred). This is a new experimental query function as we explore how we'd like to do data querying in nushell.
## Documentation (andrasio)
We have a new [guide on how to create Nushell commands](https://github.com/nushell/nushell/pull/3326).
## Improvements (LhKipp, luccasmmg, waldyrious, ilius, fdncred, andrasio, DonnutPanic, ammrkn, sophiajt, schrieveslaach, daschl, nightscape)
- Lots of internal optimization updates: [1](https://github.com/nushell/nushell/pull/3289), [2](https://github.com/nushell/nushell/pull/3292), [3](https://github.com/nushell/nushell/pull/3300), [4](https://github.com/nushell/nushell/pull/3301), [5](https://github.com/nushell/nushell/pull/3306)