Currently, the GitHub action runs cargo doc --all-features --no-deps in the repository root to build the documentation for LibAFL. Unfortunately, this does not build documentation for all crates in the Cargo workspace, only for the crates referred in default-members.
We could include all workspace crates by adding --workspace to the cargo doc command. However, many of the crates that aren't included currently use mutually exclusive features extensively. This means that cargo doc --all-features --no-deps --workspace causes all kinds of errors, for example for duplicate definitions of structs.
I'm not sure what the best approach is here. Removing --all-features seems heavy-handed and would also skip docs for a lot of code. Keeping the situation as it is does not seem right either, considering the docs for LibAFL 0.15.4 do not build at all at the moment.
Currently, the GitHub action runs
cargo doc --all-features --no-depsin the repository root to build the documentation for LibAFL. Unfortunately, this does not build documentation for all crates in the Cargo workspace, only for the crates referred indefault-members.We could include all workspace crates by adding
--workspaceto thecargo doccommand. However, many of the crates that aren't included currently use mutually exclusive features extensively. This means thatcargo doc --all-features --no-deps --workspacecauses all kinds of errors, for example for duplicate definitions of structs.I'm not sure what the best approach is here. Removing
--all-featuresseems heavy-handed and would also skip docs for a lot of code. Keeping the situation as it is does not seem right either, considering the docs for LibAFL 0.15.4 do not build at all at the moment.