Commit Graph

2966 Commits

Author SHA1 Message Date
Eric Huss
e37e5314f8 Support multiple books in the GUI tests
This adds the ability to use multiple books for the GUI tests. This is
helpful since some tests need special configuration, and sharing the
same book can make it difficult or impossible to test different
configurations. It also makes it difficult to make changes to the
test_book since it can affect other tests.

This works by placing the books in the tests/gui/books directory. The
test runner will automatically build all the books. The gui tests can
then just access the DOC_PATH with the name of the book.

Books are now saved in a temp directory to make it easier to use the
DOC_PATH variable, instead of being tests/gui/books/book_name/book which
is a little awkward.

Following commits will restructure the existing book. This is just a
mechanical move.
2025-10-15 07:00:33 -07:00
Eric Huss
4e41c844c3 Merge pull request #2876 from ehuss/xtask-bump
Add `cargo xtask bump`
v0.5.0-alpha.1
2025-09-28 23:21:34 +00:00
Eric Huss
0ae202ea85 Add cargo xtask bump
This is a simple script to assist with bumping the version.
2025-09-28 16:14:41 -07:00
Eric Huss
71083144e8 Merge pull request #2875 from ehuss/0.5-alpha.1-changelog
Add 0.5 migration guide
2025-09-28 22:31:29 +00:00
Eric Huss
7eb63bf0e3 Merge pull request #2874 from ehuss/cmd-docs
Remove partially outdated CmdPreprocessor/CmdRenderer docs
2025-09-28 22:28:45 +00:00
Eric Huss
283b2798e4 Add 0.5 migration guide
This adds a migration guide for the breaking change in 0.5. This also
includes the changelog entries for 0.5-alpha.1.
2025-09-28 15:24:55 -07:00
Eric Huss
91842c3db6 Remove partially outdated CmdPreprocessor/CmdRenderer docs
These docs were slightly drifting from the user guide docs. Instead of
trying to maintain multiple copies of this, I have changed it so that
it just links out to the guide.

(The guide docs could be cleaned up a little, but that's a separate
issue.)
2025-09-28 15:22:49 -07:00
Eric Huss
fd88719b68 Merge pull request #2869 from rust-lang/renovate/notify-debouncer-mini-0.x
Update Rust crate notify-debouncer-mini to 0.7.0
2025-09-28 17:06:49 +00:00
renovate[bot]
c438e13027 Update Rust crate notify-debouncer-mini to 0.7.0 2025-09-28 10:00:01 -07:00
Eric Huss
8e9697bd8b Merge pull request #2870 from rust-lang/renovate/actions-checkout-5.x
Update actions/checkout action to v5
2025-09-28 16:46:48 +00:00
Eric Huss
dcf7ae45c2 Merge pull request #2872 from rust-lang/renovate/node-22.x
Update dependency node to v22
2025-09-28 16:43:35 +00:00
Eric Huss
38fa5b5ebc Merge pull request #2871 from rust-lang/renovate/actions-setup-node-5.x
Update actions/setup-node action to v5
2025-09-28 16:42:02 +00:00
Eric Huss
41262665e8 Merge pull request #2868 from rust-lang/renovate/browser-ui-test-0.x
Update dependency browser-ui-test to v0.22.2
2025-09-28 16:40:45 +00:00
Eric Huss
21dc3b0eb1 Merge pull request #2867 from ehuss/xtask-changelog
Add a script to help update the changelog
2025-09-28 16:19:00 +00:00
renovate[bot]
44cd371066 Update dependency node to v22 2025-09-28 16:17:55 +00:00
renovate[bot]
1c766160c3 Update actions/setup-node action to v5 2025-09-28 16:17:52 +00:00
renovate[bot]
2cb4093cc8 Update actions/checkout action to v5 2025-09-28 16:17:49 +00:00
renovate[bot]
dad941454e Update dependency browser-ui-test to v0.22.2 2025-09-28 16:17:11 +00:00
Eric Huss
2a93606727 Add a script to help update the changelog
This adds `cargo xtask changelog` to automatically add a new changelog
entry for a release.
2025-09-28 09:13:16 -07:00
Eric Huss
78819f4525 Merge pull request #2866 from ehuss/xtask-test
Add an xtask to help with running tests
2025-09-27 02:01:09 +00:00
Eric Huss
2c7d192b50 Add an xtask to help with running tests
During development I often need to run a bunch of tests. Instead of
having some unwieldy shell command, I have added this xtask to help with
running the testing commands.
2025-09-26 18:55:21 -07:00
Eric Huss
e15f80407d Merge pull request #2865 from ehuss/new-publish-workflow
Set up new workspace publish workflow
2025-09-27 00:46:02 +00:00
Eric Huss
4fc72e8d9f Set up new workspace publish workflow
This sets up the publish workflow to use the new OIDC authentication,
and to publish the whole workspace at once.
2025-09-26 17:40:34 -07:00
Eric Huss
b4c53b9e9c Merge pull request #2864 from rust-lang/renovate/cargo-semver-checks-0.x
Update cargo-semver-checks to v0.44.0
2025-09-26 21:33:50 +00:00
renovate[bot]
2011ddb479 Update cargo-semver-checks to v0.44.0 2025-09-26 17:48:43 +00:00
Eric Huss
4a28995641 Merge pull request #2858 from ehuss/add-semver-checks
Add cargo-semver-checks
2025-09-26 17:42:43 +00:00
Eric Huss
4c397a9be0 Merge pull request #2862 from ehuss/add-range-diff
Add triagebot range-diff feature
2025-09-25 00:07:51 +00:00
Eric Huss
f1b413444b Add triagebot range-diff feature
This adds a comment on a PR when the author rebases to have a link
to a better diff.
2025-09-24 17:00:52 -07:00
Eric Huss
cd1b54f41f Merge pull request #2861 from ehuss/add-update-dependencies
Add job to automatically update dependencies
2025-09-24 23:13:53 +00:00
Eric Huss
83c307be3c Add job to automatically update dependencies
This adds a job to automatically update cargo dependencies once a month.
I've added this script instead of using Renovate because I couldn't get
Renovate to update versions in `Cargo.toml`. I also wanted to batch
transitive dependency updates all in one PR.
2025-09-24 16:05:14 -07:00
Eric Huss
9ec49d978f Merge pull request #2860 from ehuss/add-renovate
Add Renovate configuration
2025-09-24 23:05:00 +00:00
Eric Huss
7dee816838 Add Renovate configuration
This adds a configuration to enable Renovate to do some basic automated
updates.
2025-09-24 15:55:16 -07:00
Eric Huss
5b79ed4144 Add cargo-semver-checks
This adds cargo-semver-checks to CI to help catch any unintended
breaking changes to the API.
2025-09-20 18:19:48 -07:00
Eric Huss
aa96e1174e Merge pull request #2857 from ehuss/move-copy-theme
Move theme copy to the Theme type and reduce visibility
2025-09-21 01:02:42 +00:00
Eric Huss
7fcacf3386 Move theme copy to the Theme type and reduce visibility
This moves the code for copying the theme to the theme directory to the
Theme type so that the code lives closer to the data definition. This
also then reduces the public API surface of the Theme to give a little
more flexibility for updating it in the future.
2025-09-20 17:55:12 -07:00
Eric Huss
2aa2b95f0f Merge pull request #2856 from ehuss/fs-update
Clean up some fs-related utilities
2025-09-21 00:18:51 +00:00
Eric Huss
797112ef36 Clean up some fs-related utilities
This does a little cleanup around the usage of filesystem functions:

