Skip to content

Commit

Permalink
Merge pull request #232 from nikomatsakis/minimize
Browse files Browse the repository at this point in the history
Minimize the edition guide
  • Loading branch information
nikomatsakis committed May 21, 2021
2 parents 1da3c41 + 8b6d2d1 commit 302a115
Show file tree
Hide file tree
Showing 104 changed files with 559 additions and 3,900 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
- name: Install mdbook
run: |
mkdir bin
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.3.5/mdbook-v0.3.5-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.7/mdbook-v0.4.7-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin
echo "$(pwd)/bin" >> $GITHUB_PATH
- name: Report versions
run: |
Expand Down
88 changes: 88 additions & 0 deletions book.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,91 @@ title = "The Edition Guide"

[output.html]
git-repository-url = "https://github.com/rust-lang/edition-guide"

[output.html.redirect]
"/rust-2018/edition-changes.html" = "index.html"
"/rust-2018/module-system/index.html" = "../path-changes.html"
"/rust-2018/module-system/raw-identifiers.html" = "../../../rust-by-example/compatibility/raw_identifiers.html"
"/rust-2018/module-system/path-clarity.html" = "../path-changes.html"
"/rust-2018/module-system/more-visibility-modifiers.html" = "../../../reference/visibility-and-privacy.html"
"/rust-2018/module-system/nested-imports-with-use.html" = "../../../rust-by-example/mod/use.html"
"/rust-2018/error-handling-and-panics/index.html" = "../../../book/ch09-00-error-handling.html"
"/rust-2018/error-handling-and-panics/the-question-mark-operator-for-easier-error-handling.html" = "../../../book/ch09-02-recoverable-errors-with-result.html"
"/rust-2018/error-handling-and-panics/question-mark-in-main-and-tests.html" = "../../../rust-by-example/error/result.html#using-result-in-main"
"/rust-2018/error-handling-and-panics/controlling-panics-with-std-panic.html" = "https://blog.rust-lang.org/2016/05/26/Rust-1.9.html#controlled-unwinding"
"/rust-2018/error-handling-and-panics/aborting-on-panic.html" = "../../../book/ch09-01-unrecoverable-errors-with-panic.html"
"/rust-2018/control-flow/index.html" = "../../../rust-by-example/flow_control.html"
"/rust-2018/control-flow/loops-can-break-with-a-value.html" = "../../../rust-by-example/flow_control/loop/return.html"
"/rust-2018/control-flow/async-await-for-easier-concurrency.html" = "https://rust-lang.github.io/async-book/"
"/rust-2018/trait-system/index.html" = "../index.html"
"/rust-2018/trait-system/impl-trait-for-returning-complex-types-with-ease.html" = "https://blog.rust-lang.org/2018/05/10/Rust-1.26.html#impl-trait"
"/rust-2018/trait-system/dyn-trait-for-trait-objects.html" = "https://blog.rust-lang.org/2018/06/21/Rust-1.27.html#dyn-trait"
"/rust-2018/trait-system/more-container-types-support-trait-objects.html" = "https://github.com/rust-lang/rfcs/blob/master/text/0982-dst-coercion.md"
"/rust-2018/trait-system/associated-constants.html" = "../../../reference/items/associated-items.html#associated-constants"
"/rust-2018/trait-system/no-anon-params.html" = "../trait-fn-parameters.html"
"/rust-2018/slice-patterns.html" = "https://blog.rust-lang.org/2018/05/10/Rust-1.26.html#basic-slice-patterns"
"/rust-2018/ownership-and-lifetimes/index.html" = "../../../book/ch04-00-understanding-ownership.html"
"/rust-2018/ownership-and-lifetimes/non-lexical-lifetimes.html" = "https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html#non-lexical-lifetimes"
"/rust-2018/ownership-and-lifetimes/default-match-bindings.html" = "https://blog.rust-lang.org/2018/05/10/Rust-1.26.html#nicer-match-bindings"
"/rust-2018/ownership-and-lifetimes/the-anonymous-lifetime.html" = "https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html#more-lifetime-elision-rules"
"/rust-2018/ownership-and-lifetimes/lifetime-elision-in-impl.html" = "https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html#more-lifetime-elision-rules"
"/rust-2018/ownership-and-lifetimes/inference-in-structs.html" = "https://github.com/rust-lang/rfcs/blob/master/text/2093-infer-outlives.md"
"/rust-2018/ownership-and-lifetimes/simpler-lifetimes-in-static-and-const.html" = "../../../reference/lifetime-elision.html#static-lifetime-elision"
"/rust-2018/data-types/index.html" = "../index.html"
"/rust-2018/data-types/field-init-shorthand.html" = "../../../reference/expressions/struct-expr.html#struct-field-init-shorthand"
"/rust-2018/data-types/inclusive-ranges.html" = "https://blog.rust-lang.org/2018/05/10/Rust-1.26.html#inclusive-ranges-with-"
"/rust-2018/data-types/128-bit-integers.html" = "https://blog.rust-lang.org/2018/05/10/Rust-1.26.html#128-bit-integers"
"/rust-2018/data-types/operator-equals-are-now-implementable.html" = "../../../std/ops/index.html"
"/rust-2018/data-types/union-for-an-unsafe-form-of-enum.html" = "../../../reference/items/unions.html"
"/rust-2018/data-types/choosing-alignment-with-the-repr-attribute.html" = "../../../reference/type-layout.html#representations"
"/rust-2018/simd-for-faster-computing.html" = "https://blog.rust-lang.org/2018/06/21/Rust-1.27.html#simd"
"/rust-2018/macros/index.html" = "../../../book/ch19-06-macros.html"
"/rust-2018/macros/custom-derive.html" = "../../../book/ch19-06-macros.html#how-to-write-a-custom-derive-macro"
"/rust-2018/macros/macro-changes.html" = "../../../book/ch19-06-macros.html"
"/rust-2018/macros/at-most-once.html" = "../../../reference/macros-by-example.html#repetitions"
"/rust-2018/the-compiler/index.html" = "../index.html"
"/rust-2018/the-compiler/improved-error-messages.html" = "https://blog.rust-lang.org/2016/09/29/Rust-1.12.html#overhauled-error-messages"
"/rust-2018/the-compiler/incremental-compilation-for-faster-compiles.html" = "https://blog.rust-lang.org/2018/02/15/Rust-1.24.html#incremental-compilation"
"/rust-2018/the-compiler/an-attribute-for-deprecation.html" = "../../../reference/attributes/diagnostics.html#the-deprecated-attribute"
"/rust-2018/rustup-for-managing-rust-versions.html" = "https://rust-lang.github.io/rustup/"
"/rust-2018/cargo-and-crates-io/index.html" = "../../../cargo/index.html"
"/rust-2018/cargo-and-crates-io/cargo-check-for-faster-checking.html" = "../../../cargo/commands/cargo-check.html"
"/rust-2018/cargo-and-crates-io/cargo-install-for-easy-installation-of-tools.html" = "../../../cargo/commands/cargo-install.html"
"/rust-2018/cargo-and-crates-io/cargo-new-defaults-to-a-binary-project.html" = "https://blog.rust-lang.org/2018/03/29/Rust-1.25.html#cargo-features"
"/rust-2018/cargo-and-crates-io/cargo-rustc-for-passing-arbitrary-flags-to-rustc.html" = "../../../cargo/commands/cargo-rustc.html"
"/rust-2018/cargo-and-crates-io/cargo-workspaces-for-multi-package-projects.html" = "../../../cargo/reference/workspaces.html"
"/rust-2018/cargo-and-crates-io/multi-file-examples.html" = "../../../cargo/guide/project-layout.html"
"/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html" = "../../../cargo/reference/overriding-dependencies.html#the-patch-section"
"/rust-2018/cargo-and-crates-io/cargo-can-use-a-local-registry-replacement.html" = "../../../cargo/reference/source-replacement.html"
"/rust-2018/cargo-and-crates-io/crates-io-disallows-wildcard-dependencies.html" = "https://blog.rust-lang.org/2016/01/21/Rust-1.6.html#cratesio-disallows-wildcards"
"/rust-2018/documentation/index.html" = "../../../index.html"
"/rust-2018/documentation/new-editions-of-the-book.html" = "../../../book/index.html"
"/rust-2018/documentation/the-rust-bookshelf.html" = "../../../index.html"
"/rust-2018/documentation/the-rustonomicon.html" = "../../../nomicon/index.html"
"/rust-2018/documentation/std-os-has-documentation-for-all-platforms.html" = "../../../std/os/index.html"
"/rust-2018/rustdoc/index.html" = "../../../rustdoc/index.html"
"/rust-2018/rustdoc/documentation-tests-can-now-compile-fail.html" = "../../../rustdoc/documentation-tests.html#attributes"
"/rust-2018/rustdoc/rustdoc-uses-commonmark.html" = "../../../rustdoc/how-to-write-documentation.html#markdown"
"/rust-2018/platform-and-target-support/index.html" = "../../../rustc/targets/index.html"
"/rust-2018/platform-and-target-support/libcore-for-low-level-rust.html" = "../../../core/index.html"
"/rust-2018/platform-and-target-support/webassembly-support.html" = "https://rustwasm.github.io/docs/book/"
"/rust-2018/platform-and-target-support/global-allocators.html" = "https://blog.rust-lang.org/2018/08/02/Rust-1.28.html#global-allocators"
"/rust-2018/platform-and-target-support/msvc-toolchain-support.html" = "../../../rustc/platform-support.html"
"/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.html" = "../../../rustc/platform-support.html"
"/rust-2018/platform-and-target-support/cdylib-crates-for-c-interoperability.html" = "https://github.com/rust-lang/rfcs/blob/master/text/1510-cdylib.md"
"/rust-next/index.html" = "../rust-2021/index.html"
"/rust-next/edition-changes.html" = "../rust-2021/index.html"
"/rust-next/dbg-macro.html" = "../../std/macro.dbg.html"
"/rust-next/no-jemalloc.html" = "https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html#jemalloc-is-removed-by-default"
"/rust-next/uniform-paths.html" = "https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html#final-module-improvements"
"/rust-next/literal-macro-matcher.html" = "https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html#macro-improvements"
"/rust-next/qustion-mark-operator-in-macros.html" = "https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html#macro-improvements"
"/rust-next/const-fn.html" = "../../reference/const_eval.html"
"/rust-next/pin.html" = "../../std/pin/index.html"
"/rust-next/no-more-fnbox.html" = "https://blog.rust-lang.org/2019/05/23/Rust-1.35.0.html#fn-closure-traits-implemented-for-boxdyn-fn"
"/rust-next/alternative-cargo-registries.html" = "https://blog.rust-lang.org/2019/04/11/Rust-1.34.0.html#alternative-cargo-registries"
"/rust-next/tryfrom-and-tryinto.html" = "https://blog.rust-lang.org/2019/04/11/Rust-1.34.0.html#tryfrom-and-tryinto"
"/rust-next/future.html" = "../../std/future/trait.Future.html"
"/rust-next/alloc.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#the-alloc-crate-is-stable"
"/rust-next/maybe-uninit.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#maybeuninitt-instead-of-memuninitialized"
"/rust-next/cargo-vendor.html" = "../../cargo/commands/cargo-vendor.html"
106 changes: 17 additions & 89 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,92 +15,20 @@
## Rust 2018

