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
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
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
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
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
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
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
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