rust_toolchain/lib.rs
1//! # rust-toolchain
2//!
3//! The `rust-toolchain` crate defines a set of types which describe a Rust toolchain.
4//! While there is no definitive spec which defines what a "Rust toolchain" is,
5//! we try to follow the official Rust release process as closely as possible.
6//! The [`rustup`] project has written down a rough specification for [`toolchains`] used
7//! by the Rust project. In the initial version, we will follow this spec, but disregard custom
8//! toolchains altogether, in the name of simplicity.
9//!
10//! This project is part of the [`rust-releases`] and [`cargo-msrv`] projects.
11//! In case you have a feature request, question, bug, or have another reason to contact the developers,
12//! please, create a new issue at the `rust-releases` [`repository`].
13//!
14//! [`rustup`]: https://github.com/rust-lang/rustup
15//! [`toolchains`]: https://rust-lang.github.io/rustup/concepts/toolchains.html
16//! [`rust-releases`]: https://github.com/foresterre/rust-releases
17//! [`cargo-msrv`]: https://github.com/foresterre/cargo-msrv
18//! [`repository`]: https://github.com/foresterre/rust-releases/issues
19// #![deny(missing_docs)]
20#![warn(clippy::all)]
21#![deny(unsafe_code)]
22
23mod channel;
24mod component;
25mod date;
26mod rust_version;
27mod target;
28mod toolchain;
29
30pub use channel::{Beta, Channel, Nightly, Stable};
31pub use component::Component;
32pub use date::ToolchainDate;
33pub use rust_version::RustVersion;
34pub use target::Target;
35pub use toolchain::Toolchain;