2
0
Fork 0
mirror of https://github.com/nushell/nushell synced 2025-02-13 12:43:48 +00:00
Commit graph

208 commits

Author SHA1 Message Date
Jonathan Turner
deff1aa63b
Bump to 0.27.1 () 2021-02-18 18:54:48 +13:00
Jonathan Turner
039f223b53
Bump to 0.27 () 2021-02-16 19:20:05 +13:00
Jonathan Turner
5481db4079
Fix latest clippy warnings () 2021-02-12 23:13:14 +13:00
ammkrn
aa564f5072
display boolean config options as true/false instead of Yes/No () 2021-02-11 21:50:33 +13:00
Saeed Rasooli
b403fb1275
nu-parser + nu-protocol: switch to metric for KB, MB, GB, add KiB, MiB, GiB units ()
fixes inconsistency with formatting/rendering which uses standard Rust byte_unit
https://en.wikipedia.org/wiki/Byte#Multiple-byte_units
2021-02-10 15:31:12 +13:00
Jonathan Turner
6f17662a4e
Update some deps () 2021-02-06 09:54:54 +13:00
Jonathan Turner
c83aea3c89
Bump to 0.26.1 () 2021-02-05 19:38:04 +13:00
Darren Schroeder
ecaea57263
Value helpers ()
* Update README.md

add contributors graphic

* just a couple of helpers

* separated some helpers out to individual fns
2021-02-03 15:06:11 +13:00
Andrés N. Robalino
fa928bd25d
Minimal markdown syntax per element support. () 2021-02-02 12:09:19 -05:00
Jonathan Turner
44e088c6fe
Move filesize to use bigint ()
* Move filesize to be bigint-sized

* Add tests and fix filesize display

* clippy
2021-01-30 11:35:18 +13:00
Darren Schroeder
b052d524da
added pow operator, and filesize math ()
* added pow operator, and filesize math

* removed + and - arms, removed some pow, pow higher precedence

* Update value.rs

Co-authored-by: Jonathan Turner <jonathandturner@users.noreply.github.com>
2021-01-29 07:44:02 -06:00
Darren Schroeder
47c4b8e88a
allow str from to convert more things to string ()
* allow str from to convert more things to string

* fixed FileSize so it reports with units configured

* added tests
2021-01-29 07:43:35 -06:00
Jonathan Turner
388973e9ab
Bump to 0.26.0 () 2021-01-26 23:07:08 +13:00
Jonathan Turner
2e6d836dd1
Flush out! lines, helps autoview () 2021-01-20 07:23:37 +13:00
ahkrr
899d324a9c
fix: error Variable not in scope for a def parameter ()
adding tests to notice regressions on this issue

Co-authored-by: hk <alexhaka10@protonmail.com>
2021-01-20 07:21:11 +13:00
Jonathan Turner
7d07881d96
Bump to 0.25.2 () 2021-01-12 07:50:53 +13:00
Leonhard Kipp
3e6e3a207c
Feature/def signature with comments ()
* Put parse_definition related funcs into own module

* Add failing lexer test

* Implement Parsing of definition signature

This commit applied changes how the signature of a function is parsed. Before
there was a little bit of "quick-and-dirty" string-matching/parsing involved.
Now, a signature is a little bit more properly parsed.
The grammar of a definition signature understood by these parsing-functions is
as follows:
 `[ (parameter | flag | <eol>)* ]`
where
parameter is:
    `name (<:> type)? (<,> | <eol> | (#Comment <eol>))?`
flag is:
    `--name (-shortform)? (<:> type)? (<,> | <eol> | (#Comment <eol>))?`
(Note: After the last item no <,> has to come.)
Note: It is now possible to pass comments to flags and parameters
Example:
[
  d:int          # The required d parameter
  --x (-x):string # The all powerful x flag
  --y (-y):int    # The accompanying y flag
]

(Sadly there seems to be a bug (Or is this expected behaviour?) in the lexer, because of which `--x(-x)` would
be treated as one baseline token and is therefore not correctly recognized as 2. For
now a space has to be inserted)