- [Rust 2018](rust-2018/index.md)
- [2018-Specific Changes](rust-2018/edition-changes.md)
- [Module system](rust-2018/module-system/index.md)
- [Raw identifiers](rust-2018/module-system/raw-identifiers.md)
- [Path clarity](rust-2018/module-system/path-clarity.md)
- [More visibility modifiers](rust-2018/module-system/more-visibility-modifiers.md)
- [Nested imports with `use`](rust-2018/module-system/nested-imports-with-use.md)
- [Error handling and panics](rust-2018/error-handling-and-panics/index.md)
- [The `?` operator for easier error handling](rust-2018/error-handling-and-panics/the-question-mark-operator-for-easier-error-handling.md)
- [`?` in `main` and tests](rust-2018/error-handling-and-panics/question-mark-in-main-and-tests.md)
- [Controlling panics with `std::panic`](rust-2018/error-handling-and-panics/controlling-panics-with-std-panic.md)
- [Aborting on panic](rust-2018/error-handling-and-panics/aborting-on-panic.md)
- [Control flow](rust-2018/control-flow/index.md)
- [Loops can `break` with a value](rust-2018/control-flow/loops-can-break-with-a-value.md)
- [`async`/`await` for easier concurrency](rust-2018/control-flow/async-await-for-easier-concurrency.md)
- [Trait system](rust-2018/trait-system/index.md)
- [`impl Trait` for returning complex types with ease](rust-2018/trait-system/impl-trait-for-returning-complex-types-with-ease.md)
- [`dyn Trait` for trait objects](rust-2018/trait-system/dyn-trait-for-trait-objects.md)
- [More container types support trait objects](rust-2018/trait-system/more-container-types-support-trait-objects.md)
- [Associated constants](rust-2018/trait-system/associated-constants.md)
- [No more anonymous parameters](rust-2018/trait-system/no-anon-params.md)
- [Slice patterns](rust-2018/slice-patterns.md)
- [Ownership and lifetimes](rust-2018/ownership-and-lifetimes/index.md)
- [Non-lexical lifetimes](rust-2018/ownership-and-lifetimes/non-lexical-lifetimes.md)
- [Default `match` bindings](rust-2018/ownership-and-lifetimes/default-match-bindings.md)
- [`'_`, the anonymous lifetime](rust-2018/ownership-and-lifetimes/the-anonymous-lifetime.md)
- [Lifetime elision in `impl`](rust-2018/ownership-and-lifetimes/lifetime-elision-in-impl.md)
- [`T: 'a` inference in structs](rust-2018/ownership-and-lifetimes/inference-in-structs.md)
- [Simpler lifetimes in `static` and `const`](rust-2018/ownership-and-lifetimes/simpler-lifetimes-in-static-and-const.md)
- [Data types](rust-2018/data-types/index.md)
- [Field init shorthand](rust-2018/data-types/field-init-shorthand.md)
- [`..=` for inclusive ranges](rust-2018/data-types/inclusive-ranges.md)
- [128 bit integers](rust-2018/data-types/128-bit-integers.md)
- ["Operator-equals" are now implementable](rust-2018/data-types/operator-equals-are-now-implementable.md)
- [`union` for an unsafe form of `enum`](rust-2018/data-types/union-for-an-unsafe-form-of-enum.md)
- [Choosing alignment with the `repr` attribute](rust-2018/data-types/choosing-alignment-with-the-repr-attribute.md)
- [SIMD for faster computing](rust-2018/simd-for-faster-computing.md)
- [Macros](rust-2018/macros/index.md)
- [Custom Derive](rust-2018/macros/custom-derive.md)
- [Macro changes](rust-2018/macros/macro-changes.md)
- [At most one repetition](rust-2018/macros/at-most-once.md)
- [The compiler](rust-2018/the-compiler/index.md)
- [Improved error messages](rust-2018/the-compiler/improved-error-messages.md)
- [Incremental Compilation for faster compiles](rust-2018/the-compiler/incremental-compilation-for-faster-compiles.md)
- [An attribute for deprecation](rust-2018/the-compiler/an-attribute-for-deprecation.md)
- [Rustup for managing Rust versions](rust-2018/rustup-for-managing-rust-versions.md)
- [Cargo and crates.io](rust-2018/cargo-and-crates-io/index.md)
- [`cargo check` for faster checking](rust-2018/cargo-and-crates-io/cargo-check-for-faster-checking.md)
- [`cargo install` for easy installation of tools](rust-2018/cargo-and-crates-io/cargo-install-for-easy-installation-of-tools.md)
- [`cargo new` defaults to a binary project](rust-2018/cargo-and-crates-io/cargo-new-defaults-to-a-binary-project.md)
- [`cargo rustc` for passing arbitrary flags to `rustc`](rust-2018/cargo-and-crates-io/cargo-rustc-for-passing-arbitrary-flags-to-rustc.md)
- [Cargo workspaces for multi-package projects](rust-2018/cargo-and-crates-io/cargo-workspaces-for-multi-package-projects.md)
- [Multi-file `examples`](rust-2018/cargo-and-crates-io/multi-file-examples.md)
- [Replacing dependencies with `patch`](rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.md)
- [Cargo can use a local registry replacement](rust-2018/cargo-and-crates-io/cargo-can-use-a-local-registry-replacement.md)
- [Crates.io disallows wildcard dependencies](rust-2018/cargo-and-crates-io/crates-io-disallows-wildcard-dependencies.md)
- [Documentation](rust-2018/documentation/index.md)
- [New editions of the "the book"](rust-2018/documentation/new-editions-of-the-book.md)
- [The Rust Bookshelf](rust-2018/documentation/the-rust-bookshelf.md)
- [The Rustonomicon](rust-2018/documentation/the-rustonomicon.md)
- [Full documentation for `std::os`](rust-2018/documentation/std-os-has-documentation-for-all-platforms.md)
- [`rustdoc`](rust-2018/rustdoc/index.md)
- [Documentation tests can now `compile-fail`](rust-2018/rustdoc/documentation-tests-can-now-compile-fail.md)
- [Rustdoc uses CommonMark](rust-2018/rustdoc/rustdoc-uses-commonmark.md)
- [Platform and target support](rust-2018/platform-and-target-support/index.md)
- [`libcore` for low-level Rust](rust-2018/platform-and-target-support/libcore-for-low-level-rust.md)
- [WebAssembly support](rust-2018/platform-and-target-support/webassembly-support.md)
- [Global allocators](rust-2018/platform-and-target-support/global-allocators.md)
- [MSVC toolchain support](rust-2018/platform-and-target-support/msvc-toolchain-support.md)
- [MUSL support for fully static binaries](rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md)
- [`cdylib` crates for C interoperability](rust-2018/platform-and-target-support/cdylib-crates-for-c-interoperability.md)

