mirror of
https://github.com/rust-lang/book.git
synced 2026-04-05 07:13:29 -04:00
Edition maintenance: scripting the updates for future work
This commit is contained in:
@@ -21,7 +21,9 @@ occasional maintenance tasks.
|
||||
## Update the `edition` in all listings
|
||||
|
||||
To update the `edition = "[year]"` metadata in all the listings' `Cargo.toml`s,
|
||||
run the `./tools/update-editions.sh` script and commit the changes.
|
||||
run the `./tools/update-editions.sh` script. Check the diff to make sure it
|
||||
looks reasonable, and in particular check whether the updates necessitate any
|
||||
changes to the text. Then commit the changes.
|
||||
|
||||
## Update the `edition` in mdBook config
|
||||
|
||||
|
||||
8
Cargo.lock
generated
8
Cargo.lock
generated
@@ -2,10 +2,6 @@
|
||||
# It is not intended for manual editing.
|
||||
version = 4
|
||||
|
||||
[[package]]
|
||||
name = "adder"
|
||||
version = "0.1.0"
|
||||
|
||||
[[package]]
|
||||
name = "adler"
|
||||
version = "1.0.2"
|
||||
@@ -92,10 +88,6 @@ dependencies = [
|
||||
"miniz_oxide",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "guessing_game"
|
||||
version = "0.1.0"
|
||||
|
||||
[[package]]
|
||||
name = "lazy_static"
|
||||
version = "1.4.0"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[workspace]
|
||||
members = [ "listings/ch02-guessing-game-tutorial/no-listing-01-cargo-new", "listings/ch11-writing-automated-tests/listing-11-01","packages/tools"]
|
||||
members = ["packages/tools"]
|
||||
default-members = ["packages/tools"]
|
||||
resolver = "2"
|
||||
exclude = [
|
||||
|
||||
@@ -2,7 +2,18 @@
|
||||
|
||||
set -eu
|
||||
|
||||
# So that we can do this in a single pass, check *here* if there are any “dirty”
|
||||
# files from Git, and bail if so.
|
||||
git diff --quiet || { echo "Git working directory is not clean"; exit 1; }
|
||||
|
||||
OLD_EDITION=2021
|
||||
NEW_EDITION=2024
|
||||
|
||||
find listings/** -name "Cargo.toml" -exec sed -i '' "s/edition = \"$OLD_EDITION\"/edition = \"$NEW_EDITION\"/g" '{}' \;
|
||||
# Start by preparing all listings for the edition.
|
||||
find listings -name "Cargo.toml" -exec cargo fix --allow-dirty --edition --manifest-path '{}' \;
|
||||
|
||||
# Update the edition itself
|
||||
find listings -name "Cargo.toml" -exec sed -i '' "s/edition = \"$OLD_EDITION\"/edition = \"$NEW_EDITION\"/g" '{}' \;
|
||||
|
||||
# Update all id
|
||||
find listings -name "Cargo.toml" -exec cargo fix --allow-dirty --edition-idioms --manifest-path {} \;
|
||||
|
||||
Reference in New Issue
Block a user