mdbook/crates/mdbook-driver
Eric Huss 2afad43bdd Add error handling to env config handling
This adds several changes to how environment variables are handled to
more closely align with how configs are handled, and to fix an issue
with replacing entire tables. The changes are:

- Top-level tables like `MDBOOK_BOOK` now *replace* the contents of the
  `book` table instead of merging it. This adds consistency with how all
  the other environment objects work.
- Fixed allowing top-level replacement of `MDBOOK_BOOK` and
  `MDBOOK_OUTPUT`. This was inadvertently recently broken.
- Added ability to replace top-level `MDBOOK_RUST`. I don't recall why
  that wasn't included.
- Reject invalid keys like `MDBOOK_FOO`.
- Reject unknown keys, like `MDBOOK_BOOK='{"xyz": 123}'`
- Reject invalid types, like `MDBOOK_BOOK='{"title": 123}'`
2025-11-17 14:38:58 -08:00
..
src Add error handling to env config handling 2025-11-17 14:38:58 -08:00
Cargo.toml Update to 0.5.0 2025-11-17 08:57:52 -08:00
README.md Add READMEs for all new crates 2025-07-23 17:47:31 -07:00

mdbook-driver

Documentation crates.io Changelog

This is the high-level Rust library for running mdBook. New books can be created using BookBuilder. The primary type MDBook can be used to manage and render books.

This crate is maintained by the mdBook team for use by the wider ecosystem. This crate follows semver compatibility for its APIs.

License

Mozilla Public License, version 2.0