forked from extern/nushell
c81fa397b69cd95d0aacd36f3dfb3e1863228c0c
7892 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
|
d34a2c353f |
files and directory completions now use ascending ordering rather than Levenshtein. #8023 (#8085)
# Description This change sorts completions for files and directories by the ascending ordering method, related to issue: [#8023](https://github.com/nushell/nushell/issues/8023) Currently the Suggestions are being sorted twice, so it's now following the convention from `completion/base.rs` to match on the `self.get_sort_by()` result. # User-Facing Changes Previously the suggestions were being sorted by the Levenshtein method: ``` /home/rdevenney/projects/open_source/nushell| cd src/ wix/ docs/ tests/ assets/ crates/ docker/ images/ target/ benches/ pkg_mgrs/ .git/ .cargo/ .github/ ``` Now when you tab for autocompletions, they show up in ascending alphabetical order as shown below (with hidden files/folders at the end). ``` /home/rdevenney/projects/open_source/nushell| cd assets/ benches/ crates/ docker/ docs/ images/ pkg_mgrs/ src/ target/ tests/ wix/ .cargo/ .git/ .github/ ``` And when you've already typed a bit of the path: ``` /home/rdevenney/projects/open_source/nushell| cd crates/nu crates/nu-cli/ crates/nu-color-config/ crates/nu-command/ crates/nu-engine/ crates/nu-explore/ crates/nu-glob/ crates/nu-json/ crates/nu-parser/ crates/nu-path/ crates/nu-plugin/ crates/nu-pretty-hex/ crates/nu-protocol/ crates/nu-system/ crates/nu-table/ crates/nu-term-grid/ crates/nu-test-support/ crates/nu-utils/ crates/nu_plugin_custom_values/ crates/nu_plugin_example/ crates/nu_plugin_formats/ crates/nu_plugin_gstat/ crates/nu_plugin_inc/ crates/nu_plugin_python/ crates/nu_plugin_query/ ``` And another for when there are files and directories present: ``` /home/rdevenney/projects/open_source/nushell/crates/nu-cli/src| nvim 02/16/2023 08:22:16 AM commands.rs completions/ config_files.rs eval_file.rs lib.rs menus/ nu_highlight.rs print.rs prompt.rs prompt_update.rs reedline_config.rs repl.rs syntax_highlight.rs util.rs validation.rs ``` # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: [*] `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) [*] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style [*] `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
150b0b6b86 |
Add select extra_usage explaining relationship to get (#8146)
# Description See title. Also changed some misleading wording in `reject`'s help. # User-Facing Changes See above. # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
d0e0701a88 |
fix: fix lexing of comments, such that a#b becomes a coherent Item (#8151)
# Description Previously `nix run nixpkgs#hello` was lexed as `Item, Item, Item, Comment`, however, `#hello` is *not* supposed to be a comment here and should be parsed as part of the third `Item`. This change introduces this behavior by not interrupting the parse of the current token upon seeing a `#`. Thank you so much for considering this, I think many `nix` users will be grateful for this change and I think this will lead to more adaptation in the ecosystem. - closes #8137 and #6335 # User-Facing Changes - code like `somecode# bla` and `somecode#bla` will not be parsed as `somecode, comment` but as `somecode#bla`, hence this is a breaking change for all users who didn't put a space before a comment introducing token (`#`) # Tests + Formatting I've added tests that cover this behavior in `test_lex.rs` - [x] `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - [x] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - [x] `cargo test --workspace` to check that all tests pass # After Submitting > If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. I think this is expected behavior in most other shells, so the documentation was lacking for not documenting the unexpected behavior before and hence now is automatically more complete >D |
||
|
28b20c5ec3 |
chore: add a couple of direnv specific files to the gitignore (#8165)
# Description Hi, I would like to add a couple of things to the `.gitignore` that would probably not be preferred to be checked out. Thanks in advance! :) # User-Facing Changes - none # Tests + Formatting - not affected # After Submitting - not affected |
||
|
9088ef182e |
Bump errno from 0.2.8 to 0.3.0 (#8131)
Bumps [errno](https://github.com/lambda-fairy/rust-errno) from 0.2.8 to 0.3.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/lambda-fairy/rust-errno/blob/main/CHANGELOG.md">errno's changelog</a>.</em></p> <blockquote> <h1>[0.3.0] - 2023-02-12</h1> <ul> <li> <p>Add haiku support <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/42">#42</a></p> </li> <li> <p>Add AIX support <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/54">#54</a></p> </li> <li> <p>Add formatting with <code>#![no_std]</code> <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/44">#44</a></p> </li> <li> <p>Switch from <code>winapi</code> to <code>windows-sys</code> <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/55">#55</a></p> </li> <li> <p>Update minimum Rust version to 1.48 <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/48">#48</a> <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/55">#55</a></p> </li> <li> <p>Upgrade to Rust 2018 edition <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/59">#59</a></p> </li> <li> <p>wasm32-wasi: Use <code>__errno_location</code> instead of <code>feature(thread_local)</code>. <a href="https://github-redirect.dependabot.com/lambda-fairy/rust-errno/pull/66">#66</a></p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
c4d1aa452d |
Final rework for the HTTP commands (#8135)
# Description Final rework for https://github.com/nushell/nushell/issues/2741, after this one, we'll add for free HTTP PUT, PATCH, DELETE and HEAD. # User-Facing Changes We can now post data using HTTP GET. I add some examples in the output of `http get --help` to demonstrate this new behavior. # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
66e52b7cfc |
use winget releaser action for manifest submission (#8070)
# Description Other than simplifying the CI, [Winget Releaser](https://github.com/vedantmgoyal2009/winget-releaser) includes more metadata in the manifest as it uses [Komac](https://github.com/russellbanks/Komac). I recommend installing [Pull](https://github.com/apps/pull) on https://github.com/fdncred/winget-pkgs to automatically keep it up to date. If you want to see an example of a PR created using this action, see [microsoft/winget-pkgs/pulls (Pull request has been created with WinGet Releaser)](https://github.com/microsoft/winget-pkgs/pulls?q=is%3Apr+sort%3Aupdated-desc+Pull+request+has+been+created+with+WinGet+Releaser). > Migrate from [winget-pkgs-automation manifest](https://github.com/vedantmgoyal2009/vedantmgoyal2009/blob/main/winget-pkgs-automation/packages/n/nushell.nushell.json) |
||
|
e761954cf0 |
allow different types of lists to be appended (#8157)
# Description closes #8153 This PR allows different types of lists, like `list<string>` and `list<any>` to be appended with the `++=` operator. ## Before ``` mut args = [ hello ("hello" | path join world)] $args ++= [ foo bar ] Error: nu::parser::type_mismatch (link) × Type mismatch during operation. ╭─[entry #2:1:1] 1 │ $args ++= [ foo bar ] · ─────┬───── · ╰── expected list<any>, found list<string> ╰──── ``` ## After ``` mut args = [ hello ("hello" | path join world)] $args ++= [ foo bar ] $args ╭───┬─────────────╮ │ 0 │ hello │ │ 1 │ hello\world │ │ 2 │ foo │ │ 3 │ bar │ ╰───┴─────────────╯ ``` # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
58829e3560 |
fixes a def parsing bug with a default list (#8096)
# Description This PR fixes a bug where a default list in a custom command parameter wasn't being accepted. The reason was because it was comparing specific types of list like `list<any>` != `list<string>`. So, this PR attempts to fix that. ### Before ``` > def f [param: list = [one]] { echo $param } Error: nu::parser::assignment_mismatch (link) × Default value wrong type ╭─[entry #1:1:1] 1 │ def f [param: list = [one]] { echo $param } · ──┬── · ╰── default value not list<any> ╰──── ``` ### After ``` > def f [param: list = [one]] {echo $param} > f ╭───┬─────╮ │ 0 │ one │ ╰───┴─────╯ ``` closes #8092 # User-Facing Changes # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
62652cf8c1 |
simplify parse_expression function code. (#8149)
# Description When reading parser code to see how it works, I found that `parse_expression` function contains some duplicate code about function call, we can match several values at once to simplify code # User-Facing Changes None # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
4482862a40 |
Fix one error message in into string (#8163)
# Description Fixes the following message: ``` 〉(ls).0 | into string Error: nu:🐚:cant_convert (link) × Can't convert to record. ╭─[entry #4:1:1] 1 │ (ls).0 | into string · ─────┬───── · ╰── can't convert string to record ╰──── help: try using the `to nuon` command ``` # User-Facing Changes See above. # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
d80ba00590 | delete stale.yml | ||
|
81dd4a8450 |
Bump uuid from 1.2.2 to 1.3.0 (#8130)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.2.2 to 1.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/uuid-rs/uuid/releases">uuid's releases</a>.</em></p> <blockquote> <h2>1.3.0</h2> <h2>What's Changed</h2> <ul> <li>Fix error message. by <a href="https://github.com/basbossink-ds"><code>@basbossink-ds</code></a> in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/656">uuid-rs/uuid#656</a></li> <li>implement Arbitrary::size_hint by <a href="https://github.com/Ekleog"><code>@Ekleog</code></a> in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/657">uuid-rs/uuid#657</a></li> <li>Always use hyphenated format regardless of flags by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/658">uuid-rs/uuid#658</a></li> <li>Update windows-sys requirement from 0.42.0 to 0.45.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/654">uuid-rs/uuid#654</a></li> <li>Prepare for 1.3.0 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/659">uuid-rs/uuid#659</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/basbossink-ds"><code>@basbossink-ds</code></a> made their first contribution in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/656">uuid-rs/uuid#656</a></li> <li><a href="https://github.com/Ekleog"><code>@Ekleog</code></a> made their first contribution in <a href="https://github-redirect.dependabot.com/uuid-rs/uuid/pull/657">uuid-rs/uuid#657</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/uuid-rs/uuid/compare/1.2.2...1.3.0">https://github.com/uuid-rs/uuid/compare/1.2.2...1.3.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
101ed629a4 |
Update polars to 0.27.2 (#8154)
Mostly to get rid of https://github.com/pola-rs/polars/pull/6098/files This currently breaks nushell's table formatting: ``` nu ❯ open-df forcing.arrow | first could not mmap compressed IPC file, defaulting to normal read╭───┬──────────┬────┬────────┬──────────┬───────┬──────────┬──────┬──────────┬─────╮ │ # │ time │ id │ demand │ drainage │ E_pot │ infiltra │ P │ priority │ ... │ │ │ │ │ │ │ │ tion │ │ │ │ ├───┼──────────┼────┼────────┼──────────┼───────┼──────────┼──────┼──────────┼─────┤ │ 0 │ 4 years │ 1 │ 0.00 │ 0.02 │ 0.00 │ 0.00 │ 0.00 │ 4.00 │ ... │ │ │ ago │ │ │ │ │ │ │ │ │ ╰───┴──────────┴────┴────────┴──────────┴───────┴──────────┴──────┴──────────┴─────╯ ``` @visr |
||
|
95ec2fcce7 |
Update to 0.76.1 version for development (#8161)
# Description For tracking in `version` for bug reports during development. Might be used for an urgent hotfix if necessary. |
||
|
73bc3389e5 |
Fix Cargo.toml of nu_plugin_formats (#8160)
# Description The crate manifest didn't include vital information to publish to crates.io This now includes the basic description and license information |
||
|
bc38a6a795 |
Bump version for 0.76.0 release (#8121)
Before landing: - [x] `reedline 0.16.0` is out and pinned. - [x] all fixes and features necessary are landed. In the meantime: - [ ] feed the release notes with relevant features and breaking changes0.76.0 |
||
|
e89866bedb |
TEST: add the output to the new with-env example (#8148)
Related to #8119. Should address the review comment by @sholderbach from #8119. # Description this PR adds the output to the new example for the `with-env` command introduced by #8119. ```bash with-env {X: "Y", W: "Z"} { [$env.X $env.W] } ``` should output ```bash ["Y", "Z"] ``` hence the proposition from @sholderbach, i.e. ```rust Some(Value::list( vec![Value::test_string("Y"), Value::test_string("Z")], Span::test_data(), )) ``` # User-Facing Changes _none_ # Tests + Formatting not really a test, only the output value for the last `with-env` example - ✔️ `cargo fmt --all` - ✔️ `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` - ✔️ `cargo test --workspace` # After Submitting _none_ |
||
|
ca09dbbbee |
Pin reedline to 0.16.0 (#8142)
# Description See release notes: https://github.com/nushell/reedline/releases/tag/v0.16.0 # User-Facing Changes Only internal # Tests + Formatting (-) |
||
|
fa4531fd17 |
Bump actions-rust-lang/setup-rust-toolchain from 1.3.7 to 1.4.2 (#8133)
Bumps [actions-rust-lang/setup-rust-toolchain](https://github.com/actions-rust-lang/setup-rust-toolchain) from 1.3.7 to 1.4.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/blob/main/CHANGELOG.md">actions-rust-lang/setup-rust-toolchain's changelog</a>.</em></p> <blockquote> <h2>[1.4.2] - 2023-02-15</h2> <h3>Fixed</h3> <ul> <li>Tweak sparse registry version regex to better work with 1.68 nightly versions.</li> <li>Fix command not found issue</li> </ul> <h2>[1.4.1] - 2023-02-13</h2> <h3>Fixed</h3> <ul> <li> <p>Fixed running on macOS <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/9">#9</a> <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/10">#10</a> The macOS images have an ancient version of bash, but the action relies on "newer" features than 2014. We install bash via brew (already pre-installed) to have a new enough version.</p> <p>The CI is extended to also run on Windows and macOS to catch such issues earlier in the future.</p> <p>Thanks to <a href="https://github.com/GeorgeHahn"><code>@GeorgeHahn</code></a> for reporting the issue.</p> </li> </ul> <h2>[1.4.0] - 2023-02-13</h2> <h3>Changed</h3> <ul> <li>Only set environment variables, if they are not set before. This allows setting environment variables before using this action and keeping their values.</li> <li>Enable stable sparse registry, except on versions 1.66 and 1.67 where this leads to errors.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
d17c970f8c |
update code coversage script to work better with windows (#8141)
# Description This PR updates the code coverage script to help it work better on Windows. The main changes here are to give you some progress outputs and to enable `cargo llvm-cov show-env | from toml` to work better since the toml spec says these literal strings should be single quoted vs double quoted. Closed #8139 # User-Facing Changes # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
6ca62ef131 |
show more informaiton when there are toml errors (#8140)
# Description While debugging #8139 I noticed that there was some error information coming from the toml crate that we were not displaying. This would've helped me to understand what was going on. So, this PR shows more verbose errors when toml fails to parse. ### Before ``` cargo llvm-cov show-env | from toml Error: nu:🐚:cant_convert (link) × Can't convert to structured toml data. ╭─[entry #1:1:1] 1 │ cargo llvm-cov show-env | from toml · ──┬── · ╰── can't convert string to structured toml data ╰──── ``` ### After ``` cargo llvm-cov show-env | from toml Error: nu:🐚:cant_convert (link) × Can't convert to structured toml data. ╭─[entry #1:1:1] 1 │ cargo llvm-cov show-env | from toml · ──┬── · ╰── can't convert string to structured toml data ╰──── help: TOML parse error at line 2, column 24 | 2 | LLVM_PROFILE_FILE="C:\CarTar\nushell-%p-%m.profraw" | ^ invalid escape sequence expected `b`, `f`, `n`, `r`, `t`, `u`, `U`, `\`, `"` ``` # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
8e84e33638 |
add usage for plugin commands (#8138)
# Description As title # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
b9be416937 |
Add colors in table --collapse (#8120)
close #8110 cc: @amtoine --------- Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> |
||
|
0a8c9b22b0 |
string | fill counts clusters, not graphemes; and doesn't count ANSI escape codes (#8134)
Enhancement of new `fill` command (#7846) to handle content including ANSI escape codes for formatting or multi-code-point Unicode grapheme clusters. In both of these cases, the content is (many) bytes longer than its visible length, and `fill` was counting the extra bytes so not adding enough fill characters. # Description This script: ```rust # the teacher emoji `\u{1F9D1}\u{200D}\u{1F3EB}` is 3 code points, but only 1 print position wide. echo "This output should be 3 print positions wide, with leading and trailing `+`" $"\u{1F9D1}\u{200D}\u{1F3EB}" | fill -c "+" -w 3 -a "c" echo "This output should be 3 print positions wide, with leading and trailing `+`" $"(ansi green)a(ansi reset)" | fill -c "+" -w 3 -a c echo "" ``` Was producing this output: ```rust This output should be 3 print positions wide, with leading and trailing `+` 🧑🏫 This output should be 3 print positions wide, with leading and trailing `+` a ``` After this PR, it produces this output: ```rust This output should be 3 print positions wide, with leading and trailing `+` +🧑🏫+ This output should be 3 print positions wide, with leading and trailing `+` +a+ ``` # User-Facing Changes Users may have to undo fixes they may have introduced to work around the former behavior. I have one such in my prompt string that I can now revert. # Tests + Formatting Don't forget to add tests that cover your changes. -- Done Make sure you've run and fixed any issues with these commands: - [x] `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - [x] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - [x] `cargo test --workspace` to check that all tests pass # After Submitting `fill` command not documented in the book, and it still talks about `str lpad/rpad`. I'll fix. Note added dependency on a new library `print-positions`, which is an iterator that yields a complete print position (cluster + Ansi sequence) per call. Should this be vendored? |
||
|
527c44ed84 |
Bump sysinfo from 0.27.7 to 0.28.0 (#8132)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.27.7 to 0.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md">sysinfo's changelog</a>.</em></p> <blockquote> <h1>0.28.0</h1> <ul> <li>Linux: Fix name and CPU usage for processes tasks.</li> <li>unix: Keep all users, even "not real" accounts.</li> <li>Windows: Use SID for Users ID.</li> <li>Fix C API.</li> <li>Disable default cdylib compilation.</li> <li>Add <code>serde</code> feature to enable serialization.</li> <li>Linux: Handle <code>Idle</code> state in <code>ProcessStatus</code>.</li> <li>Linux: Add brand and name of ARM CPUs.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/GuillaumeGomez/sysinfo/commits">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
8ee015a847 |
Bump winreg from 0.10.1 to 0.11.0 (#8128)
Bumps [winreg](https://github.com/gentoo90/winreg-rs) from 0.10.1 to 0.11.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/gentoo90/winreg-rs/blob/master/CHANGELOG.md">winreg's changelog</a>.</em></p> <blockquote> <h2>0.11.0</h2> <ul> <li>Migrate to the 2018 edition of Rust</li> <li>Move the code from <code>lib.rs</code> to separate files</li> <li>Use <a href="https://crates.io/crates/cfg-if"><code>cfg-if</code></a> instead of <code>build.rs</code> to fail build on non-windows systems</li> <li>Reimplement deserialization logic, implement [de]serialization for byte arrays (<a href="https://github-redirect.dependabot.com/gentoo90/winreg-rs/issues/49">#49</a>)</li> <li>Fix some typos and <code>clippy</code> warnings</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
e8cabd16d5 |
Add a script to generate coverage locally (#8125)
# Description This can be triggered manually and inspected for example with: - https://marketplace.visualstudio.com/items?itemName=ryanluker.vscode-coverage-gutters - https://github.com/umaumax/vim-lcov - https://github.com/andythigpen/nvim-coverage (probably with some effort) Currently I try to use the `--profile=ci` as well as the CI coverage action relies on it but the flags passed to build and test differ. First locally I don't run into the out of disk space problems of the CI runners when also allowing the plugin tests to run. Furthermore I am not fully sure what is going on with the recompilation between `cargo build` and `cargo test`. Chose the most simple config, people might use for running the test suite locally. # User-Facing Changes > Developers, Developers, Developers Steve Ballmer |
||
|
88e07b5ea4 |
DOCUMENTATION: add a new "key-value" example to with-env (#8119)
hello there 👋 😋
when messing around with `with-env`, looking at the examples, i did not
understand that we could directly run `with-env` with a record as the
argument and not from the input of a pipe 😮
even though the last example, i.e.
```bash
Set by row(e.g. `open x.json` or `from json`)
> '{"X":"Y","W":"Z"}'|from json|with-env $in { [$env.X $env.W] }
```
, is equivalent, just the record comes from the pipe, i thought adding
that explicite new example could be helpful 😌
# Description
looking at the single real change of this PR, i.e.
|
||
|
f3ee8b50e3 |
Revert #7779 (enables back subcommand completions) (#8102)
# Description
Reverts the PR #7779 which breaks subcommand completions. The issues
#7648 and #7754 thus still need fixing.
This reverts commit
|
||
|
68ad854b0d |
update link to command reference (#8111)
# Description Broken link # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
789b2e603a |
update nu_plugin_python due to signature changes (#8107)
# Description As title.. # User-Facing Changes None # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
66398fbf77 |
Factorize HTTP commands code (#8088)
# Description In order to work on https://github.com/nushell/nushell/issues/2741, I'm preparing the code. # User-Facing Changes Both commands do support the timeout option. **But the timeout argument `-t, --timeout` has been migrated to `-m, --max-time`**. I had to make a choice since there is another option using the short command `t` which is "content-type". # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
daeb3e5187 |
nu-table/ table --collapse style fix (#8041)
close #8033 So as I said they suppose to be there; I've basically added a change of style if --collapse is used. PS: I guess it's worth to add tests so hold on if you'll plan to merge it. --------- Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> |
||
|
1fd1a3a456 |
Support URLs in start command (#7799)
# Description Fixes issue #7792 Fix basically by @kubouch , "stolen" by me :). Edit: Added "proper" fix rather than the one liner ``` start Cargo.toml // Opens in default editor ``` ``` start https://www.google.com [alternative_browser] // Opens page in default browser or another browser if specified ``` # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - [X] `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - [X] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - [X] `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
30ac2d220c |
update colors in dark theme (#8090)
# Description I noticed a bug in the default_config.nu while debugging something else. The colors in the dark_theme should be named colors and not rgb colors. Rgb colors prevents the dark theme from working properly in terminals that don't support 24-bit aka rgb colors. # User-Facing Changes # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
ade7bde813 |
Bare word improvements (#8066)
# Description This does two fixes for bare words: * It changes completions for paths to wrap a path with backticks if it starts with a number. This helps bare words that start with numbers be separate from unit values * It allows bare words wrapped with backticks to be the name of a command. Backtick values in command positions are no longer treated as strings # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
cba3e100a0 |
fix rename when it is passed an empty column list to rename (#8086)
# Description This PR fixes a bug that occurs if you pass `rename --column` and empty list like `ls | rename -c []`. ## Before ``` > ls | rename -c [] thread 'main' panicked at 'index out of bounds: the len is 0 but the index is 0', crates\nu-command\src\filters\rename.rs:110:15 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ``` ## After ``` > ls | rename -c [] Error: nu:🐚:type_mismatch (link) × Type mismatch. ╭─[entry #1:1:1] 1 │ ls | rename -c [] · ─┬ · ╰── The list cannot be empty and must contain only two values: the column's name and its replacement value ╰──── ``` # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
664d8d3573 |
allow date grouping in group-by (#8084)
# Description This small change allows tables to be grouped by date. It was previously failing because nushell didn't know how to represent the date as a string. This change allows the date to be formatted in rfc3339 format with subseconds represented as dot milliseconds. This formatted datetime representation is already understood by nushell. Now you can do things like ### Grouping by the exact time ``` > ls | group-by modified | table ╭───────────────────────────────┬────────────────╮ │ 2022-01-07T07:53:44.658-06:00 │ [table 1 row] │ │ 2022-11-29T08:08:09.411-06:00 │ [table 2 rows] │ │ 2023-02-15T08:23:16.044-06:00 │ [table 5 rows] │ │ 2023-01-04T14:45:08.940-06:00 │ [table 2 rows] │ │ 2022-04-08T08:12:50.295-05:00 │ [table 1 row] │ │ 2022-09-15T10:11:21.177-05:00 │ [table 1 row] │ │ 2022-06-22T14:26:56.409-05:00 │ [table 1 row] │ │ 2023-02-08T09:24:32.774-06:00 │ [table 1 row] │ │ 2022-05-25T11:57:00.866-05:00 │ [table 2 rows] │ │ 2023-02-15T08:23:16.054-06:00 │ [table 4 rows] │ │ 2023-01-04T14:45:08.970-06:00 │ [table 3 rows] │ │ 2022-08-05T07:14:06.265-05:00 │ [table 1 row] │ │ 2022-01-07T07:53:44.728-06:00 │ [table 1 row] │ │ 2023-01-27T09:39:34.351-06:00 │ [table 1 row] │ │ 2023-02-08T09:24:32.794-06:00 │ [table 1 row] │ │ 2023-02-15T08:36:26.524-06:00 │ [table 1 row] │ │ 2023-01-19T12:53:22.033-06:00 │ [table 1 row] │ ╰───────────────────────────────┴────────────────╯ ``` ### Grouping by only the date (truncating the time componenet to 0) ``` > ls | default "" date | update date {|r| $r.modified | date format '%Y-%m-%d' | into datetime} | group-by date | table ╭───────────────────────────────┬─────────────────╮ │ 2022-01-07T00:00:00.000-06:00 │ [table 2 rows] │ │ 2022-11-29T00:00:00.000-06:00 │ [table 2 rows] │ │ 2023-02-15T00:00:00.000-06:00 │ [table 10 rows] │ │ 2023-01-04T00:00:00.000-06:00 │ [table 5 rows] │ │ 2022-04-08T00:00:00.000-06:00 │ [table 1 row] │ │ 2022-09-15T00:00:00.000-06:00 │ [table 1 row] │ │ 2022-06-22T00:00:00.000-06:00 │ [table 1 row] │ │ 2023-02-08T00:00:00.000-06:00 │ [table 2 rows] │ │ 2022-05-25T00:00:00.000-06:00 │ [table 2 rows] │ │ 2022-08-05T00:00:00.000-06:00 │ [table 1 row] │ │ 2023-01-27T00:00:00.000-06:00 │ [table 1 row] │ │ 2023-01-19T00:00:00.000-06:00 │ [table 1 row] │ ╰───────────────────────────────┴─────────────────╯ ``` ### Grouping and Displaying only the date (you could do this before this PR too) ``` > ls | default "" date | update date {|r| $r.modified | date format '%Y-%m-%d'} | group-by date | table ╭────────────┬─────────────────╮ │ 2022-01-07 │ [table 2 rows] │ │ 2022-11-29 │ [table 2 rows] │ │ 2023-02-15 │ [table 10 rows] │ │ 2023-01-04 │ [table 5 rows] │ │ 2022-04-08 │ [table 1 row] │ │ 2022-09-15 │ [table 1 row] │ │ 2022-06-22 │ [table 1 row] │ │ 2023-02-08 │ [table 2 rows] │ │ 2022-05-25 │ [table 2 rows] │ │ 2022-08-05 │ [table 1 row] │ │ 2023-01-27 │ [table 1 row] │ │ 2023-01-19 │ [table 1 row] │ ╰────────────┴─────────────────╯ ``` ### Shows that nushell understands the rfc3339 format ``` > 2022-01-07T07:53:44.658-06:00 | describe date > 2022-01-07T07:53:44.658-06:00 | date format '%Y-%m-%d' 2022-01-07 ``` # User-Facing Changes Related to #8036 # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
d5ce509e3a |
move ast command to the debug group (#8077)
# Description This PR tweaks how `ast` works a tiny bit by outputting values in stead of eprintln!'s. It also moves the `ast` command into the folder with the rest of the debug commands and changes the category to debug. I started adding some tests but couldn't figure out a good way to do it since every `ast` command contains spans that will be different on each invocation. # User-Facing Changes # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
2f10d19c98 |
remove spurious use from default_context.rs (#8073)
For some reason this "Use" in default_context.rs was in the code, but it is not being "used" --- pun intended... |
||
|
4c787af26d |
relocate debug commands (#8071)
# Description Now that we've landed the debug commands we were working on, let's relocate them to an easier place to find all of them. That's what this PR does. The only actual code change was changing the `timeit` command to a `Category::Debug` command. The rest is just moving things around and hooking them up. # User-Facing Changes # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
8136170431 |
support multiplication operation on string and list values (#8061)
# Description As title, I found this feature is useful to me too :) Closes: #8039 # User-Facing Changes ``` ❯ 3 * "ab" ababab ❯ 3 * [1 2 3] ╭───┬───╮ │ 0 │ 1 │ │ 1 │ 2 │ │ 2 │ 3 │ │ 3 │ 1 │ │ 4 │ 2 │ │ 5 │ 3 │ │ 6 │ 1 │ │ 7 │ 2 │ │ 8 │ 3 │ ╰───┴───╯ ``` # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
007916c2c1 |
Syntax errors for string and int (#7952)
# Description Added a few syntax errors in ints and strings, changed parser to stop and show that error rather than continue trying to parse those tokens as some other shape. However, I don't see how to push this direction much further, and most of the classic confusing errors can't be changed. Flagged as WIP for the moment, but passes all checks and works better than current release: 1. I have yet to figure out how to make these errors refer back to the book, as I see some other errors do. 2. How to give syntax error when malformed int is first token in line? Currently parsed as external command, user gets confusing error message. 3. Would like to be more strict with *decimal* int literals (lacking, e.g, `0x' prefix). Need to tinker more with the order of parse shape calls, currently, float is tried after int, so '1.4' has to be passed. _(Description of your pull request goes here. **Provide examples and/or screenshots** if your changes affect the user experience.)_ ```bash 〉"\z" Error: ╭─[entry #3:1:1] 1 │ "\z" · ─┬─ · ╰── Syntax error in string, unrecognized character after escape '\'. ╰──── ``` Canonic presentation of a syntax error. ```bash 〉" \u{01ffbogus}" Error: × Invalid syntax ╭─[entry #2:1:1] 1 │ " \u{01ffbogus}" · ───────┬────── · ╰── Syntax error in string, expecting 1 to 6 hex digits in unicode escape '\u{X...}', max value 10FFFF. ╰──── ``` Malformed unicode escape in string, flagged as error. String parse can be opinionated, it's the last shape tried. ```bash 〉0x22bogus Error: nu:🐚:external_command (link) × External command failed ╭─[entry #4:1:1] 1 │ 0x22bogus · ────┬──── · ╰── executable was not found ╰──── help: No such file or directory (os error 2) ``` A *correct* number in first token would be evaluated, but an *incorrect* one is treated as external command? Confusing to users. ```bash 〉0 + 0x22bogus Error: × Invalid syntax ╭─[entry #5:1:1] 1 │ 0 + 0x22bogus · ────┬──── · ╰── Syntax error in int, invalid digits in radix 16 int. ╰──── ``` Can give syntax error if token is unambiguously int literal. e.g has 0b or 0x prefix, could not be a float. ```bash 〉0 + 098bogus Error: nu::parser::unsupported_operation (link) × Types mismatched for operation. ╭─[entry #6:1:1] 1 │ 0 + 098bogus · ┬ ┬ ────┬─── · │ │ ╰── string · │ ╰── doesn't support these values. · ╰── int ╰──── help: Change int or string to be the right types and try again. ``` But *decimal* literal (no prefix) can't be too strict. Parser is going to try float later. So '1.4' must be passed. # User-Facing Changes First and foremost, more specific error messages for typos in string and int literals. Probably improves interactive user experience. But a script that was causing and then checking for specific error might notice a different error message. _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Added (positive and negative unit tests in `cargo test -p nu-parser`. Didn't add integration tests. Make sure you've run and fixed any issues with these commands: - [x] `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - [x] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - [x] `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. --------- Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com> |
||
|
208ffdc1da |
Move some from xxx commands to plugin (#7942)
# Description From nushell 0.8 philosophy: https://github.com/nushell/nushell.github.io/blob/main/contributor-book/philosophy_0_80.md#core-categories > The following categories should be moved to plugins: Uncommon format support So this pr is trying to move following commands to plugin: - [X] from eml - [x] from ics - [x] from ini - [x] from vcf And we can have a new plugin handles for these formatting, currently it's implemented here: https://github.com/WindSoilder/nu_plugin_format The command usage should be the same to original command. If it's ok, the plugin can support more formats like [parquet](https://github.com/fdncred/nu_plugin_from_parquet), or [EDN format](https://github.com/nushell/nushell/issues/6415), or something else. Just create a draft pr to show what's the blueprint looks like, and is it a good direction to move forward? # User-Facing Changes _(List of all changes that impact the user experience here. This helps us keep track of breaking changes.)_ # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. |
||
|
4468dc835c |
Make patch coverage check informational only (#8069)
See: https://docs.codecov.com/docs/common-recipe-list#set-non-blocking-status-checks |
||
|
90a2352337 |
Bump roxmltree from 0.17.0 to 0.18.0 (#8065)
Bumps [roxmltree](https://github.com/RazrFalcon/roxmltree) from 0.17.0 to 0.18.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/RazrFalcon/roxmltree/blob/master/CHANGELOG.md">roxmltree's changelog</a>.</em></p> <blockquote> <h2>[0.18.0] - 2023-02-04</h2> <h3>Added</h3> <ul> <li><code>StringStorage</code> that exposes an internal string storage.</li> <li>Allocated strings are stored as <code>Arc<str></code> and not <code>String</code> now.</li> <li><code>Node::text_storage</code></li> <li><code>Node::tail_storage</code></li> <li><code>Attribute::value_storage</code></li> <li><code>Node::range</code></li> </ul> <h3>Removed</h3> <ul> <li><code>Node::position</code>. Use <code>Node::range</code> instead.</li> </ul> <h3>Fixed</h3> <ul> <li>Some methods return longer lifetimes now. Thanks to <a href="https://github.com/adamreichold"><code>@adamreichold</code></a></li> <li>Overly verbose Debug implementations. Thanks to <a href="https://github.com/adamreichold"><code>@adamreichold</code></a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
0a9d14fcb3 |
Bump rstest from 0.15.0 to 0.16.0 (#8064)
[//]: # (dependabot-start) ⚠️ **Dependabot is rebasing this PR** ⚠️ Rebasing might not happen immediately, so don't worry if this takes some time. Note: if you make any changes to this PR yourself, they will take precedence over the rebase. --- [//]: # (dependabot-end) Bumps [rstest](https://github.com/la10736/rstest) from 0.15.0 to 0.16.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/releases">rstest's releases</a>.</em></p> <blockquote> <h2>0.16.0</h2> <p>Use values expression to define test names.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/blob/master/CHANGELOG.md">rstest's changelog</a>.</em></p> <blockquote> <h2>[0.16.0] 2022/11/27</h2> <h3>Changed</h3> <ul> <li>Show <code>TEST START</code> banner only when trace some argument: See <a href="https://github-redirect.dependabot.com/la10736/rstest/issues/158">#158</a> for details.</li> <li>Add values to test name: See <a href="https://github-redirect.dependabot.com/la10736/rstest/issues/160">#160</a> for details.</li> </ul> <h3>Fixed</h3> <ul> <li>Updated test fixtures to 1.64.0 compiler's error messages.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
7863fb1087 |
Bump proptest from 1.0.0 to 1.1.0 (#8063)
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.0.0 to 1.1.0. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
072d2a919d |
#8027 Hide implementation details in invalid cd call (#8049)
# Description [GH issue](https://github.com/nushell/nushell/issues/8027) The current error message for a cd command includes a Debug output of the `io::Error` being returned from `canonicalize_with`, so it's been replaced with a more user friendly and readable depiction of the error. # User-Facing Changes As described in the issue, I've changed the error message for a cd into a directory that does not exist from: ``` /home/rdevenney/projects/open_source/nushell〉cd asdfasdf 02/11/2023 08:59:59 PM Error: nu:🐚:directory_not_found (link) × Directory not found ╭─[entry #2:1:1] 1 │ cd asdfasdf · ────┬─── · ╰── directory not found ╰──── help: IO Error: Os { code: 2, kind: NotFound, message: "No such file or directory" } ``` To: ``` /home/rdevenney/projects/open_source/nushell〉cd asdfasdf 02/11/2023 08:58:38 PM Error: nu:🐚:directory_not_found (link) × Directory not found ╭─[entry #1:1:1] 1 │ cd asdfasdf · ────┬─── · ╰── directory not found ╰──── help: IO Error: DirectoryNotFound ``` # Tests + Formatting Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass # After Submitting If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. --------- Co-authored-by: Reilly Wood <reilly.wood@icloud.com> |