1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2026-06-21 00:12:59 +02:00
Files
comprehensive-rust/theme
michael-kerscher 1576198889 upgrade: migrate mdbook to 0.5.3 (#3207)
This commit upgrades mdbook from 0.4.52 to 0.5.3, which is a major
upgrade with breaking changes.

Key changes:
- Upgraded mdbook to 0.5.3, mdbook-pandoc to 0.11.0, mdbook-i18n-helpers
to 0.4.0, and mdbook-linkcheck2 to 0.12.0 in `xtask` for mdbook 0.5
compatibility.
- Migrated local preprocessor plugins `mdbook-course` and
`mdbook-exerciser` to use the new split crates structure of mdbook 0.5
(mdbook-core, mdbook-preprocessor, mdbook-renderer).
- Replaced usage of removed `preprocess::CmdPreprocessor` with
`mdbook_preprocessor::parse_input`.
- Replaced usage of removed `Config::get_renderer` with generic
`Config::get`.
- Updated trait implementations to match new signatures (e.g.
`supports_renderer` returning `Result<bool>`).
- Refactored `mdbook-exerciser` configuration parsing to deserialize
into a structured `Config` struct.
- Migrated `theme/index.hbs` and `theme/book.js` to match the default
files of mdbook 0.5.3, preserving local modifications (speaker notes,
language picker, redbox, etc.).
- Updated speaker notes icons in `theme/index.hbs` and
`theme/speaker-notes.js` to use `xmark` and `arrow-up-right-from-square`
SVG templates for FontAwesome 6 compatibility (see renamed icons in
https://docs-v6.fontawesome.com/web/setup/upgrade/whats-changed#icons-renamed-in-version-6).
- Updated WebdriverIO test suite (`tests/`) to:
- Support the new `mdbook-` prefixed HTML IDs (e.g., `#mdbook-sidebar`,
`#mdbook-theme-toggle`).
- Robustly handle `default_theme` verification by accepting either
"light" or "navy" depending on the host system's prefers-color-scheme
setting.
- Upgraded `mdbook-svgbob` to 0.3.0 (which supports mdbook 0.5).
- Updated `.github/workflows/build.sh` to sanitize the restored
historical `book.toml` (removing deprecated `multilingual` and
`curly-quotes` keys) to ensure compatibility with the `mdbook` 0.5.3
configuration parser.

Fixes https://github.com/google/comprehensive-rust/issues/3201
2026-06-12 14:25:40 +02:00
..