## The Next Edition

- [The Next Edition](rust-next/index.md)
- [Next-Specific Changes](rust-next/edition-changes.md)
- [The dbg! macro](rust-next/dbg-macro.md)
- [No jemalloc by default](rust-next/no-jemalloc.md)
- [Uniform Paths](rust-next/uniform-paths.md)
- [`literal` macro matcher](rust-next/literal-macro-matcher.md)
- [`?` operator in macros](rust-next/qustion-mark-operator-in-macros.md)
- [const fn](rust-next/const-fn.md)
- [Pinning](rust-next/pin.md)
- [No more FnBox](rust-next/no-more-fnbox.md)
- [Alternative Cargo Registries](rust-next/alternative-cargo-registries.md)
- [TryFrom and TryInto](rust-next/tryfrom-and-tryinto.md)
- [The Future trait](rust-next/future.md)
- [The alloc crate](rust-next/alloc.md)
- [MaybeUninit<T>](rust-next/maybe-uninit.md)
- [cargo vendor](rust-next/cargo-vendor.md)
- [Path and module system changes](rust-2018/path-changes.md)
- [Anonymous trait function parameters deprecated](rust-2018/trait-fn-parameters.md)
- [New keywords](rust-2018/new-keywords.md)
- [Method dispatch for raw pointers to inference variables](rust-2018/tyvar-behind-raw-pointer.md)
- [Cargo changes](rust-2018/cargo.md)

## Rust 2021

- [Rust 2021 🚧](rust-2021/index.md)
- [Additions to the prelude](rust-2021/prelude.md)
- [Default Cargo feature resolver](rust-2021/default-cargo-resolver.md)
- [IntoIterator for arrays](rust-2021/IntoIterator-for-arrays.md)
- [Disjoint capture in closures](rust-2021/disjoint-capture-in-closures.md)
- [Panic macro consistency](rust-2021/panic-macro-consistency.md)
- [Reserving syntax](rust-2021/reserving-syntax.md)
- [Warnings promoted to errors](rust-2021/warnings-promoted-to-error.md)
- [Or patterns in macro-rules](rust-2021/or-patterns-macro-rules.md)
Loading

0 comments on commit 302a115

Please sign in to comment.