During the implementation of the module, 2 question arose:
Should flag/parameter names be allowed to be type names?
Example case:
```shell
def f [ string ] { echo $string }
```
Currently an error is thrown

* Fix clippy lints

* Remove wrong comment

* Add spacing

* Add Cargo.lock
2021-01-12 06:53:58 +13:00
Jonathan Turner
93e8f6c05e
Split nu-cli into nu-cli/nu-engine ()
We split off the evaluation engine part of nu-cli into its own crate. This helps improve build times for nu-cli by 17% in my tests. It also helps us see a bit better what's the core engine portion vs the part specific to the interactive CLI piece.

There's more than can be done here, but I think it's a good start in the right direction.
2021-01-10 15:50:49 +13:00
Jonathan Turner
99117ff2ef
Fix reading/writing bigint and bigdecimal () 2021-01-09 12:53:59 +13:00
Jonathan Turner
0e13d9fbaa
Rename the Path and Pattern primitives ()
* Rename the Path primitive to FilePath

* Rename glob pattern also

* more fun

* Fix the Windows path methods
2021-01-08 20:30:41 +13:00
Jonathan Turner
ac9909112f
Remove the line primitive () 2021-01-08 14:45:25 +13:00
Yehuda Katz
f410fb6689
Document lexer ()
* Update dependencies

* Document the lexer and lightly improve its names

The bulk of this pull request adds a substantial amount of new inline
documentation for the lexer. Along the way, I made a few minor changes
to the names in the lexer, most of which were internal.

The main change that affects other files is renaming `group` to `block`,
since the function is actually parsing a block (a list of groups).

* Fix rustfmt

* Update lock

Co-authored-by: Jonathan Turner <jonathandturner@users.noreply.github.com>
Co-authored-by: Jonathan Turner <jonathan.d.turner@gmail.com>
2021-01-07 16:03:00 +13:00
Jonathan Turner
5e72b2a797
Bump to 0.25.1 for the hotfix release () 2021-01-06 15:16:08 +13:00
Jonathan Turner
d297199d7c
Bump to 0.25.0 () 2021-01-05 18:10:24 +13:00
Jonathan Turner
fc44df1e45
Don't leak set/set-env/source scopes via actions () 2021-01-03 19:44:21 +13:00
Joseph T. Lyons
a5f7600f6f
Fix typos () 2021-01-02 17:24:32 +13:00
Jonathan Turner
328b09fe04
Properly error when 'source' argument can't be found () 2021-01-01 17:33:38 +13:00
Jonathan Turner
67acaae53c
Rename cond math ()
* Simplifies 'if' to work on the available scope rather than a stream

* Rename initializer/math for better readability

* Fix description

* fmt
2020-12-21 17:32:06 +13:00
Jonathan Turner
e5b136f70d
Add script sourcing ()
* Add script sourcing

* clippy
2020-12-19 20:47:34 +13:00
Jonathan Turner
058ef69da3
Add set-env for setting environment variables () 2020-12-19 19:25:03 +13:00
Jonathan Turner
ac578b8491
Multiline scripts part 2 ()
* Begin allowing comments and multiline scripts.

* clippy

* Finish moving to groups. Test pass

* Keep going

* WIP

* WIP

* BROKEN WIP

* WIP

* WIP

* Fix more tests

* WIP: alias starts working

* Broken WIP

* Broken WIP

* Variables begin to work

* captures start working

* A little better but needs fixed scope

* Shorthand env setting

* Update main merge

* Broken WIP

* WIP

* custom command parsing

* Custom commands start working

* Fix coloring and parsing of block

* Almost there

* Add some tests

* Add more param types

* Bump version

* Fix benchmark

* Fix stuff
2020-12-18 20:53:49 +13:00
Jonathan Turner
5183fd25bb
Bump version () 2020-12-16 09:13:18 +13:00
Jonathan Turner
a30837298d
Bump version () 2020-12-16 06:30:50 +13:00
xolve
f377a3a7b4
Added math abs command. () 2020-12-16 05:37:12 +13:00
Stan Zhang
83c874666a
Date utility commands ()
* updated & added date related commands based on the new design

