WindSoilder
fbe9d6f529
Highlight source value as well as failure point. ( #6442 )
...
* show multiple errors at once for some commands
* change from invalid item to source value
2022-09-01 12:20:22 +02:00
unrelentingtech
b27148d14b
Fix build on *BSD, illumos, etc. ( #6456 )
...
* nu-path: use 'linux' code on all non-macOS unix
* nu-command: cfg() the Ps command to platforms it's actually implemented on
* nu-system: cfg() the Ps test to the platforms Ps is implemented on
2022-09-01 12:34:26 +12:00
Darren Schroeder
4858a9a817
Revert "Add support for optional list stream output formatting ( #6325 )" ( #6454 )
...
This reverts commit ec4e3a6d5c
.
2022-08-31 18:09:40 -05:00
WindSoilder
3ec53e544c
remove capnp protocol for plugin... ( #6421 )
...
* remove capnp protocol for plugin...
* remove relative doc
2022-08-31 17:33:30 -05:00
JT
c52d45cb97
Move from source
to source-env
( #6277 )
...
* start working on source-env
* WIP
* Get most tests working, still one to go
* Fix file-relative paths; Report parser error
* Fix merge conflicts; Restore source as deprecated
* Tests: Use source-env; Remove redundant tests
* Fmt
* Respect hidden env vars
* Fix file-relative eval for source-env
* Add file-relative eval to "overlay use"
* Use FILE_PWD only in source-env and "overlay use"
* Ignore new tests for now
This will be another issue
* Throw an error if setting FILE_PWD manually
* Fix source-related test failures
* Fix nu-check to respect FILE_PWD
* Fix corrupted spans in source-env shell errors
* Fix up some references to old source
* Remove deprecation message
* Re-introduce deleted tests
Co-authored-by: kubouch <kubouch@gmail.com>
2022-09-01 08:32:56 +12:00
Reilly Wood
9c58f2a522
Disable clickable links in SSH sessions ( #6439 )
...
* Disable clickable links in WSL and SSH sessions
* Revert WSL change; disable links in SSH only
2022-08-29 07:52:55 -07:00
JT
3cb9147f22
Make $
on variable names optional ( #6434 )
...
* DRAFT: make var dollar optional
* couple fixes
* fix some tests + cleanup
2022-08-29 14:35:55 +12:00
Scott Boggs
f1d72e2670
better error handling for nu_command::env::conig::utils::get_editor ( #6430 )
2022-08-28 12:56:55 +03:00
WindSoilder
f1e7a01b2e
shows wrong item when each command runs to failed. ( #6437 )
...
* add --wrong-item for each command
* fix test
* show multiple errors at once
2022-08-28 11:40:14 +03:00
WindSoilder
b88ace4cde
keep raw for variable inputed argument ( #6426 )
...
* keep raw for variable inputed argument
* fix clippy for windows
* make test runs on windows
2022-08-27 08:22:02 -05:00
Jakub Žádník
34d7c17e78
Bring module's environment when activating overlay ( #6425 )
2022-08-27 01:32:19 +03:00
Darren Schroeder
3f1824111d
add the ast command to peek at the internals of nushell ( #6423 )
...
* add the ast command to peak at the internals of nushell
* fixed a bug in an example
2022-08-26 14:48:48 -05:00
WindSoilder
fbae137442
Try to make argument with quotes for external command better ( #6420 )
...
* fix arg quote for external
* adjust comment
2022-08-26 06:50:41 -05:00
nibon7
9850424251
Make run_external parameter required ( #6418 )
2022-08-26 06:31:33 -05:00
Herlon Aguiar
918ec9daa8
nu-command/filters: drop column check positive value ( #6412 )
2022-08-25 19:03:18 +03:00
nibon7
7b07e976b8
Fix the span of "invalid time zone" ( #6411 )
...
Signed-off-by: nibon7 <nibon7@163.com>
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-25 13:21:54 +02:00
Darren Schroeder
5ebfa10495
convert string duration to named duration ( #6406 )
2022-08-24 14:45:51 -05:00
Reilly Wood
3f93dc2f1d
Always report errors in cp
( #6404 )
2022-08-24 10:39:28 -07:00
Stefan Holderbach
ab77bf3289
Fix search terms for str distance
( #6398 )
...
Redundancy with the command name is unnecessary and now tested since #6380
Fixes CI failure
2022-08-24 11:49:03 +02:00
Stefan Holderbach
0afe1e4e67
Test command names and search terms for redundancy ( #6380 )
...
* Test commands for proper names and search terms
Assert that the `Command.name()` is equal to `Signature.name`
Check that search terms are not just substrings of the command name as
they would not help finding the command.
* Clean up search terms
Remove redundant terms that just replicate the command name.
Try to eliminate substring between search terms, clean up where
necessary.
2022-08-24 11:16:47 +02:00
Reilly Wood
ef26d539a7
Make cp
errors more specific ( #6396 )
2022-08-23 21:32:41 -07:00
Darren Schroeder
ba6abd77c9
add another split words example ( #6394 )
2022-08-23 13:27:06 -05:00
Darren Schroeder
6fbc76bc0f
add edit distance/levenshtein command ( #6383 )
...
* add edit distance/levenshtein command
* change output to a record
* update test
2022-08-23 08:53:14 -05:00
pwygab
884382bac4
preserve space by letting to nuon
only add quotes when necessary ( #6379 )
...
* preserve space by letting `to nuon` only add quotes when necessary
* fix CI, add quotes with colon
* fmt
* add more chars to blacklist
2022-08-23 06:51:07 -05:00
WindSoilder
9c4bbe3c63
Rename overlay commands ( #6375 )
...
* rename from overlay add to overlay use
* rename from overlay remove to overlay hide
* rename add to use_
2022-08-21 17:27:56 +03:00
Reilly Wood
c5ca839294
Add pause and cls to cmd.exe exceptions ( #6371 )
2022-08-21 07:21:27 -07:00
Darren Schroeder
5337a6dffa
add MessagePack as a plugin protocol ( #6370 )
2022-08-21 06:13:38 -05:00
pwygab
56ce10347e
let to nuon
convert column names with spaces ( #6376 )
...
* let `to nuon` convert column names with spaces
* change test
2022-08-21 13:12:13 +03:00
Darren Schroeder
37bc90c62a
fix the way lists are rendered in markdown ( #6369 )
2022-08-20 21:04:30 -05:00
Darren Schroeder
99c42582fe
add a split words command ( #6363 )
...
* add a split words command
* changed regex
2022-08-20 05:55:54 +12:00
Jakub Žádník
5a56d47f25
Add export-env
command ( #6355 )
...
* WIP Start export-env
* Add missing file
* Do not modify the parser
Let's leave that for later
* Enable tests for export-env; Fmt
2022-08-18 23:24:39 +03:00
nibon7
529c98085a
Return error when kill
didn't terminate successfully ( #6354 )
...
* Return error when `kill` didn't terminate successfully
Signed-off-by: nibon7 <nibon7@163.com>
* add test
Signed-off-by: nibon7 <nibon7@163.com>
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-18 11:58:51 -05:00
Yura Shatunov
2b955f82b7
Fix #6330 ( #6332 )
2022-08-18 10:53:46 -05:00
Darren Schroeder
1843fdc060
create clickable links in ls output if configured ( #6333 )
...
* create clickable links in ls output if configured
* move some comments
2022-08-18 05:45:49 -05:00
panicbit
ec4e3a6d5c
Add support for optional list stream output formatting ( #6325 )
...
* add support for optional list stream output formatting
* cargo fmt
* table: add ValueFormatter test
2022-08-18 05:44:53 -05:00
WindSoilder
1d18f6947e
Try again: in unix like system, set foreground process while running external command ( #6273 )
...
* Revert "Fix intermittent test crash (#6268 )"
This reverts commit 555d9ee763
.
* make a working version again
* try second impl
* add
* fmt
* check stdin is atty before acquire stdin
* add libc
* clean comment
* fix typo
2022-08-18 05:41:01 -05:00
Antoine Stevan
62d3497bbb
fix links to the "think in nu" page in --help ( #6348 )
...
This commit uses `sed` on all the files of the code base to
replace each and every instance of https://www.nushell.sh/book/thinking_in_nushell.html ,
which is a broken link, to https://www.nushell.sh/book/thinking_in_nu.html ,
which is the new URL to the book page.
This exact command was
```nushell
ls **/* -f |
where type == file |
each {
|it|
sed -i 's|https://www.nushell.sh/book/thinking_in_nushell.html |https://www.nushell.sh/book/thinking_in_nu.html |' $it.name
}
```
Co-authored-by: amtoine <44101798+AntoineStevan@users.noreply.github.com>
2022-08-17 13:51:07 -04:00
WindSoilder
21770367e2
make date format
supports locale ( #6306 )
...
* add --locale flag to make output support locale
* implement again based on nu-utils get_system_locale_string
* add comment
2022-08-14 08:07:04 -05:00
Fernando Herrera
9d8d305e9d
lazy dataframe reader ( #6321 )
...
* lazy dataframe reader
* correct space for polars dependencies
2022-08-14 13:06:31 +01:00
Andrés N. Robalino
eb55fd2383
cmd(df/first): returns the first row by default. ( #6312 )
2022-08-13 14:08:00 -05:00
Reilly Wood
613d2fb8df
Bump chrono dependency to fix panic ( #6317 )
2022-08-13 11:21:28 -07:00
Jakub Žádník
8783742060
Add 'as' keyword to 'overlay add' ( #6314 )
2022-08-13 17:28:18 +03:00
Jakub Žádník
20528e96c7
Add hide-env
to hide environment variables ( #6313 )
...
* Add hide-env to hide env vars; Cleanup tests
Also, there were some old unalias tests that I converted to hide.
* Add missing file
* Re-enable hide for env vars
* Fix test
* Rename did you mean error back
It was causing random tests to break
2022-08-13 12:55:06 +03:00
Reilly Wood
3b6c4c1bb5
run_external: only suggest alternative commands when file not found ( #6311 )
2022-08-13 00:27:50 -04:00
Björn Richter
cb18dd5200
Add decimals to int when using into string --decimals
( #6085 )
...
* Add decimals to int when using `into string --decimals`
* Add tests for `into string` when converting int with `--decimals`
* Apply formatting
* Merge `into_str` test files
* Comment out unused code and add TODOs
* Use decimal separator depending on system locale
* Add test helper to run closure in different locale
* Add tests for int-to-string conversion using different locales
* Add utils function to get system locale
* Add panic message when locking mutex fails
* Catch and resume panic later to prevent Mutex poisoning when test fails
* Move test to `nu-test-support` to keep `nu-utils` free of `nu-*` dependencies
See https://github.com/nushell/nushell/pull/6085#issuecomment-1193131694
* Rename test support fn `with_fake_locale` to `with_locale_override`
* Move `get_system_locale()` to `locale` module
* Allow overriding locale with special env variable (when not in release)
* Use special env var to override locale during testing
* Allow callback to return a value in `with_locale_override()`
* Allow multiple options in `nu!` macro
* Allow to set locale as `nu!` macro option
* Use new `locale` option of `nu!` macro instead of `with_locale_override`
Using the `locale` options does not lock the `LOCALE_OVERRIDE_MUTEX`
mutex in `nu-test-support::locale_override` but instead calls the `nu`
command directly with the `NU_LOCALE_OVERRIDE` environment variable.
This allows for parallel test excecution.
* Fix: Add option identifier for `cwd` in usage of `nu!` macro
* Rely on `Display` trait for formatting `nu!` macro command
- Removed the `DisplayPath` trait
- Implement `Display` for `AbsolutePath`, `RelativePath` and
`AbsoluteFile`
* Default to locale `en_US.UTF-8` for tests when using `nu!` macro
* Add doc comment to `nu!` macro
* Format code using `cargo fmt --all`
* Pass function directly instead of wrapping the call in a closure
https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure
* Pass function to `or_else()` instead of calling it inside `or()`
https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call
* Fix: Add option identifier for `cwd` in usage of `nu!` macro
2022-08-12 21:13:50 -05:00
Jakub Žádník
c3efb12733
Allow overlays to import prefixed definitions ( #6301 )
...
* WIP
* Fix overlay prefix not preserving correctly
* Work around failing REPL tests
* Remove wrong code when removing with --keep-custom
2022-08-12 21:06:51 +03:00
Fernando Herrera
ae64c58f59
Polars upgrade 0.23 ( #6303 )
...
* more lazy expressions
* upgrade polars and correct functions
* arg-where example
* cargo clippy
* restore modified filter files
* correct string addition with str
* correct string addition with str
* correct message in test
2022-08-12 13:10:36 +01:00
Stefan Holderbach
c2f4969d4f
Clippy fix for Rust 1.63 ( #6299 )
...
Take more sensitive lints into account
Somewhat ugly in some cases is the replacement of `.get(0)` with
`.first()`
2022-08-11 11:54:54 -05:00
Darren Schroeder
58094987ff
update a few nushell dependencies ( #6291 )
...
* update a few nushell dependencies
* update a test
2022-08-10 14:56:15 -05:00
WindSoilder
0f10d984c3
add -n for path expand, so it doesn't follow symlink ( #6255 )
...
* add -p for path expand, so it doesn't follow symlink
* fix arg name
* rename from no-dereferenct to no-follow-link
* rename from no-follow-link to no-symlink, and change short -p to -n
* follow strict first
* fix
* simplify test
* fix clippy
* fix test on windows
2022-08-10 08:43:56 -05:00
Darren Schroeder
2e5d981a09
add search terms to ignore command ( #6288 )
2022-08-10 08:42:21 -05:00
nibon7
271fda7c91
Return error when moving a source directory to a target directory which contains a subdirectory with the same name as the source ( #6284 )
...
Fixes #6275
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-10 06:51:11 -05:00
Reilly Wood
dcab255d59
Support running batch files without typing their extension ( #6278 )
...
* Support running batch files without typing their extension
* suppress warning
2022-08-09 19:24:08 -04:00
Darren Schroeder
0b70ca8451
escape single quotes and remove ansi escape sequences ( #6271 )
...
* escape single quotes and remove ansi escape sequences prior to storing strings in db
* clippy
2022-08-09 07:58:36 -05:00
JT
555d9ee763
Fix intermittent test crash ( #6268 )
...
* Fix intermittent test crash
* fix windows build
2022-08-09 14:06:46 +12:00
Darren Schroeder
9adcecbbf1
new command into sqlite
allows you to take lists and create a sqlite db ( #6266 )
2022-08-08 14:12:42 -05:00
Reilly Wood
cd0a04f02a
Delete most deprecated commands ( #6260 )
2022-08-08 07:46:59 -07:00
nibon7
2f0cb044a5
Refactor shell listing related code ( #6262 )
...
* Refactor shell listing related code
Signed-off-by: nibon7 <nibon7@163.com>
* add test
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-08 06:31:24 -05:00
Darren Schroeder
8b55757a0b
add more verbose error messages to mv ( #6259 )
...
* add more verbose error messages to mv
* tweak output
* clippy
* yet another tweak
2022-08-07 15:25:05 -05:00
Reilly Wood
84fae6e07e
Suggest alternative when command not found ( #6256 )
...
* Suggest alternative when command not found
* Add tests for command-not-found suggestions
* Put suggestion in label
* Fix tests
2022-08-07 14:40:41 -04:00
nibon7
63e220a763
Refactor shell switching related code ( #6258 )
...
* Refactor shell switching related code
Signed-off-by: nibon7 <nibon7@163.com>
* add tests
Signed-off-by: nibon7 <nibon7@163.com>
* fix tests
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-07 13:30:40 -05:00
Reilly Wood
a96fc21f88
Windows: only shell out to cmd for specific commands ( #6253 )
2022-08-06 13:03:06 -07:00
nibon7
1ba5b25b29
Make g -
switch to the last used shell ( #6249 )
...
* Make `g -` switch to the last used shell
Related #6223
Signed-off-by: nibon7 <nibon7@163.com>
* simplify error handling
Signed-off-by: nibon7 <nibon7@163.com>
* update NUSHELL_LAST_SHELL environment
Signed-off-by: nibon7 <nibon7@163.com>
* add test
Signed-off-by: nibon7 <nibon7@163.com>
* fix description
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-06 10:11:03 -05:00
pwygab
a871f2344a
fix examples and let into decimal convert bools too ( #6246 )
2022-08-06 07:10:33 -05:00
Kangaxx-0
a217bc0715
Fix issue 6223 ( #6241 )
...
* Fix6223
* clippy fix
Co-authored-by: Frank <v-frankz@microsoft.com>
2022-08-06 07:09:14 -05:00
Justin Ma
48f1c3a49e
add bits ror
and bits rol
commands ( #6224 )
2022-08-05 15:40:01 +02:00
nibon7
692376e830
export get_shells
and get_current_shell
( #6236 )
...
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-05 07:58:40 -05:00
Justin Ma
cc99df5ef1
upgrade chrono to v0.4.20 ( #6235 )
2022-08-05 06:53:01 -05:00
Darren Schroeder
cdeb8de75d
replace the regex crate with the fancy-regex crate ( #6227 )
2022-08-04 14:51:02 -05:00
Justin Ma
606547ecb4
Some code refactor for shells related commands ( #6226 )
2022-08-04 12:55:49 -05:00
pwygab
3b809b38e8
make cd
, cp
, ls
, mv
, open
and rm
automatically strip ansi codes ( #6220 )
...
* make `cd`, `cp`, `ls`, `mv`, `open` and `rm` automatically strip ansi escape code
* fix nu-cli test
* fix nu-cli test 2
* fix nu-cli test 3
* remove `include-ansi` arg
* fix test
2022-08-04 06:59:20 -05:00
nibon7
7c49a42b68
Fix path_contains_hidden_folder ( #6173 )
...
* Fix path_contains_hidden_folder
Signed-off-by: nibon7 <nibon7@163.com>
* add test
Signed-off-by: nibon7 <nibon7@163.com>
2022-08-03 20:59:57 -05:00
Kangaxx-0
ebf845f431
Change how to identify custom comamnd ( #6187 )
...
Co-authored-by: Frank <v-frankz@microsoft.com>
2022-08-02 18:40:07 -05:00
Justin Ma
ce6df93d05
Add bits shl
and bits shr
command ( #6202 )
...
* Add `bits shift-left` and `bits shift-right` command
* update bits shift error tips
* some code refactor
* update shift right
* some code refactor for bits shift commands
* rename bits shift commands align with bits operators
* update search term
* Update crates/nu-command/src/bits/not.rs
Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
* Update crates/nu-command/src/bits/shift_left.rs
Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
* Update crates/nu-command/src/bits/shift_right.rs
Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
* ci skip
* change default number-bytes for bits shift
* fix bits not tests
* fix bits tests
Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
2022-08-02 15:52:04 -05:00
Fernando Herrera
e7958bebac
sqlite query without collect ( #6217 )
2022-08-02 21:29:02 +01:00
WindSoilder
376d22e331
In unix like system, set foreground process while running external command ( #6206 )
...
* while executing external command, make it as foreground
* remove useless file
* add comment, make var more readable
* add comment
* fmt code
* fix windows
* fix func name
* fix clippy
* fix windows clippy
* add comments, introduce `ForegroundProcess and ForegroundChild
* fix windows clippy
* fix on windows
* no need fg_process_setup module
* Revert "no need fg_process_setup module"
This reverts commit 21ee4ffbf6
.
* restrict visibility for helper functions
2022-08-02 16:53:50 +02:00
Fernando Herrera
1f4791a191
use from table
to remove into-db command ( #6205 )
...
* use from table to remove into-db command
* correct tests for db expressions
2022-08-01 21:27:55 +01:00
Reilly Wood
2ac7a4d48d
performance improvements for SQLite reads ( #6204 )
2022-07-31 23:09:03 -07:00
pwygab
01386f4d58
adds a config reset
command ( #6149 )
...
* moves config files to nu_utils
* fmt
* fix dockerfile
* fix docs
2022-07-31 20:44:33 -05:00
Reilly Wood
1086fbe9b5
Revert query
command to query db
( #6200 )
2022-07-31 15:36:14 -04:00
Darren Schroeder
a83bd4ab20
allow uppercase chars to be captured during suppressed input ( #6199 )
2022-07-31 08:12:13 -05:00
nibon7
26caf7e1b2
Return error early if seconds part of timestamp is invalid ( #6193 )
...
Signed-off-by: nibon7 <nibon7@163.com>
2022-07-31 07:32:16 -05:00
Reilly Wood
dd2a0e35f4
Add $OLDPWD example for cd ( #6194 )
...
* add example for cd
* Fix format_conversions tests
2022-07-30 23:29:52 -04:00
Justin Ma
6a4eabf5c7
Add bits or
and bits xor
command ( #6190 )
2022-07-30 13:26:37 -05:00
Justin Ma
0e2c888f73
Add bits root command and bits and
command ( #6188 )
2022-07-30 07:34:11 -05:00
WindSoilder
586c0ea3d8
Add bits not command ( #6143 )
...
Add `bits not`
Options: `--number-bytes` and `--sized`
2022-07-30 11:25:44 +02:00
nibon7
9e24e452a5
Fix touch panics when using invalid timestamp ( #6181 )
...
Signed-off-by: nibon7 <nibon7@163.com>
2022-07-29 06:41:28 -05:00
Jakub Žádník
2cffff0c1b
Allow modules to use
other modules ( #6162 )
...
* Allow private imports inside modules
Can call `use ...` inside modules now.
* Add more tests
* Add a leak test
* Refactor exportables; Prepare for 'export use'
* Fix description
* Implement 'export use' command
This allows re-exporting module's commands and aliases from another
module.
* Add more tests; Fix import pattern list strings
The import pattern strings didn't trim the surrounding quotes.
* Add ignored test
2022-07-29 11:57:10 +03:00
nibon7
cf2e9cf481
Prevent mv panic again ( #6171 )
...
Closes #6170
Signed-off-by: nibon7 <nibon7@163.com>
2022-07-29 10:00:52 +03:00
JT
98e199f7b5
Move ls
back to last-known-good state ( #6175 )
...
* revert the recent ls changes
* cargo fmt
2022-07-29 11:00:54 +12:00
JT
10e463180e
Revert cp and mv back to last-known-good state ( #6169 )
2022-07-29 07:49:20 +12:00
Fernando Herrera
e2a21afca8
maintain quotes for arguments ( #6161 )
2022-07-28 16:35:55 +01:00
nibon7
2ea209bcc0
Prevent mv panic ( #6158 )
...
Signed-off-by: nibon7 <nibon7@163.com>
2022-07-28 01:15:02 -04:00
nibon7
4c6cf36aa5
Fix ls panics when a file or directory not exists ( #6148 )
...
* Fix ls panics when a file or directory not exists
Fixes #6146
Signed-off-by: nibon7 <nibon7@163.com>
* add test
Signed-off-by: nibon7 <nibon7@163.com>
2022-07-27 18:53:00 +03:00
Jakub Žádník
c92211c016
Use relative paths as file-relative when parsing a file ( #6150 )
...
* Make function local (not used anywhere else)
* Use path relative to the parsed file
* Do not use real cwd at all
2022-07-27 18:36:56 +03:00
JT
9695331eed
require variable names to follow additional restrictions ( #6125 )
2022-07-27 14:08:54 +12:00
JT
2b7c811402
fix 0.66 nu-command crate ( #6138 )
2022-07-27 11:20:12 +12:00
Matthew Ma
65f0edd14b
Allow multiple patterns in ls command ( #6098 )
...
* Allow multiple patterns in ls command
* Run formatter
* Comply with style
* Fix format error
2022-07-26 13:08:19 -05:00
pwygab
b12a3dd0e5
allow view-source to view aliases ( #6135 )
2022-07-26 08:06:16 -05:00
Darren Schroeder
d856ac92f4
expand durations to include month, year, decade ( #6123 )
...
* expand durations to include month, year, decade
* remove commented out fn
* oops, found more debug comments
* tweaked tests for the new way, borrowed heavily from chrono-humanize-rs
* clippy
* grammar
2022-07-26 08:05:37 -05:00