JT
82d90f4930
Add support for var/string interp for external names ( #729 )
2022-01-13 19:17:45 +11:00
JT
186da4d725
Fixing captures ( #723 )
...
* WIP fixing captures
* small fix
* WIP
* Rewrite to proof-of-concept better parse_def
* Add missing file
* Finish capture refactor
* Fix tests
* Add more tests
2022-01-12 15:06:56 +11:00
Jakub Žádník
733b2836f1
Cleanup parsing of use and hide commands ( #705 )
2022-01-10 12:39:25 +11:00
Jakub Žádník
d0c280f6cc
Fixes how environment is cloned inside tight loops ( #678 )
...
* Improve cd IO error
* Fix environment cloning in loops
* Remove debug print
* Fmt
2022-01-06 09:21:26 +11:00
JT
affb9696c7
Fix directory change lag ( #672 )
2022-01-05 16:50:27 +11:00
JT
41dbc641cc
Some cleanups for cd/PWD ( #667 )
...
* Some cleanups for cd/PWD
* Some cleanups for cd/PWD
2022-01-05 11:26:01 +11:00
Jakub Žádník
74dcd91cc3
Use only $nu.env.PWD for getting the current directory ( #587 )
...
* Use only $nu.env.PWD for getting current directory
Because setting and reading to/from std::env changes the global state
shich is problematic if we call `cd` from multiple threads (e.g., in a
`par-each` block).
With this change, when engine-q starts, it will either inherit existing
PWD env var, or create a new one from `std::env::current_dir()`.
Otherwise, everything that needs the current directory will get it from
`$nu.env.PWD`. Each spawned external command will get its current
directory per-process which should be thread-safe.
One thing left to do is to patch nu-path for this as well since it uses
`std::env::current_dir()` in its expansions.
* Rename nu-path functions
*_with is not *_relative which should be more descriptive and frees
"with" for use in a followup commit.
* Clone stack every each iter; Fix some commands
Cloning the stack each iteration of `each` makes sure we're not reusing
PWD between iterations.
Some fixes in commands to make them use the new PWD.
* Post-rebase cleanup, fmt, clippy
* Change back _relative to _with in nu-path funcs
Didn't use the idea I had for the new "_with".
* Remove leftover current_dir from rebase
* Add cwd sync at merge_delta()
This makes sure the parser and completer always have up-to-date cwd.
* Always pass absolute path to glob in ls
* Do not allow PWD a relative path; Allow recovery
Makes it possible to recover PWD by proceeding with the REPL cycle.
* Clone stack in each also for byte/string stream
* (WIP) Start moving env variables to engine state
* (WIP) Move env vars to engine state (ugly)
Quick and dirty code.
* (WIP) Remove unused mut and args; Fmt
* (WIP) Fix dataframe tests
* (WIP) Fix missing args after rebase
* (WIP) Clone only env vars, not the whole stack
* (WIP) Add env var clone to `for` loop as well
* Minor edits
* Refactor merge_delta() to include stack merging.
Less error-prone than doing it manually.
* Clone env for each `update` command iteration
* Mark env var hidden only when found in eng. state
* Fix clippt warnings
* Add TODO about env var reading
* Do not clone empty environment in loops
* Remove extra cwd collection
* Split current_dir() into str and path; Fix autocd
* Make completions respect PWD env var
2022-01-05 09:30:34 +11:00
JT
8f6843c600
Move $nu.env to $env ( #665 )
...
* Move env from nu builtin to its own
* update samples/tests
2022-01-05 08:34:42 +11:00
JT
36079f1a3d
Port fetch (with fixes) ( #660 )
...
* Port fetch to engine-q
* Fix check for path as a string
* Add a timeout flag and fix some span issues
* Add a temporary fetch command that returns byte streams. Got rid of async stuff as we're using the blocking feature of tokio
* More tweaks for the bytestream
* Rewrite fetch using ByteStreams
* buffer read on bytes directly
Co-authored-by: Stefan Stanciulescu <contact@stefanstanciulescu.com>
2022-01-04 13:01:18 +11:00
JT
b6fcd46075
Some error improvements ( #659 )
2022-01-04 10:14:33 +11:00
JT
ac487dfcbc
Add parser tracing, fix 629 ( #638 )
2022-01-02 08:42:50 +11:00
JT
15b979b06e
Bump reedline ( #634 )
2022-01-01 09:41:29 +11:00
JT
832a801c11
Preserve metatdata in where ( #618 )
2021-12-29 22:17:20 +11:00
JT
62011b6bcc
Bump to 0.42 ( #4234 )
2021-12-28 20:56:59 +11:00
JT
e94b8007c1
Allow update to also insert ( #610 )
2021-12-28 10:11:20 +11:00
Fernando Herrera
53330c5676
def argument check ( #604 )
...
* def argument check
* corrected test
* clippy error
2021-12-28 06:13:52 +11:00
JT
ca6baf7a46
Add single tick string interpolation ( #581 )
...
* Add single tick string interpolation
* give string interpolation its own highlighting
2021-12-26 07:50:02 +11:00
JT
a811eee6b8
Add support for 'open' ( #573 )
2021-12-25 06:24:55 +11:00
JT
3522bead97
Add string stream and binary stream, add text decoding ( #570 )
...
* WIP
* Add binary/string streams and text decoding
* Make string collection fallible
* Oops, forgot pretty hex
* Oops, forgot pretty hex
* clippy
2021-12-24 18:22:11 +11:00
JT
7f0921a14b
Add metadata command ( #569 )
...
* Add metadata command
* Add string interpolation to testing
2021-12-24 11:16:50 +11:00
Darren Schroeder
ba1ff4cf6c
add configuration of maximum history size ( #563 )
2021-12-23 13:59:00 -06:00
Fernando Herrera
f3c175562d
vi mode ( #561 )
2021-12-23 09:31:16 +00:00
Jakub Žádník
deeb1da359
Allow having only one env conversion ( #548 )
...
Allows setting only `from_string` or `to_string` in `env_conversions`
config. Previously, both were required.
2021-12-22 00:32:38 +02:00
JT
266fac910a
Signature improves, sorted completions ( #545 )
2021-12-22 07:50:18 +11:00
Fernando Herrera
6a35e6b7b6
Dataframe commands ( #542 )
...
* groupby object
* aggregate command
* eager commands
* rest of dataframe commands
2021-12-22 05:32:09 +11:00
Braulio Valdivielso Martínez
d32aec5906
Don't panic if the other end of std{out,err} is closed ( #4179 )
...
* fix #4161
println! and friends will panic on BrokenPipe. The solution is to use
writeln! instead, and ignore the error (or do we want to do something else?)
* test that nu doesn't panic in case of BrokenPipe error
* fixup! test that nu doesn't panic in case of BrokenPipe error
* make do_not_panic_if_broken_pipe only run on UNIX systems
2021-12-21 10:08:41 +11:00
Jakub Žádník
1609101e62
Fix capturing environment variables with " or ' ( #537 )
...
* Fix path expand error span
* Fix capturing env vars containing ' or "; Rustfmt
2021-12-20 23:19:43 +02:00
JT
0571a6ee34
Merged heterogeneous tables ( #536 )
...
* Merged heterogeneous tables
* switch emoji
2021-12-21 08:03:47 +11:00
JT
152467a858
Flatten should flatten embedded table ( #534 )
2021-12-21 06:03:18 +11:00
Fernando Herrera
e949658381
nothing variable ( #527 )
...
* nothing variable
* corrected comments
* added color to nothing like bool
* compare nothing with values
* comparison tests
2021-12-20 12:05:33 +11:00
JT
cf5048205f
Allow empty span slice for now ( #529 )
2021-12-20 06:25:02 +11:00
Ștefan
c37bdcd119
port empty command ( #528 )
...
* port empty command
* Pull upstream and use test_data() function for example tests
2021-12-20 06:11:57 +11:00
JT
2883d6cd1e
Remove Span::unknown ( #525 )
2021-12-19 18:46:13 +11:00
Fernando Herrera
8933dde324
Plugin option for shell ( #517 )
...
* calling plugin without shell
* spelling error
* option on register to select a shell
2021-12-18 12:13:56 -06:00
Fernando Herrera
46b86f3541
Migration of series commands ( #515 )
...
* corrected missing shellerror type
* batch dataframe commands
* removed option to find declaration with input
* ordered dataframe folders
* dataframe command name
* series commands
* date commands
* series commands
* series commands
* clippy correction
* rename commands
2021-12-18 17:45:09 +00:00
Fernando Herrera
d8847f1082
Calling plugin without shell ( #516 )
...
* calling plugin without shell
* spelling error
2021-12-18 09:52:27 -06:00
Jakub Žádník
6a0f404558
Treating environment variables as Values ( #497 )
...
* Proof of concept treating env vars as Values
* Refactor env var collection and method name
* Remove unnecessary pub
* Move env translations into a new file
* Fix LS_COLORS to support any Value
* Fix spans during env var translation
* Add span to env var in cd
* Improve error diagnostics
* Fix non-string env vars failing string conversion
* Make PROMPT_COMMAND a Block instead of String
* Record host env vars to a fake file
This will give spans to env vars that would otherwise be without one.
Makes errors less confusing.
* Add 'env' command to list env vars
It will list also their values translated to strings
* Sort env command by name; Add env var type
* Remove obsolete test
2021-12-17 12:04:54 +11:00
JT
1d74d9c5ae
Fix comment issue and shadowing issue ( #501 )
2021-12-16 09:56:12 +11:00
Darren Schroeder
a5c1dd0da5
allow fg, bg, attributes to be set for all colors in color_config ( #489 )
...
* allow fg, bg, attributes to be set for all colors in color_config
* no need for comma between each key value
2021-12-14 13:34:39 -06:00
Fernando Herrera
4d7dd23779
Plugin json ( #474 )
...
* json encoder
* thread to pass messages
* description for example
2021-12-12 11:50:35 +00:00
Benoît Cortier
d0119ea05d
Sort default context items categorically ( #465 )
...
* Sort default context items categorically
* Separate commands in multiple statements
* Use curly braces instead of square brackets
This prevents undesired reformatting.
2021-12-10 21:07:39 -06:00
Benoît Cortier
e77c6bb284
Port hash
, hash md5
and hash sha256
commands ( #464 )
...
`hash` by itself is only printing the help message.
The other two are simply using the same generic implementation.
2021-12-10 17:14:28 -06:00
Luccas Mateus
7a892ec5d7
To html
and to md
(#453 )
...
* MathEval Variance and Stddev
* Fix tests and linting
* Typo
* Deal with streams when they are not tables
* First draft of these commands
* To MD
* To md and to html
* Fixed cargo and to_md
* `into_abbreviated_string` instead of `into_string`
* Changed how inner tables are displayed
2021-12-09 19:16:35 -06:00
Jae-Heon Ji
c3b6e07de6
Port network/url
command ( #452 )
...
* feat: add url command
* feat(network/url): add sub-command for url
2021-12-09 18:09:30 -06:00
Darren Schroeder
5c27ffa42e
update to latest reedline, change config point name, enable output without ansi ( #458 )
2021-12-09 16:06:26 -06:00
Darren Schroeder
3dc19d4179
Filesize formatting ( #456 )
...
* configure the format of filesize
* type-o
* removed some comments
* updated tests
* accomodated filesize_metric better, added test
2021-12-09 13:19:36 -06:00
Darren Schroeder
a8e5cb871e
optionally remove table output color ( #455 )
2021-12-09 10:00:26 -06:00
Darren Schroeder
8d027a0617
allow decimals/floats to be formatted with precision ( #449 )
...
* allow decimals/floats to be formatted with precision
* better error message
2021-12-07 14:06:14 -06:00
JT
610e3911f6
Bump to 0.41 ( #4187 )
2021-12-08 06:21:00 +13:00
Fernando Herrera
1fd26727c5
Batch of dataframe commands ( #442 )
...
* corrected missing shellerror type
* batch dataframe commands
* removed option to find declaration with input
* ordered dataframe folders
2021-12-06 17:09:49 +13:00
Jae-Heon Ji
9548e5ef5b
feat(random): add random-integer and random-uuid ( #440 )
...
* feat(randome): add random-integer
* feat(random): add random-uuid
2021-12-06 06:22:50 +13:00
Fernando Herrera
22469a9cb1
Improved labeled error from plugins ( #437 )
...
* improved labeled error from plugins
* corrected span
2021-12-05 16:11:19 +13:00
Jakub Žádník
71a8eb6f8e
Add signature to $scope.commands ( #434 )
...
* Add signature to $scope.commands
* Change signature command column name
2021-12-04 22:01:51 +02:00
Fernando Herrera
8a06ea133b
removed unwraps ( #430 )
2021-12-04 12:38:21 +00:00
Jakub Žádník
ee45755ea9
Add canonicalization to source & use paths ( #421 )
...
Also added file path print to FileNotFound error
2021-12-03 21:49:11 +02:00
Jakub Žádník
405a4e58c7
Fix 'help commands'; Add 'is_custom' column ( #420 )
...
* Fix fetching commands; Add is_custom column
* Remove old comment
2021-12-03 20:45:29 +02:00
Fernando Herrera
f3c8d35eb7
Plugin repeated ( #417 )
...
* not repeated decl in file and help
* implemented heashmap for repeated
* sorted scope commands
2021-12-03 14:29:55 +00:00
Luccas Mateus
3d8394a909
to csv
and to tsv
(#412 )
...
* MathEval Variance and Stddev
* Fix tests and linting
* Typo
* Deal with streams when they are not tables
* ToTsv and ToCsv
2021-12-03 15:02:22 +13:00
onthebridgetonowhere
349e83abd0
Port str to-decimal to into decimal command. ( #408 )
...
* Port str to-decimal to into decimal command. Add also a Value::test_float function for tests only
* Add support for handling integers into decimals and fix issues with error span
2021-12-03 15:01:19 +13:00
JT
c5297d2b64
First step ( #411 )
2021-12-03 12:11:25 +13:00
JT
d9bedaae2f
Fix plurals in abbrevations ( #409 )
2021-12-03 10:36:54 +13:00
JT
19766556f3
Add value abbreviations ( #407 )
2021-12-03 10:07:44 +13:00
JT
f57d629b55
Default prompt animations to off ( #403 )
2021-12-03 06:26:23 +13:00
Jae-Heon Ji
43972db131
feat(random): add random-decimal ( #402 )
2021-12-03 06:26:12 +13:00
Darren Schroeder
f2aa952e86
add back debug --raw switch ( #401 )
...
* add back debug --raw switch
* tweak some debug and other settings
2021-12-02 08:32:12 -06:00
JT
071066b6d9
Move prompt animation setting to config ( #400 )
2021-12-02 20:10:40 +13:00
JT
45eba8b922
Introduce metadata into the pipeline ( #397 )
2021-12-02 18:59:10 +13:00
Fernando Herrera
56307553ae
Plugin with evaluated call ( #393 )
...
* plugin trait
* impl of trait
* record and absolute path
* plugin example crate
* clippy error
* correcting cargo
* evaluated call for plugin
2021-12-02 05:42:56 +00:00
Jakub Žádník
124561ff12
Rename add_decls() to use_decls() ( #395 )
...
To reflect better what the method actually does.
2021-12-02 00:25:51 +02:00
Darren Schroeder
d8c721282b
add optional footer to table ( #392 )
...
* add optional footer to table
* missed a draw_table
2021-12-01 13:20:23 -06:00
Jakub Žádník
c17e1473db
Hiding of environment variables ( #362 )
...
* Remember environment variables from previous scope
* Re-introduce env var hiding
Right now, hiding decls is broken
* Re-introduce hidden field of import patterns
All tests pass now.
* Remove/Address tests TODOs
* Fix test typo; Report hiding error
* Add a few more tests
* Fix wrong expected test result
2021-11-30 19:14:05 +13:00
Jae-Heon Ji
21ddfc61f4
add random commands ( #366 )
...
* feat: add random command
* feat: add bool sub-command
2021-11-30 19:12:19 +13:00
Darren Schroeder
ce4d9dc7c6
allow icons to be used in grid -c
( #378 )
...
* add icons to grid output. still needs cleanup
* working but adds a dependency on ansi_term - need to fix that
* update styling, added lots of green code to icons
* clippy
* add config point for grid icons
2021-11-29 14:37:09 -06:00
Andrew
5de12da765
Port over the kill command from nushell ( #381 )
...
* Port over the kill command from nushell
* Update formatting
* Improve error message by combining signal spans
2021-11-30 07:21:55 +13:00
Arthur Targaryen
bab8f6bd28
Port skip
, skip while
and skip until
commands ( #380 )
...
* Add `Skip` command
* Add `SkipUntil` sub-command
* Add `SkipWhile` sub-command
* Add and use `Expression::as_row_condition_block`
2021-11-29 19:52:23 +13:00
Fernando Herrera
ee239a0d37
testing suite for dataframes ( #379 )
2021-11-29 19:50:57 +13:00
Fernando Herrera
c8b16c14d5
Option to replace command same name ( #374 )
...
* option to replace command same name
* moved order of custom value declarations
* arranged dataframe folders and objects
* sort help commands by name
* added dtypes function for debugging
* corrected name for dataframe commands
* command names using function
2021-11-28 19:35:02 +00:00
Andrew
e1e7e94261
Port over the clear command from nushell ( #373 )
...
* Port over the clear command from nushell
* cargo fmt
2021-11-28 08:32:44 +00:00
Arthur
63c3d19c67
Port all?
command ( #365 )
...
* Implement `From<bool>` for `Value`
* Add `All` command
* Change `IntoPipelineData` and `IntoInterruptiblePipelineData` bounds
* Refactor `PipelineIterator` impls
* Add `PipelineData::into_interruptible_iter`
* Use `into_interruptible_iter` instead of `all` helper
* Merge imports
* Refactor `PipelineData::{filter, map}`
* Change comment pronoun
* Treat `RowCondition` as a block
* Remove unnecessary braces
* Address cluppy warning
2021-11-28 06:49:03 +13:00
JT
5d88ed6c75
Add better exit command ( #369 )
2021-11-26 21:00:57 +13:00
JT
f052b3313d
Move row condition to block ( #368 )
2021-11-26 16:49:03 +13:00
Edward Betts
3e93ae8af4
Correct spelling ( #4152 )
2021-11-25 11:11:20 -06:00
Luccas Mateus
8043516d75
from vcf
from ics
and from ini
(#367 )
...
* MathEval Variance and Stddev
* Fix tests and linting
* Typo
* Deal with streams when they are not tables
* `from toml` command
* From ods
* From XLSX
* From ics
* From ini
* From vcf
* Forgot a eprintln!
2021-11-26 06:10:56 +13:00
Fernando Herrera
76019f434e
Dataframe feature ( #361 )
...
* custom value trait
* functions for custom value trait
* custom trait behind flag
* open dataframe command
* command to-df for basic types
* follow path for dataframe
* dataframe operations
* dataframe not default feature
* custom as default feature
* corrected examples in command
2021-11-23 08:14:40 +00:00
Darren Schroeder
250743f60f
add coloring by primitive, bring in nu-ansi-term crate ( #353 )
...
* add coloring by primitive, bring in nu-ansi-term crate
* clippy
2021-11-20 07:12:35 -06:00
ahkrr
e06df124ca
upgrading dependencies ( #4135 )
...
* upgrade dependencies
num-bigint 0.3.1 -> 0.4.3
bigdecimal-rs 0.2.1 -> bigdecimal 0.3.0
s3hander 0.7 -> 0.7.5
bat 0.18 -> 0.18, default-features = false
* upgrade arboard 1.1.0 -> 2.0.1
* in polars use comfy-table instead of prettytable-rs
the last release of prettytable-rs was `0.8.0 Sep 27, 2018`
and it uses `term 0.5` as a dependency
* upgrade dependencies
* upgrade trash -> 2.0.1
Co-authored-by: ahkrr <alexhk@protonmail.com>
2021-11-20 07:11:11 -06:00
JT
e01e73cb67
Add debug and describe ( #351 )
...
* Add debug and describe
* Fix test
2021-11-19 18:00:29 +13:00
JT
ff43ca4d24
Better record types ( #350 )
2021-11-19 17:30:27 +13:00
Fernando Herrera
88988dc9f4
Plugins signature load ( #349 )
...
* saving signatures to file
* loading plugin signature from file
* is_plugin column for help command
2021-11-19 15:51:42 +13:00
Jakub Žádník
f8f437b060
Separate Overlay into its own thing ( #344 )
...
It's no longer attached to a Block. Makes access to overlays more
streamlined by removing this one indirection. Also makes it easier to
create standalone overlays without a block which might come in handy.
2021-11-17 17:23:55 +13:00
Fernando Herrera
b35914bd17
Category option for signature ( #343 )
...
* category option for signature
* category option for signature
* column description for $scope
2021-11-17 17:22:37 +13:00
JT
2590fcbe5c
Bump to 0.40 ( #4129 )
2021-11-16 21:53:03 +13:00
Jakub Žádník
5459d30a24
Add environment variable support for modules ( #331 )
...
* Add 'expor env' dummy command
* (WIP) Abstract away module exportables as Overlay
* Switch to Overlays for use/hide
Works for decls only right now.
* Fix passing import patterns of hide to eval
* Simplify use/hide of decls
* Add ImportPattern as Expr; Add use env eval
Still no parsing of "export env" so I can't test it yet.
* Refactor export parsing; Add InternalError
* Add env var export and activation; Misc changes
Now it is possible to `use` env var that was exported from a module.
This commit also adds some new errors and other small changes.
* Add env var hiding
* Fix eval not recognizing hidden decls
Without this change, calling `hide foo`, the evaluator does not know
whether a custom command named "foo" was hidden during parsing,
therefore, it is not possible to reliably throw an error about the "foo"
name not found.
* Add use/hide/export env var tests; Cleanup; Notes
* Ignore hide env related tests for now
* Fix main branch merge mess
* Fixed multi-word export def
* Fix hiding tests on Windows
* Remove env var hiding for now
2021-11-16 12:16:06 +13:00
Nico Mandery
16db368232
upgrade polars to 0.17 ( #4122 )
2021-11-16 12:01:02 +13:00
Darren Schroeder
ab22619f4a
enable ls_colors for the ls
command ( #340 )
...
* enable ls_colors for the `ls` command
* added wrapping with ansi-cut so the ansi sequences don't bleed over
* clippy
2021-11-15 14:09:17 -06:00
Michael Angerman
4fd020ab7f
delete the file row.rs in nu-protocol/value which has references to RowStream ( #339 )
2021-11-15 18:43:11 +13:00
JT
0f107b2830
Add a config variable with engine support ( #332 )
...
* Add a config variable with engine support
* Add a config variable with engine support
* Oops, cleanup
2021-11-15 08:25:57 +13:00
Luccas Mateus
db2bca56c9
from url
and from eml
(#324 )
...
* MathEval Variance and Stddev
* Fix tests and linting
* Typo
* Deal with streams when they are not tables
* FromEml and FromUrl
Added tests for from eml
2021-11-13 09:46:39 +13:00
JT
568e566adf
Add record literal syntax ( #326 )
2021-11-11 12:14:00 +13:00
JT
bb1740d733
Add from csv and from tsv ( #320 )
2021-11-10 09:17:37 +13:00
JT
e1468c0440
Add some more cell path support for fun ( #316 )
2021-11-09 20:13:05 +13:00
JT
34617fabd9
Do some str collect cleanup ( #312 )
2021-11-09 17:46:26 +13:00
JT
066afb059e
Add magic in variable, part 2 ( #310 )
2021-11-08 20:13:55 +13:00
JT
e9a7def183
Add magic $in variable ( #309 )
...
* Add magic in variable
* Oops, missing file
2021-11-08 19:21:24 +13:00
JT
e0a26cd048
Finish operator overflow checking ( #308 )
2021-11-08 17:44:59 +13:00
JT
19645575d6
Add 'did you mean' error ( #305 )
2021-11-08 10:48:50 +13:00
JT
00a8752c76
Move where to helper ( #302 )
2021-11-07 15:40:44 +13:00
JT
02b8027749
Improve external output in subexprs ( #294 )
2021-11-06 18:50:33 +13:00
JT
183d200b9f
Add updating cell paths
2021-11-05 16:59:12 +13:00
JT
1949ba080e
Add env shorthand
2021-11-04 15:32:35 +13:00
JT
86e1092785
Add more api docs
2021-11-03 13:26:09 +13:00
JT
5e42b14026
Documenting some code and doing cleanups
2021-11-03 08:53:48 +13:00
JT
7b2116dc29
Merge pull request #270 from elferherrera/plugins
...
Plugins for engine q
2021-11-02 19:07:45 +13:00
JT
25846d3c1e
Add zip command
2021-11-02 18:28:28 +13:00
JT
d856cebebd
Add a simple scope variable
2021-11-02 16:08:05 +13:00
JT
89b8ee6ad8
Merge pull request #268 from onthebridgetonowhere/date_enqine_q
...
Port date commands to enqine-q
2021-11-02 11:18:46 +13:00
Fernando Herrera
ef94c71866
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-11-01 07:24:33 +00:00
Fernando Herrera
43c3cfecf7
plugin call function
2021-11-01 07:20:33 +00:00
JT
3176f60b5b
Merge pull request #243 from kubouch/module-files
...
Loading modules from files
2021-11-01 11:08:03 +13:00
Jakub Žádník
7112664b3f
Fix wrong spans of multiple files
...
The introduction of `use <file.nu>` added the possibility of calling
`working_set.add_file()` more than once per parse pass. Some of the
logic handling the file contents offsets prevented it from working and
hopefully, this commit fixes it.
2021-10-31 17:22:10 +02:00
Stefan Stanciulescu
fa8a0958e4
Merge branch 'main' of https://github.com/nushell/engine-q into date_enqine_q
2021-10-31 07:56:32 +01:00
Stefan Stanciulescu
20c770370b
Port date commands to engine-q
2021-10-31 07:54:51 +01:00
Fernando Herrera
f301f686b5
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-10-30 11:01:49 +01:00
JT
cf3f3fde92
Add some support for
2021-10-30 07:15:17 +13:00
Fernando Herrera
51e48bee53
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-10-28 07:12:40 +01:00
JT
bac8b8a450
Add initial ctrl-c support
2021-10-28 17:13:10 +13:00
Fernando Herrera
af02c8f6ea
call info encoder
2021-10-26 20:50:39 +01:00
JT
2b06ce27d3
Bump to 0.39 ( #4097 )
2021-10-27 08:36:41 +13:00
JT
c18f0dcc84
range display touchup
2021-10-26 11:24:10 +13:00
JT
85a69c0a45
WIP
2021-10-26 10:14:21 +13:00
JT
d29208dd9e
WIP
2021-10-26 09:04:23 +13:00
JT
f84582ca2b
WIP
2021-10-26 06:46:26 +13:00
JT
5d19017603
WIP
2021-10-26 05:58:58 +13:00
JT
baac60a5a7
WIP
2021-10-25 19:42:38 +13:00
JT
b5965ee8ef
WIP
2021-10-25 19:31:39 +13:00
JT
397a31e69c
WIP
2021-10-25 17:24:10 +13:00
JT
b6d269e90a
WIP
2021-10-25 17:01:02 +13:00
JT
b322a12f58
Add more helper functions
2021-10-20 18:58:25 +13:00
JT
bd5009a865
Merge pull request #235 from GabrielBG0/interactive-flag
...
cp, mv, and rm commands need to support -i flag
2021-10-16 07:17:03 +13:00
Gabriel B Gutierrez
8c2ae1eed1
-i flag finished, lacking tests
2021-10-14 14:54:51 -03:00
JT
fdd2c35fd9
Add the default help flag
2021-10-14 06:53:27 +13:00
xiuxiu62
8fee0b32e7
impl Value::Record from HashMap<String, Value>
2021-10-12 14:54:28 -07:00
JT
6024a001b4
Clarify todo/fixmes
2021-10-13 06:44:23 +13:00
JT
5f14faf4b4
Custom switch support
2021-10-12 17:49:17 +13:00
JT
96419f168b
Also fix the flag params
2021-10-12 10:17:45 +13:00
JT
63e3552eef
Add the remaining missing operators
2021-10-12 09:35:12 +13:00
JT
1a15f30eb8
Error on missing column during cell path
2021-10-12 08:51:54 +13:00
JT
38bc394a12
Expose errors early when possible
2021-10-12 07:45:31 +13:00
JT
d33a9549b5
Add serialize/deserialize for streams
2021-10-12 07:12:47 +13:00
JT
4d0a253924
Merge main
2021-10-11 14:57:39 +13:00
JT
c3a032950d
Add initial batch of into conversions
2021-10-11 14:56:19 +13:00
Justin
7cafdc9675
Merge branch 'nushell:main' into main
2021-10-10 13:15:54 -07:00
Jakub Žádník
77c520e10b
Make predeclarations scoped; Add hiding tests
...
In some rare cases, the global predeclarations would clash, for example:
> module spam { export def foo [] { "foo" } }; def foo [] { "bar" }
In the example, the `foo [] { "bar" }` would get predeclared first, then
the predeclaration would be overwritten and consumed by `foo [] {"foo"}`
inside the module, then when parsing the actual `foo [] { "bar" }`, it
would not find its predeclaration.
2021-10-10 14:31:13 +03:00
Jakub Žádník
40741254f6
Rewrite hiding system
...
Hiding definitions now should work correctly with repeated use of 'use',
'def' and 'hide' keywords.
The key change is that 'hide foo' will hide all definitions of foo
that were defined/used within the scope (those from other scopes are
still available). This makes the logic simpler and I found it leads to a
simpler mental map: you don't need to remember the order of defined/used
commands withing the scope -- it just hides all.
2021-10-10 13:18:47 +03:00
xiuxiu62
97ca242634
add rm command + stubs for open and save
2021-10-09 21:13:15 -07:00
Arthur Targaryen
a0a63c966f
Add inline attribute and address warning
2021-10-09 19:44:03 +02:00
Arthur Targaryen
75de7f7e61
Implement PartialOrd
for Value::Stream
2021-10-09 19:40:47 +02:00
Arthur Targaryen
4e443b2088
Change helper method visibility
2021-10-09 19:40:47 +02:00
Arthur Targaryen
9e7e8ed48f
Handle not-in
operator
2021-10-09 19:40:47 +02:00
Arthur Targaryen
5f9ad0947d
Fix Range::contains
2021-10-09 19:40:47 +02:00
Arthur Targaryen
4235cf1191
Implement and use PartialOrd
for Value
2021-10-09 19:40:45 +02:00
Arthur Targaryen
357b9ccaa9
Remove unused import
2021-10-09 19:27:54 +02:00
Arthur Targaryen
d1f0740765
Refactor in
operator for Range
2021-10-09 19:27:54 +02:00
Arthur Targaryen
29cbcb8459
Implement RangeIterator::contains
2021-10-09 19:27:54 +02:00
Arthur Targaryen
7f06d6144f
Support in
operator for record and value stream
2021-10-09 19:27:54 +02:00
Arthur Targaryen
7db6b876ab
Simplify Result<Value, _>
comparaison using matches!
2021-10-09 19:27:54 +02:00
Arthur Targaryen
d3bc096d47
Handle reverse ranges
...
This is really ugly and should be refactored.
2021-10-09 19:27:54 +02:00
Arthur Targaryen
8783cf0138
Add basic in
operator support
2021-10-09 19:27:54 +02:00
JT
8df9ea6c68
Add a couple more tests to for
2021-10-10 05:58:33 +13:00
JT
5d36d37d20
Merge branch 'main' into fix_for
2021-10-10 05:20:50 +13:00
JT
e4ce41ba15
Fix the for loop to create vars
2021-10-10 05:10:46 +13:00
Fernando Herrera
41366f6cc4
Merge branch 'main' of https://github.com/nushell/engine-q into unit-test
2021-10-09 14:17:07 +01:00
Fernando Herrera
e3e4ae0591
example unit test
2021-10-09 14:10:10 +01:00
JT
2cd1f634d0
Add map and flat_map to value
2021-10-09 19:20:32 +13:00
JT
44fbf0fce3
Merge pull request #108 from nushell/help_and_start_split
...
Port help and start porting split
2021-10-09 14:07:13 +13:00
JT
4ddc953e38
Port help and start porting split
2021-10-09 14:02:01 +13:00
JT
64d83142c3
More external cleanup
2021-10-09 11:30:10 +13:00
JT
dea9c1482b
Allow vars and subexprs in extern args
2021-10-09 10:51:47 +13:00
xiuxiu62
bdfe8c0888
add mkdir command
2021-10-07 15:20:23 -07:00
xiuxiu62
e8e1ead99d
change diagnostic code on CreateNotPossible
2021-10-07 14:20:03 -07:00
xiuxiu62
adabc839bf
add touch command
2021-10-07 14:18:03 -07:00
Tanishq Kancharla
d481d5ca96
Merge branch 'main' of https://github.com/nushell/engine-q into source-command
2021-10-05 22:16:07 -04:00
xiuxiu62
74d4c501a8
add move, recursive fill, and recursive create procedures
2021-10-05 14:08:39 -07:00
xiuxiu62
9d49618e87
add impl From io::Error and dyn Error for ShellError
2021-10-05 12:54:30 -07:00
JT
e1ebd461d2
Bump to 0.28 ( #4064 )
2021-10-06 06:35:25 +13:00
Justin
4eb43adef2
Merge branch 'nushell:main' into main
2021-10-04 22:02:43 -07:00
xiuxiu62
1b96da5e5b
add custom filesystem shell errors
2021-10-04 20:43:07 -07:00
JT
31ce8c1e33
Variable completions and better ls
2021-10-05 15:46:24 +13:00
JT
535ece4e76
Add unit parsing and eval support
2021-10-05 15:27:39 +13:00
JT
26166192e5
Merge pull request #89 from kubouch/hide-import-patterns
...
Add import patterns to 'hide'
2021-10-05 10:44:13 +13:00
JT
a88058006a
Add path completions
2021-10-05 08:21:31 +13:00
Jakub Žádník
9737d4a614
Change comments
2021-10-04 20:33:27 +03:00
Tanishq Kancharla
dfd321a679
Merge branch 'main' into source-command
2021-10-03 14:25:00 -04:00
JT
758fce8ae3
Merge pull request #86 from nushell/add_cd
...
Add simple cd
2021-10-03 09:20:28 +13:00
JT
91090e1db1
Add simple cd
2021-10-03 09:16:37 +13:00
JT
1d7ab28a0f
Merge pull request #74 from kubouch/module-export
...
Modules: export & hide
2021-10-03 06:25:43 +13:00
JT
e4e1b7a11e
Merge pull request #85 from stormasm/cargo-serde-derive
...
add serde derive to Cargo.toml so nu-protocol compiles standalone
2021-10-03 06:09:11 +13:00
Michael Angerman
be68b84473
add serde derive feature to Cargo.toml so nu-protocol compiles stand alone
2021-10-02 10:02:11 -07:00
Jakub Žádník
81cd03626d
Merge branch 'main' into module-export
2021-10-02 18:53:35 +03:00
Fernando Herrera
03339beae1
prompt with env variable
2021-10-02 14:10:28 +01:00
JT
6b76dd7cd7
Add select
2021-10-02 17:55:05 +13:00
JT
5843acec02
Add wrap and get and cell_path parsing
2021-10-02 15:59:11 +13:00
Tanishq Kancharla
16c60f44d5
merge w/ upstream
2021-10-01 22:09:16 -04:00
JT
c5e9ff5f14
add ps and early help
2021-10-02 10:53:13 +13:00
Jakub Žádník
fb0f83e574
Disallow hiding the same def twice; Add tests
...
Tests got removed after rebase.
2021-10-02 00:12:30 +03:00
Jakub Žádník
25b05dec9e
Fix panic on double def; Tests; Double def error
...
* Fixes a panic with defining two commands with the same name caused by
declaration not found after predeclaration.
* Adds a new error if a custom command is defined more than once in one
block.
* Add some tests
2021-10-01 23:25:24 +03:00
Jakub Žádník
2af8116f50
Fix hiding logic; Fix hiding with predecls
...
* Hiding logic is simplified and fixed so you can hide and unhide the
same def repeatedly.
* Separates predeclared ids into its own data structure to protect them
from hiding. Otherwise, you could hide the predeclared variable and
the actual def would panic.
2021-10-01 23:24:57 +03:00
Jakub Žádník
7488254cca
Implement a rough version of 'hide'
...
'hide' command is used to undefine custom commands
2021-10-01 23:24:54 +03:00
JT
503939dcbe
add sys command
2021-10-01 19:53:47 +13:00
JT
d6e24cceb4
add a vertical record view
2021-10-01 19:01:22 +13:00
JT
db3e9efc4b
fix warnings
2021-10-01 18:20:25 +13:00
JT
3e232a5db8
Add 'from json'
2021-10-01 18:11:49 +13:00
Squirrel
4e0d7bc77c
Less deps ( #4038 )
...
* compiles on nightly now. (breaking change)
* less deps
* Switch over to new resolver
(it's been stable for a while.)
* let's leave num-format for another PR
2021-09-28 07:17:00 +13:00
Tanishq Kancharla
719920fa37
tried to move source command into parser (still doesn't compile)
2021-09-27 08:10:18 -04:00
JT
0108a935ed
add import lists
2021-09-27 13:23:22 +13:00
JT
abb0d7bd22
Add support for module imports
2021-09-27 07:39:19 +13:00
JT
47421e9ca7
Merge pull request #69 from kubouch/simple-module
...
Primitive module implementation
2021-09-27 05:14:23 +13:00
Jakub Žádník
3f8f3ecf9a
Fmt
2021-09-26 14:12:39 +03:00
Jakub Žádník
f57f7b2def
Allow adding definitions from module into scope
2021-09-26 13:53:52 +03:00
Jakub Žádník
9e176674a5
Start parsing 'use'; Add Use command
2021-09-26 13:25:52 +03:00
Jakub Žádník
12cf1a8f83
Allow adding module blocks to engine state
2021-09-26 12:12:32 +03:00
Fernando Herrera
d9c42eb194
contents declaration
2021-09-25 17:28:15 +01:00
Fernando Herrera
767d822cbf
change line format for test
2021-09-24 13:20:50 +01:00
Fernando Herrera
b4977f1515
better print out for stream output
2021-09-24 13:03:39 +01:00
JT
6c589affe7
Merge pull request #61 from elferherrera/externals
...
Externals with redirection
2021-09-24 10:26:38 +12:00
Fernando Herrera
660e8b5b73
external with redirection
2021-09-23 17:42:03 +01:00
Kat Marchán
5d442a287f
deps: bump to miette 3.0 mainline
2021-09-22 16:50:57 -07:00
Fernando Herrera
962b258cc6
merge span ( #4031 )
2021-09-23 07:48:05 +12:00
Kat Marchán
2553da3dc4
bump miette to fix multi-file rendering bug
2021-09-21 17:57:16 -07:00
Kat Marchán
a7ecf7af90
add magical debugging code to SourceCode impl for future debugging
2021-09-21 17:54:20 -07:00
Kat Marchán
32f39c2fb8
use miette's new panic hook
2021-09-21 12:47:52 -07:00
JT
3c18cac134
use the fancy
2021-09-21 16:10:29 +12:00
JT
4841d62d76
Add some improvements to errors
2021-09-21 16:03:06 +12:00
Kat Marchán
a1d6cefdf8
replace codespan-reporting with miette 3.0
2021-09-20 17:14:20 -07:00
Fernando Herrera
bafc50fd5c
external command
2021-09-19 20:29:58 +01:00
Tw
1297499d7a
add command g to switch shell quickly ( #4014 )
...
Signed-off-by: Tw <tw19881113@gmail.com>
2021-09-17 10:39:14 +01:00
JT
8581bec891
bump 0.37.1 ( #4019 )
2021-09-16 13:32:22 +12:00
Fernando Herrera
c164ef5489
Update to polars 0.16 ( #4013 )
...
* update to polars 0.16
* enabled features for polars
2021-09-16 07:10:12 +12:00
JT
1d80a68f4c
bump to 0.37 ( #4006 )
2021-09-15 06:44:24 +12:00
Fernando Herrera
1a9247b77f
Merge branch 'main' of https://github.com/nushell/engine-q into externals
2021-09-14 07:19:31 +01:00
JT
b4f918b889
Very early proof-of-concept git branch completion
2021-09-14 16:59:46 +12:00
JT
4dfde7393b
Merge branch 'main' into block_param_types
2021-09-13 19:59:18 +12:00
JT
32c1f0c8d4
better it detection and block params in shapes
2021-09-13 19:54:13 +12:00
JT
eb67eab122
WIP
2021-09-13 19:31:11 +12:00
JT
caa6236f1f
Merge pull request #44 from kubouch/float-ranges
...
Floating point ranges
2021-09-13 04:59:51 +12:00
JT
f459f77335
Merge pull request #40 from elferherrera/parse-error
...
Parse errors for def, let and alias
2021-09-13 04:58:25 +12:00
Fernando Herrera
8f07f40f22
external call
2021-09-12 16:34:43 +01:00
Jakub Žádník
9936946eb5
Fmt
2021-09-12 14:58:32 +03:00
Jakub Žádník
013b12a864
Do not allow precision interval to rach < epsilon
2021-09-12 14:55:11 +03:00
Jakub Žádník
2f04c172fe
Add floating point support for ranges
2021-09-12 14:12:53 +03:00