* added proper error handling when date format string is invalid

* fixed format issue

* fixed an issue caused due to the change in primitive Date type

* added `date list-timezone` command to list all supported time zones and updated `date to-timezone` accordingly
2020-12-12 12:18:03 -06:00
Jonathan Turner
e299e76fcf
Bump to 0.23 () 2020-11-25 07:22:27 +13:00
Jonathan Turner
930f9f0063
Fix new clippy warnings ()
* Fix new clippy warnings

* Fork serde-hjson and bring in

* Fork serde-hjson and bring in

* Fix clippy lint again
2020-11-22 13:37:16 +13:00
Darren Schroeder
b412ff92c0
Seq with dates ()
* seq with dates - wip

* everything seems to be working, yay!

* clippy
2020-11-11 14:35:02 -06:00
Jonathan Turner
5a75e11b0e
Revert "Getting closer to multiline scripts ()" ()
This reverts commit e66bf70589.
2020-11-10 18:22:13 +13:00
Jonathan Turner
e66bf70589
Getting closer to multiline scripts ()
* Begin allowing comments and multiline scripts.

* clippy

* Finish moving to groups. Test pass
2020-11-10 16:52:42 +13:00
Jonathan Turner
cb8491cfee
Bump to 0.22 () 2020-11-04 07:31:41 +13:00
Darren Schroeder
ec77c572b9
handle precision a tiny bit better than just hard coding to 4 decimal places. () 2020-10-31 06:40:28 +13:00
Darren Schroeder
4e17292a12
Seq for nushell ()
* seq command - WIP

* why, oh why

* works with parameters

* widths should've been optional

* dbg messages

* working. rest had to be first.

* updated so that it outputs a table instead of just strings

* made to work with floats, allowed separator be more than 1 char

* clippy

* fixed tests

* changed terminator help desc

* commit to get ci moving again
2020-10-29 15:51:48 -05:00
Leonhard Kipp
c6fe58467b
Change alias shape inference to proposal of RFC#4 ()
* Change alias shape inference to proposal of RFC#4

* Remove commented code

* Fix typo

* Change comment to be more informative

* Make match statement to lookup in table

* Remove resolved question

https://github.com/nushell/nushell/pull/2685#discussion_r509832054

* Pick ...or_insert_dependency functions into pieces

Previously there was get_shape_of_expr_or_insert dependency, now there is
get_shape_of_expr and get_shape_of_expr_or_insert_dependency

2 new functions have been added: get_result_shape_of_math_expr and
get_result_shape_of_math_expr_or_insert_dependency

* Remove flattening of deep binary expressions

Previously deep binary expressions have been flattened through the insertion of
fake vars. This logic was quite complicated. Now if a variable depends on the
result shape of a binary expression and the result shape can't be computed,
the variable simply depends on the whole binary.

* Change Expression::Variable(Variable::It(...)) to Expression::Variable(...)

* Simplify get_result_shapes_in_math_expr

* Simplify infer_shapes_in_binary_expr

* Clarify comment

* Clarify comment

* Fix clippy lint

* Move check for real var into checked_insert

* Remove comment

* Rename var
2020-10-29 06:49:38 +13:00
Jonathan Turner
8229af7591
Improve parameter inference for blocks () 2020-10-28 07:47:11 +13:00
Jonathan Turner
ee76523507
Add in parameter inference for blocks () 2020-10-27 20:37:35 +13:00
Darren Schroeder
1b0ed30516
Added a bunch of extensions as helpers ()
* Added a bunch of extensions as helpers

* change to restart ci
2020-10-26 09:25:06 -05:00
Jonathan Turner
a6fdee4a51
bump to 0.21.1 ()
* bump to 0.21.1

* bump trash version
2020-10-26 21:10:06 +13:00
Jonathan Turner
6951fb440c
Remove it expansion ()
* Remove it-expansion, take 2

* Cleanup

* silly update to test CI
2020-10-26 19:55:52 +13:00
Andrés N. Robalino
5725e55abb
Flatten rows containing same sub-table columns with distinct column names. () 2020-10-20 05:37:40 -05:00