Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggest adding Result return type for associated method in E0277. #126515

Closed
wants to merge 1 commit into from

Commits on Jul 23, 2024

  1. Auto merge of rust-lang#127786 - ehuss:rustbook-workspace, r=Mark-Sim…

    …ulacrum
    
    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.
    bors authored and surechen committed Jul 23, 2024
    Configuration menu
    Copy the full SHA
    f083077 View commit details
    Browse the repository at this point in the history