nushell/crates/nu-command/src/filesystem
Daniel Buch Hansen 850ecf648a
Protocol: debug_assert!() Span to reflect a valid slice (#6806)
Also enforce this by #[non_exhaustive] span such that going forward we
cannot, in debug builds (1), construct invalid spans.

The motivation for this stems from #6431 where I've seen crashes due to
invalid slice indexing.

My hope is this will mitigate such senarios

1. https://github.com/nushell/nushell/pull/6431#issuecomment-1278147241

# Description

(description of your pull request here)

# Tests

Make sure you've done the following:

- [ ] Add tests that cover your changes, either in the command examples,
the crate/tests folder, or in the /tests folder.
- [ ] Try to think about corner cases and various ways how your changes
could break. Cover them with tests.
- [ ] If adding tests is not possible, please document in the PR body a
minimal example with steps on how to reproduce so one can verify your
change works.

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)
- [ ] `cargo clippy --workspace --features=extra -- -D warnings -D
clippy::unwrap_used -A clippy::needless_collect` to check that you're
using the standard code style
- [ ] `cargo test --workspace --features=extra` to check that all the
tests pass

# Documentation

- [ ] If your PR touches a user-facing nushell feature then make sure
that there is an entry in the documentation
(https://github.com/nushell/nushell.github.io) for the feature, and
update it if necessary.
2022-12-03 11:44:12 +02:00
..
cd_query.rs Add hooks to cli/repl (#5479) 2022-05-09 07:28:39 +12:00
cd.rs Refactor ansi stripping into nu-utils functions (#6966) 2022-11-05 07:49:45 +13:00
cp.rs Refactor ansi stripping into nu-utils functions (#6966) 2022-11-05 07:49:45 +13:00
glob.rs Fix glob error arrows (#7194) 2022-11-22 14:23:01 +01:00
ls.rs Protocol: debug_assert!() Span to reflect a valid slice (#6806) 2022-12-03 11:44:12 +02:00
mkdir.rs Test command names and search terms for redundancy (#6380) 2022-08-24 11:16:47 +02:00
mod.rs enable cd to work with directory abbreviations (#5452) 2022-05-06 07:58:32 -05:00
mv.rs Fix mv error message issues (arrows, Windows paths) (#7197) 2022-11-23 16:55:13 +13:00
open.rs Make external command substitution works friendly(like fish shell, trailing ending newlines) (#7156) 2022-11-23 16:51:57 +13:00
rm.rs Protocol: debug_assert!() Span to reflect a valid slice (#6806) 2022-12-03 11:44:12 +02:00
save.rs add -f, --force for save command (#7262) 2022-12-01 06:26:17 -06:00
touch.rs remove -d and -t from touch (#6629) 2022-09-28 13:48:34 +13:00
util.rs Remove unnecessary #[allow(...)] annotations (#6870) 2022-10-24 20:12:16 +02:00
watch.rs Split blocks and closures (#7075) 2022-11-10 21:21:49 +13:00