diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 98a89a25..09a9b36d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,45 +1,36 @@ name: build - on: - push: - branches: [master] - pull_request: - branches: [master] - + push: + branches: [master] + pull_request: + branches: [master] env: - CARGO_TERM_COLOR: always - + CARGO_TERM_COLOR: always + RUSTFLAGS: "-Dwarnings" jobs: - build: - runs-on: ubuntu-latest - steps: - - name: Install dependencies - run: sudo apt-get update && sudo apt-get install libgtk-3-dev libgtk-layer-shell-dev libdbusmenu-gtk3-dev - - - uses: actions/checkout@v4 - - - name: Setup rust - uses: dtolnay/rust-toolchain@stable - with: - components: clippy,rustfmt - - - name: Load rust cache - uses: Swatinem/rust-cache@v2 - - - name: Setup problem matchers - uses: r7kamura/rust-problem-matchers@v1 - - - name: Check formatting - run: cargo fmt -- --check - - name: Check with default features - run: cargo check - - - name: Run tests - run: cargo test - - - name: Check x11 only - run: cargo check --no-default-features --features=x11 - - name: Check wayland only - run: cargo check --no-default-features --features=wayland - - name: Check no-backend - run: cargo check --no-default-features + build: + runs-on: ubuntu-latest + steps: + - name: Install dependencies + run: sudo apt-get update && sudo apt-get install libgtk-3-dev libgtk-layer-shell-dev libdbusmenu-gtk3-dev + - uses: actions/checkout@v4 + - name: Setup rust + uses: dtolnay/rust-toolchain@stable + with: + components: clippy,rustfmt + - name: Load rust cache + uses: Swatinem/rust-cache@v2 + - name: Setup problem matchers + uses: r7kamura/rust-problem-matchers@v1 + - name: Check formatting + run: cargo fmt -- --check + - name: Run tests + run: cargo test + - name: Check with default features + run: cargo clippy + - name: Check x11 only + run: cargo clippy --no-default-features --features=x11 + - name: Check wayland only + run: cargo clippy --no-default-features --features=wayland + - name: Check no-backend + run: cargo clippy --no-default-features diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 98858073..9dd7073a 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,38 +1,36 @@ name: Build and deploy Github pages on: - push: - branches: - - master - paths: - - "docs/**" - - "gen-docs.ts" - - "crates/eww/src/widgets/widget_definitions.rs" - - "crates/eww/src/config/inbuilt.rs" - - ".github/workflows/**" + push: + branches: + - master + paths: + - "docs/**" + - "gen-docs.ts" + - "crates/eww/src/widgets/widget_definitions.rs" + - "crates/eww/src/config/inbuilt.rs" + - ".github/workflows/**" jobs: - build: - name: Build mdBook - runs-on: ubuntu-latest - steps: - # Checkout - - uses: actions/checkout@master - - # Build widget documentation - - name: Use deno to build widget documentation - uses: denoland/setup-deno@main - with: - deno-version: "v1.x" - - run: deno run --allow-read --allow-write gen-docs.ts ./crates/eww/src/widgets/widget_definitions.rs ./crates/eww/src/config/inbuilt.rs - - # Build & deploy - - name: build mdBook page - uses: peaceiris/actions-mdbook@v1 - with: - mdbook-version: '0.4.8' - - run: mdbook build docs - - - name: Deploy - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs/book/ + build: + name: Build mdBook + runs-on: ubuntu-latest + if: github.repository == 'elkowar/eww' + steps: + # Checkout + - uses: actions/checkout@master + # Build widget documentation + - name: Use deno to build widget documentation + uses: denoland/setup-deno@main + with: + deno-version: "v1.x" + - run: deno run --allow-read --allow-write gen-docs.ts ./crates/eww/src/widgets/widget_definitions.rs ./crates/eww/src/config/inbuilt.rs + # Build & deploy + - name: build mdBook page + uses: peaceiris/actions-mdbook@v1 + with: + mdbook-version: '0.4.8' + - run: mdbook build docs + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs/book/ diff --git a/crates/eww/src/window_initiator.rs b/crates/eww/src/window_initiator.rs index f2dc5599..28e3698b 100644 --- a/crates/eww/src/window_initiator.rs +++ b/crates/eww/src/window_initiator.rs @@ -12,15 +12,20 @@ use yuck::config::{ use crate::window_arguments::WindowArguments; /// This stores all the information required to create a window and is created -/// via combining information from the [`WindowDefinition`] and the [`WindowInitiator`] +/// via combining information from the [`WindowDefinition`] and the [`WindowInitiator`]. #[derive(Debug, Clone)] pub struct WindowInitiator { + // it would be more efficient to make everything work when not using x11 or wayland instead of simply disabling the warning. + // however, this is probably not worth the effort since i don't think anyonre is seriously building eww without backend support for either x11 or wayland + #[cfg_attr(not(any(feature = "wayland", feature = "x11")), allow(dead_code))] pub backend_options: BackendWindowOptions, pub geometry: Option, pub local_variables: HashMap, pub monitor: Option, pub name: String, + #[cfg_attr(not(any(feature = "wayland", feature = "x11")), allow(dead_code))] pub resizable: bool, + #[cfg_attr(not(any(feature = "wayland", feature = "x11")), allow(dead_code))] pub stacking: WindowStacking, }