diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 01dc83ba..251a3a9b 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -120,3 +120,30 @@ jobs: with: command: clippy args: -- -D warnings + + doc: + name: cargo doc + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - run: sudo apt-get install libspeechd-dev + - run: cargo doc -p emath -p epaint -p egui -p eframe -p epi -p egui_web -p egui_glium --lib --no-deps --all-features + + doc_web: + name: cargo doc web + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - run: sudo apt-get install libspeechd-dev + - run: rustup target add wasm32-unknown-unknown + - run: cargo doc -p egui_web --target wasm32-unknown-unknown --lib --no-deps --all-features diff --git a/check.sh b/check.sh index 82f42f6a..6e8dc0f0 100755 --- a/check.sh +++ b/check.sh @@ -13,7 +13,6 @@ CARGO_INCREMENTAL=0 cargo clippy --workspace --all-targets --all-features -- -D cargo test --workspace --all-targets --all-features cargo fmt --all -- --check -# TODO: make cargo doc produce a proper error (it only prints a warning at the moment). cargo doc -p emath -p epaint -p egui -p eframe -p epi -p egui_web -p egui_glium --lib --no-deps --all-features cargo doc -p egui_web --target wasm32-unknown-unknown --lib --no-deps --all-features diff --git a/eframe/src/lib.rs b/eframe/src/lib.rs index 1472a3fc..44e72239 100644 --- a/eframe/src/lib.rs +++ b/eframe/src/lib.rs @@ -11,8 +11,11 @@ //! //! `eframe` is implemented using [`egui_web`](https://docs.rs/egui_web) and [`egui_glium`](https://docs.rs/egui_glium). -#![forbid(unsafe_code)] #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] +#![forbid(unsafe_code)] #![warn(clippy::all, missing_docs, rust_2018_idioms)] pub use {egui, epi}; diff --git a/egui/src/context.rs b/egui/src/context.rs index bca7891e..38186efd 100644 --- a/egui/src/context.rs +++ b/egui/src/context.rs @@ -577,8 +577,8 @@ impl Context { } /// Call at the end of each frame. - /// Returns what has happened this frame (`Output`) as well as what you need to paint. - /// You can transform the returned shapes into triangles with a call to `Context::tessellate`. + /// Returns what has happened this frame [`crate::Output`] as well as what you need to paint. + /// You can transform the returned shapes into triangles with a call to [`Context::tessellate`]. #[must_use] pub fn end_frame(&self) -> (Output, Vec) { if self.input.wants_repaint() { diff --git a/egui/src/lib.rs b/egui/src/lib.rs index f1b2bd8a..dd64be66 100644 --- a/egui/src/lib.rs +++ b/egui/src/lib.rs @@ -237,6 +237,9 @@ //! ``` #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] #![forbid(unsafe_code)] #![warn( clippy::all, diff --git a/egui_demo_app/src/lib.rs b/egui_demo_app/src/lib.rs index fee3863b..8003e052 100644 --- a/egui_demo_app/src/lib.rs +++ b/egui_demo_app/src/lib.rs @@ -1,5 +1,8 @@ -#![forbid(unsafe_code)] #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] +#![forbid(unsafe_code)] #![warn(clippy::all, rust_2018_idioms)] #[cfg(target_arch = "wasm32")] diff --git a/egui_demo_app/src/main.rs b/egui_demo_app/src/main.rs index 2f005d38..a8cf0bac 100644 --- a/egui_demo_app/src/main.rs +++ b/egui_demo_app/src/main.rs @@ -1,5 +1,8 @@ -#![forbid(unsafe_code)] #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] +#![forbid(unsafe_code)] #![warn(clippy::all, rust_2018_idioms)] // When compiling natively: diff --git a/egui_demo_lib/src/lib.rs b/egui_demo_lib/src/lib.rs index a4ef95d5..d0a0c0b4 100644 --- a/egui_demo_lib/src/lib.rs +++ b/egui_demo_lib/src/lib.rs @@ -3,6 +3,9 @@ //! The demo-code is also used in benchmarks and tests. #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] #![forbid(unsafe_code)] #![warn( clippy::all, diff --git a/egui_glium/src/lib.rs b/egui_glium/src/lib.rs index 2608a9bb..72b4aef9 100644 --- a/egui_glium/src/lib.rs +++ b/egui_glium/src/lib.rs @@ -4,8 +4,11 @@ //! //! If you are writing an app, you may want to look at [`eframe`](https://docs.rs/eframe) instead. -#![forbid(unsafe_code)] #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] +#![forbid(unsafe_code)] #![warn(clippy::all, rust_2018_idioms)] #![allow(clippy::manual_range_contains, clippy::single_match)] diff --git a/egui_web/src/lib.rs b/egui_web/src/lib.rs index 78629c61..4b8e5596 100644 --- a/egui_web/src/lib.rs +++ b/egui_web/src/lib.rs @@ -4,8 +4,11 @@ //! //! If you are writing an app, you may want to look at [`eframe`](https://docs.rs/eframe) instead. -#![forbid(unsafe_code)] #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] +#![forbid(unsafe_code)] #![warn(clippy::all, rust_2018_idioms)] pub mod backend; diff --git a/emath/src/lib.rs b/emath/src/lib.rs index e7db216a..040d5f92 100644 --- a/emath/src/lib.rs +++ b/emath/src/lib.rs @@ -10,6 +10,9 @@ //! * Dimension order is always `x y` #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] #![forbid(unsafe_code)] #![warn( clippy::all, diff --git a/epaint/src/lib.rs b/epaint/src/lib.rs index b9a08320..36d0ebcb 100644 --- a/epaint/src/lib.rs +++ b/epaint/src/lib.rs @@ -1,6 +1,9 @@ //! 2D graphics/rendering. Fonts, textures, color, geometry, tessellation etc. #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] #![forbid(unsafe_code)] #![warn( clippy::all, diff --git a/epi/src/lib.rs b/epi/src/lib.rs index 047f94de..96f8795e 100644 --- a/epi/src/lib.rs +++ b/epi/src/lib.rs @@ -7,6 +7,9 @@ //! Start by looking at the [`App`] trait, and implement [`App::update`]. #![cfg_attr(not(debug_assertions), deny(warnings))] // Forbid warnings in release builds +#![deny(broken_intra_doc_links)] +#![deny(invalid_codeblock_attributes)] +#![deny(private_intra_doc_links)] #![forbid(unsafe_code)] #![warn( clippy::all,