Skip to content

Commit fa3761c

Browse files
committed
Add a TOC to the unstable chapter.
1 parent abbd2b0 commit fa3761c

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

src/doc/src/reference/unstable.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,55 @@ Each new feature described below should explain how to use it.
5858
[nightly channel]: ../../book/appendix-07-nightly-rust.html
5959
[stabilized]: https://doc.crates.io/contrib/process/unstable.html#stabilization
6060

61+
### List of unstable features
62+
63+
* Unstable-specific features
64+
* [-Z allow-features](#allow-features) — Provides a way to restrict which unstable features are used.
65+
* Build scripts and linking
66+
* [extra-link-arg](#extra-link-arg) — Allows build scripts to pass extra link arguments in more cases.
67+
* [Metabuild](#metabuild) — Provides declarative build scripts.
68+
* Resolver and features
69+
* [no-index-update](#no-index-update) — Prevents cargo from updating the index cache.
70+
* [avoid-dev-deps](#avoid-dev-deps) — Prevents the resolver from including dev-dependencies during resolution.
71+
* [minimal-versions](#minimal-versions) — Forces the resolver to use the lowest compatible version instead of the highest.
72+
* [public-dependency](#public-dependency) — Allows dependencies to be classified as either public or private.
73+
* [Namespaced features](#namespaced-features) — Separates optional dependencies into a separate namespace from regular features, and allows feature names to be the same as some dependency name.
74+
* [Weak dependency features](#weak-dependency-features) — Allows setting features for dependencies without enabling optional dependencies.
75+
* Output behavior
76+
* [out-dir](#out-dir) — Adds a directory where artifacts are copied to.
77+
* [terminal-width](#terminal-width) — Tells rustc the width of the terminal so that long diagnostic messages can be truncated to be more readable.
78+
* Compile behavior
79+
* [mtime-on-use](#mtime-on-use) — Updates the last-modified timestamp on every dependency every time it is used, to provide a mechanism to delete unused artifacts.
80+
* [doctest-xcompile](#doctest-xcompile) — Supports running doctests with the `--target` flag.
81+
* [multitarget](#multitarget) — Supports building for multiple targets at the same time.
82+
* [build-std](#build-std) — Builds the standard library instead of using pre-built binaries.
83+
* [build-std-features](#build-std-features) — Sets features to use with the standard library.
84+
* [binary-dep-depinfo](#binary-dep-depinfo) — Causes the dep-info file to track binary dependencies.
85+
* [panic-abort-tests](#panic-abort-tests) — Allows running tests with the "abort" panic strategy.
86+
* rustdoc
87+
* [`doctest-in-workspace`](#doctest-in-workspace) — Fixes workspace-relative paths when running doctests.
88+
* [rustdoc-map](#rustdoc-map) — Provides mappings for documentation to link to external sites like [docs.rs](https://docs.rs/).
89+
* `Cargo.toml` extensions
90+
* [Custom named profiles](#custom-named-profiles) — Adds custom named profiles in addition to the standard names.
91+
* [Profile `strip` option](#profile-strip-option) — Forces the removal of debug information and symbols from executables.
92+
* [per-package-target](#per-package-target) — Sets the `--target` to use for each individual package.
93+
* [rust-version](#rust-version) — Allows to declare the minimum supported Rust version.
94+
* [Edition 2021](#edition-2021) — Adds support for the 2021 Edition.
95+
* Information and metadata
96+
* [Build-plan](#build-plan) — Emits JSON information on which commands will be run.
97+
* [timings](#timings) — Generates a report on how long individual dependencies took to run.
98+
* [unit-graph](#unit-graph) — Emits JSON for Cargo's internal graph structure.
99+
* [future incompat report](#future-incompat-report) — Displays a report for future incompatibilities that may error in the future.
100+
* Configuration
101+
* [config-cli](#config-cli) — Adds the ability to pass configuration options on the command-line.
102+
* [config-include](#config-include) — Adds the ability for config files to include other files.
103+
* [configurable-env](#configurable-env) — Adds support for defining environment variables that will be set when building and running.
104+
* [patch-in-config](#patch-in-config) — Adds support for specifying the `[patch]` table in config files.
105+
* [`cargo config`](#cargo-config) — Adds a new subcommand for viewing config files.
106+
* Registries
107+
* [credential-process](#credential-process) — Adds support for fetching registry tokens from an external authentication program.
108+
* [`cargo logout`](#cargo-logout) — Adds the `logout` command to remove the currently saved registry token.
109+
61110
### allow-features
62111

63112
This permanently-unstable flag makes it so that only a listed set of

0 commit comments

Comments
 (0)