Upgrades the 'rand' crate dependency from v0.8.5 to v0.10.1 across
all chapter listings and updates the corresponding book narrative to
reflect the new API structure.
Key Changes:
- Manifests: Updated 14 Cargo.toml files in listings to point to rand 0.10.1.
- Source Code: Migrated 11 main.rs and lib.rs source files under listings/ to:
- Bring the new extension trait 'rand::RngExt' into scope instead of 'rand::Rng'.
- Replace 'rand::thread_rng().gen_range(1..=100)' with 'rand::rng().random_range(1..=100)'.
- Chapter 1: Updated the offline caching command in ch01-01-installation.md to refer to rand@0.10.1.
- Chapter 2: Updated ch02-00-guessing-game-tutorial.md to explain RngExt, rand::rng, and random_range. Adjusted all SemVer examples, compiler outputs, and hypotheticals to use 0.10.1 / 0.10.2 / 0.11.0.
- Chapter 7: Updated the module path and import system explanation in ch07-04-bringing-paths-into-scope-with-the-use-keyword.md to target the new traits/functions.
- Chapter 14: Updated simulated cargo output in ch14-03-cargo-workspaces.md showing rand v0.10.1 being compiled.
Fixes#4705
The line "the value will be included in the iteration produced by
filter" should refer to "the iterator produced by filter", matching
the surrounding paragraph's use of "iterator" and matching what
filter actually returns (an iterator that lazily yields the chosen
items).
Verified against the current rendering on the stable book page:
https://doc.rust-lang.org/stable/book/ch13-02-iterators.html#closures-that-capture-their-environment
Only one word is changed. `dprint fmt` reports no further formatting
changes.
This changes the name of the `TrplNote` mdbook preprocessor so that it
matches the name used in `book.toml`. The reason this needs to be in
sync is that in upstream we use `MDBook::with_preprocessor` to replace
the preprocessor, but unfortunately it grabs the name from the
preprocessor itself. If these are out of sync, it ends up not being able
to replace the old preprocessor config. The API in mdbook should
probably be better to make it easier to manage the config. For now, this
is probably the easiest fix.
Now that rand 0.9 actually exists 😅 Hopefully version 0.999.0 won't
exist for a while!!
This should address some of the confusion in #4508 and shouldn't need
further updating even as rand's version increases (unless they go to 1.0
😳)