Docs: Update config summary to include missing keys.
The summary at the top of the config chapter is intended to include all of the config keys to provide an overview of all the different options available. A few keys were missing, so this adds those missing keys.
test: migrate `dep_info/diagnostics/direct_minimal_versions` to snapbox
### What does this PR try to resolve?
Complete the migration of the following files:
```
tests/testsuite/dep_info.rs
tests/testsuite/diagnostics.rs
tests/testsuite/direct_minimal_versions.rs
```
part of #14039
Docs: Remove duplicate `strip` section.
The `profile.<name>.strip` section was listed twice in the config docs. This removes that unnecessary duplicate.
Docs: Fix curly quotes in config docs.
mdBook automatically converts the "quotation mark" character to use smart quotes such as “example”. This isn't valid TOML syntax, and means you can't copy and paste these values. This wraps these TOML strings as code spans so that this conversion doesn't happen (and helps emphasize these are literal code spans).
test: omit target-dir name
This was found during submodule update in rust-lang/rust repo.
```
---- publish_lockfile::note_resolve_changes stdout ----
thread 'publish_lockfile::note_resolve_changes' panicked at tests/testsuite/publish_lockfile.rs:255:10:
error: Expected lines did not match (ignoring order):
0 6 Packaging foo v0.0.1 ([..])
1 0 Archiving Cargo.lock
2 0 Archiving Cargo.toml
3 1 Archiving Cargo.toml.orig
4 0 Archiving src/main.rs
5 0 Updating `dummy-registry` index
6 2 note: package `multi v0.1.0` added to the packaged Cargo.lock file, was originally sourced from `[..]`
7 2 note: package `patched v1.0.0` added to the packaged Cargo.lock file, was originally sourced from `[..]`
8 0 Packaged 4 files, 2.1KiB (1.1KiB compressed)
9 -warning: no (git) Cargo.toml found at `target/tmp/[..]/foo/Cargo.toml` in workdir `[..]`
9 +warning: no (git) Cargo.toml found at `build/aarch64-apple-darwin/stage2-tools/aarch64-apple-darwin/tmp/cit/t0/foo/Cargo.toml` in workdir `[..]`
```
This was found during submodule update in rust-lang/rust repo.
```
error: Expected lines did not match (ignoring order):
0 6 Packaging foo v0.0.1 ([..])
1 0 Archiving Cargo.lock
2 0 Archiving Cargo.toml
3 1 Archiving Cargo.toml.orig
4 0 Archiving src/main.rs
5 0 Updating `dummy-registry` index
6 2 note: package `multi v0.1.0` added to the packaged Cargo.lock file, was originally sourced from `[..]`
7 2 note: package `patched v1.0.0` added to the packaged Cargo.lock file, was originally sourced from `[..]`
8 0 Packaged 4 files, 2.1KiB (1.1KiB compressed)
9 -warning: no (git) Cargo.toml found at `target/tmp/[..]/foo/Cargo.toml` in workdir `[..]`
9 +warning: no (git) Cargo.toml found at `build/aarch64-apple-darwin/stage2-tools/aarch64-apple-darwin/tmp/cit/t0/foo/Cargo.toml` in workdir `[..]`
```
test: migrate offline, open_namespaces and owner to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/offline.rs`
- `tests/testsuite/open_namespaces.rs`
- `tests/testsuite/owner.rs`
Change tests to support `rustc` wording changes
Between https://github.com/rust-lang/rust/pull/126810 and https://github.com/rust-lang/rust/pull/126810 the output of `rustc` for resolution errors is going to change in such a way that some existing cargo tests will fail. Change them to support both the current and future output, so that those PRs can land in `rustc`.
Include vcs_info even if workspace is dirty
### What does this PR try to resolve?
Related to #13695.
Generates and packages the `.cargo_vcs_info.json` file even if the worktree is dirty, as long as `--allow-dirty` is passed.
Also added a `dirty` field to the file to record if the Git repository status is dirty.
Tests are included.
test: migrate profile* to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/profile_config.rs`
- `tests/testsuite/profile_custom.rs`
- `tests/testsuite/profile_overrides.rs`
- `tests/testsuite/profile_targets.rs`
- `tests/testsuite/profile_trim_paths.rs`
- `tests/testsuite/profiles.rs`
test: migrate path and paths to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/path.rs`
- `tests/testsuite/paths.rs`
test: migrate rustflags, rustup and script to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/rustflags.rs`
- `tests/testsuite/rustup.rs`
- `tests/testsuite/script.rs`
test: migrate rename_deps, replace, required_features and run to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/rename_deps.rs`
- `tests/testsuite/replace.rs`
- `tests/testsuite/required_features.rs`
- `tests/testsuite/run.rs`
test: migrate weak_dep_features, workspaces and yank to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- `tests/testsuite/weak_dep_features.rs`
- `tests/testsuite/workspaces.rs`
- `tests/testsuite/yank.rs`
test: migrate features and features(2|_namespaced) to snapbox
### What does this PR try to resolve?
Part of https://github.com/rust-lang/cargo/issues/14039.
Migrate following to snapbox:
- tests/testsuite/features.rs
- tests/testsuite/features2.rs
- tests/testsuite/features_namespaced.rs