From 28d5a431d80c6201f53bfdb3bbd04d415fa437d6 Mon Sep 17 00:00:00 2001 From: Arnold Loubriat Date: Sat, 27 Jun 2026 16:05:33 +0200 Subject: [PATCH 1/2] ci: Check documentation of crates Signed-off-by: Arnold Loubriat --- .github/workflows/ci.yml | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d6abde3..b2454c7c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -104,6 +104,53 @@ jobs: if: ${{ matrix.extra_adapter_clippy }} run: cargo clippy ${{ matrix.extra_adapter_clippy }} --all-targets -- -D warnings + doc: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + include: + - os: windows-latest + name: Windows + adapters: "-p accesskit_windows" + - os: macOS-latest + name: macOS + adapters: "-p accesskit_macos" + - os: ubuntu-latest + name: Linux + adapters: "-p accesskit_unix" + extra_adapter_doc: "-p accesskit_atspi_common --all-features" + - os: ubuntu-latest + name: Android + adapters: "-p accesskit_android" + - os: macOS-latest + name: iOS Simulator + target: "aarch64-apple-ios-sim" + adapters: "-p accesskit_ios" + name: cargo doc (${{ matrix.name }}) + env: + RUSTDOCFLAGS: "-D warnings" + steps: + - uses: actions/checkout@v7 + + - name: install stable toolchain + uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.target }} + + - name: restore cache + uses: Swatinem/rust-cache@v2 + + - name: cargo doc (common packages) + run: cargo doc -p accesskit -p accesskit_consumer -p accesskit_winit ${{ matrix.target && format('--target {0}', matrix.target) }} + + - name: cargo doc (adapters) + run: cargo doc ${{ matrix.adapters }} ${{ matrix.target && format('--target {0}', matrix.target) }} + + - name: cargo doc (extra adapters) + if: ${{ matrix.extra_adapter_doc }} + run: cargo doc ${{ matrix.extra_adapter_doc }} + find-msrv: runs-on: ubuntu-latest outputs: From fac89b09035292d8c5b4ffd16b4517cb2c2d9e11 Mon Sep 17 00:00:00 2001 From: Arnold Loubriat Date: Sat, 27 Jun 2026 17:06:51 +0200 Subject: [PATCH 2/2] Don't require wayland system dependencies Signed-off-by: Arnold Loubriat --- .github/workflows/ci.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b2454c7c..e3037547 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -141,8 +141,14 @@ jobs: - name: restore cache uses: Swatinem/rust-cache@v2 + # Documenting accesskit_winit compiles winit's Wayland backend. Unlike + # `cargo test`, `cargo doc` doesn't build dev-dependencies, so winit's + # `wayland-dlopen` feature (enabled there) isn't unified in, and the + # plain `wayland` feature makes wayland-sys link libwayland at build + # time via pkg-config. Enable wayland-dlopen here to load it at runtime + # instead, avoiding a system-library requirement on the Linux runners. - name: cargo doc (common packages) - run: cargo doc -p accesskit -p accesskit_consumer -p accesskit_winit ${{ matrix.target && format('--target {0}', matrix.target) }} + run: cargo doc -p accesskit -p accesskit_consumer -p accesskit_winit --features winit/wayland-dlopen ${{ matrix.target && format('--target {0}', matrix.target) }} - name: cargo doc (adapters) run: cargo doc ${{ matrix.adapters }} ${{ matrix.target && format('--target {0}', matrix.target) }}