From 03f007b74ca7c9895e1f81c7f6be812aa14aed58 Mon Sep 17 00:00:00 2001 From: DaniPopes <57450786+DaniPopes@users.noreply.github.com> Date: Sun, 5 Jan 2025 15:15:13 +0100 Subject: [PATCH] docs: enable some useful rustdoc features on docs.rs (#850) --- .github/workflows/ci.yml | 5 +++-- Cargo.toml | 4 ---- crates/core/Cargo.toml | 6 +++++- crates/dyn-abi/Cargo.toml | 6 +++++- crates/json-abi/Cargo.toml | 8 ++++++++ crates/primitives/Cargo.toml | 6 +++++- crates/sol-macro-expander/Cargo.toml | 6 +++++- crates/sol-macro-input/Cargo.toml | 8 ++++++++ crates/sol-macro/Cargo.toml | 6 +++++- crates/sol-type-parser/Cargo.toml | 6 +++++- crates/sol-types/Cargo.toml | 6 +++++- crates/syn-solidity/Cargo.toml | 6 +++++- 12 files changed, 59 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3a612b7dd..569613d28 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -156,9 +156,10 @@ jobs: - uses: Swatinem/rust-cache@v2 with: cache-on-failure: true - - run: cargo doc --workspace --all-features --no-deps --document-private-items + - name: Build documentation + run: cargo doc --workspace --all-features --no-deps --document-private-items env: - RUSTDOCFLAGS: "--cfg docsrs -D warnings" + RUSTDOCFLAGS: --cfg docsrs -D warnings -Zunstable-options --show-type-layout --generate-link-to-definition fmt: runs-on: ubuntu-latest diff --git a/Cargo.toml b/Cargo.toml index de9221b57..cec65b1d1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,10 +12,6 @@ homepage = "https://github.com/alloy-rs/core" repository = "https://github.com/alloy-rs/core" exclude = ["tests"] -[workspace.metadata.docs.rs] -all-features = true -rustdoc-args = ["--cfg", "docsrs"] - [workspace.lints.clippy] dbg-macro = "warn" manual-string-new = "warn" diff --git a/crates/core/Cargo.toml b/crates/core/Cargo.toml index 05efb1cf2..e9a9945fc 100644 --- a/crates/core/Cargo.toml +++ b/crates/core/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/dyn-abi/Cargo.toml b/crates/dyn-abi/Cargo.toml index 705b6a83d..80fa331f5 100644 --- a/crates/dyn-abi/Cargo.toml +++ b/crates/dyn-abi/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/json-abi/Cargo.toml b/crates/json-abi/Cargo.toml index b198603bc..05dd72681 100644 --- a/crates/json-abi/Cargo.toml +++ b/crates/json-abi/Cargo.toml @@ -13,6 +13,14 @@ license.workspace = true repository.workspace = true exclude.workspace = true +[package.metadata.docs.rs] +all-features = true +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] + [dependencies] alloy-primitives = { workspace = true, features = ["serde"] } alloy-sol-type-parser = { workspace = true, features = ["serde"] } diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index 48d0b3d8e..cc3d5ddf3 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/sol-macro-expander/Cargo.toml b/crates/sol-macro-expander/Cargo.toml index ca67190b2..a660de967 100644 --- a/crates/sol-macro-expander/Cargo.toml +++ b/crates/sol-macro-expander/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/sol-macro-input/Cargo.toml b/crates/sol-macro-input/Cargo.toml index 6e46ab7c5..1ec52d931 100644 --- a/crates/sol-macro-input/Cargo.toml +++ b/crates/sol-macro-input/Cargo.toml @@ -13,6 +13,14 @@ license.workspace = true repository.workspace = true exclude.workspace = true +[package.metadata.docs.rs] +all-features = true +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] + [dependencies] dunce = "1.0.4" heck = "0.5.0" diff --git a/crates/sol-macro/Cargo.toml b/crates/sol-macro/Cargo.toml index 373c90cec..c0b7f6b3c 100644 --- a/crates/sol-macro/Cargo.toml +++ b/crates/sol-macro/Cargo.toml @@ -18,7 +18,11 @@ proc-macro = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/sol-type-parser/Cargo.toml b/crates/sol-type-parser/Cargo.toml index 7a4aecbea..81105a293 100644 --- a/crates/sol-type-parser/Cargo.toml +++ b/crates/sol-type-parser/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/sol-types/Cargo.toml b/crates/sol-types/Cargo.toml index 7f1d4e667..0e6784b1b 100644 --- a/crates/sol-types/Cargo.toml +++ b/crates/sol-types/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true diff --git a/crates/syn-solidity/Cargo.toml b/crates/syn-solidity/Cargo.toml index f00da5a9b..71e19a830 100644 --- a/crates/syn-solidity/Cargo.toml +++ b/crates/syn-solidity/Cargo.toml @@ -15,7 +15,11 @@ exclude.workspace = true [package.metadata.docs.rs] all-features = true -rustdoc-args = ["--cfg", "docsrs"] +rustdoc-args = [ + "-Zunstable-options", + "--generate-link-to-definition", + "--show-type-layout", +] [lints] workspace = true