Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Auto merge of #127786 - ehuss:rustbook-workspace, r=Mark-Simulacrum
Move rustbook to its own workspace. This moves rustbook (the wrapper around mdbook) to its own Cargo workspace. This is done for two reasons: - Some users want to avoid having to check out documentation submodules if they are not working on documentation. These submodules are required for submodules that have Cargo dependencies in the tree (such as mdbook preprocessors). - The [pinned `memchr`](https://github.com/rust-lang/rust/blob/eb72697e41b00e5d8723f14c64a969d59d9b9474/compiler/rustc_ast/Cargo.toml#L10) is causing problems with updating. That pin is only necessary for the standard library, but unfortunately it is affecting all other crates. This will have some drawbacks: - A slight increase in the vendor directory size. My measurement shows about a 14M increase (0.7%), but somehow the compressed filesize is smaller. - The dependencies for rustbook now need to be managed separately. I have updated the cron job to try to mitigate this. - There will be a slight dist build time penalty. I'm not sure what it will be, since it heavily depends on the machine, but I suspect in the 30-45s range. - Adds more complexity to things like bootstrap and tidy. There are a few other alternatives considered: - Publish preprocessors on crates.io. This adds the burden of publishing every change, and ensuring those publishes happen and the sources don't get out of sync, and somehow syncing those updates back to rust-lang/rust during the automatic updates. This is also more work. - Move the submodules to subtrees. These have the added burden of doing updates in a way that is more difficult than submodules. I believe it also causes problems with GitHub's `#NNNN` tagging and closing issues. This is also more work. The only thing I haven't tested here is the cron job. However, there's a pretty decent chance this won't pass CI, or that I missed something.
- Loading branch information