nushell/crates/nu-cmd-extra
Antoine Stevan 456e2a8ee3
move math constants to standard library (#9678)
# Description
we talked about this before in some meetings so i thought, why not?

the hope is that these constants do not require Rust code to be
implemented and that this move will make the Rust source base a bit
smaller 🤞

# User-Facing Changes
mathematical constants (e, pi, tau, phi and gamma) are now in `std math`
rather than `math`

## what can be done
```nushell
> use std; $std.math
> use std math; $math
> use std *; $math
```
will all give
```
╭───────┬────────────────────╮
│ GAMMA │ 0.5772156649015329 │
│ E     │ 2.718281828459045  │
│ PI    │ 3.141592653589793  │
│ TAU   │ 6.283185307179586  │
│ PHI   │ 1.618033988749895  │
╰───────┴────────────────────╯
```
and the following will work too
```nushell
> use std math E; $E
2.718281828459045
```
```nushell
> use std math *; $GAMMA
0.5772156649015329
```

## what can NOT be done
looks like every export works fine now 😌 

# Tests + Formatting
# After Submitting
2023-09-05 19:32:31 +02:00
..
assets REFACTOR: move the 0% commands to nu-cmd-extra (#9404) 2023-07-06 08:31:31 -07:00
src move math constants to standard library (#9678) 2023-09-05 19:32:31 +02:00
tests Clean up tests containing unnecessary cwd: tokens (#9692) 2023-07-17 18:43:51 +02:00
Cargo.toml Bump rust-embed from 6.8.1 to 8.0.0 (#10208) 2023-09-04 21:16:44 +00:00
LICENSE nu-cmd-extra crate infrastructure in place with the Bits command as the model for adding other commands (#9327) 2023-06-01 10:46:16 -07:00
README.md add in a Readme for the crate nu-cmd-extra (#9745) 2023-07-19 21:35:58 -07:00

nu-cmd-extra

the extra commands are not part of the Nushell binary

The commands in this crate are the extra commands of Nushell. They do not get built for the release and it is the responsibility of the developer to build these commands if they want to use them.

These commands are not going to part of the 1.0 Api; meaning that there is no guarantee longer term that these commands will be around into the future. Of course since they are part of the source tree one could always incorporate them into their own custom release.

How to build the commands in this crate

Step 1 is to read the installation notes for Nushell which is located in our Nushell book.

Once Rust is installed you can then build Nushell with the following command.

cargo build --features=extra

Your Nushell binary which just got built is called nu and will be located here.

nushell/target/debug/nu