- Add `mdbook_core::utils::fs::read_to_string` as a wrapper around
  `std::fs::read_to_string` to provide better error messages. Use
  this wherever a file is read.
- Add `mdbook_core::utils::fs::create_dir_all` as a wrapper around
  `std::fs::create_dir_all` to provide better error messages. Use
  this wherever a file is read.
- Replace `mdbook_core::utils::fs::write_file` with `write` to mirror
  the `std::fs::write` API.
- Remove `mdbook_core::utils::fs::create_file`. It was generally not
  used anymore.
- Scrub the usage of `std::fs` to use the new wrappers. This doesn't
  remove it 100%, but it is now significantly reduced.
2025-09-20 17:13:31 -07:00
Eric Huss
f24221a1d7 Merge pull request #2855 from ehuss/move-get_404_output_file
Move get_404_output_file to HtmlConfig
2025-09-20 01:18:12 +00:00
Eric Huss
6223189b95 Move get_404_output_file to HtmlConfig
This function was essentially only operating on data from HtmlConfig. It
wasn't really a "filesystem" function. So this moves it to be more
logically associated with the data it works on.
2025-09-19 18:11:29 -07:00
Eric Huss
73aeed48d7 Merge pull request #2854 from ehuss/move-take-lines
Move take_lines functions to mdbook-driver and make private
2025-09-20 01:07:23 +00:00
Eric Huss
09c3e542da Move take_lines functions to mdbook-driver and make private
These functions are only used by the links preprocessor. I'm moving
these functions to put them closer to the code that they are associated
with, and to reduce the public API surface.
2025-09-19 18:01:33 -07:00
Eric Huss
9fae3c88eb Merge pull request #2853 from ehuss/markdown-outdated-comment
Remove outdated comment in mdbook-markdown
2025-09-20 00:53:05 +00:00
Eric Huss
8159dea9ea Remove outdated comment in mdbook-markdown
I missed this in https://github.com/rust-lang/mdBook/pull/2844.
2025-09-19 17:46:08 -07:00
Eric Huss
e5386f9230 Merge pull request #2852 from ehuss/add-def-list-cfg-link
Add link to `output.html.definition-lists`
2025-09-19 03:26:17 +00:00
Eric Huss
5fafc3f1f6 Add link to output.html.definition-lists
I forgot to include this link in the description of definition lists.
2025-09-18 20:20:25 -07:00
Eric Huss
39a148fc8d Merge pull request #2851 from ehuss/admonitions
Add support for admonitions
2025-09-19 03:00:27 +00:00
Eric Huss
873e4fe40f Add support for admonitions
This enables the admonitions support from pulldown-cmark. This includes
a config option in case it causes problems with existing books.

I would like to make this extensible in the future, though I'm not sure
what that would look like. There's also some concerns with how this will
affect translations like mdbook-i18n-helpers, which we may need to work
out in a different way.

Closes https://github.com/rust-lang/mdBook/issues/2771
2025-09-18 19:54:20 -07:00
Eric Huss
604d4dd78a Merge pull request #2850 from ehuss/fix-nojs-css-vars
Fix missing css vars for no-js dark mode
2025-09-19 01:59:48 +00:00
Eric Huss
ddeb3ce54f Fix missing css vars for no-js dark mode
These various were inadvertently missing from the no-js dark mode.
2025-09-18 18:53:46 -07:00
Eric Huss
15958773d5 Merge pull request #2847 from ehuss/definition-list
Add support for definition lists
2025-09-17 23:50:16 +00:00