Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 23 additions & 3 deletions .github/workflows/ci.yml
Comment thread
devin-ai-integration[bot] marked this conversation as resolved.
Comment thread
devin-ai-integration[bot] marked this conversation as resolved.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 build-release CI job missing GTK/WebKit system dependencies for desktop crate

The build-release job for native Linux (x86_64-unknown-linux-gnu, use_cross: false) runs cargo build --release on the entire workspace. Since rustyclaw-desktop is now a workspace member requiring dioxus with desktop feature (which depends on GTK/WebKit), this build will fail because the job doesn't install libgtk-3-dev and libwebkit2gtk-4.1-dev. Other jobs (check, test, integration-tests, e2e-tests) correctly install these dependencies, but build-release and lint do not. The build-release job does not have continue-on-error, so it would block release artifact creation on tag pushes.

(Refers to lines 250-255)

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 CI lint job missing system dependencies for desktop crate, breaking clippy

The lint job runs cargo clippy --all-targets --all-features which now includes the rustyclaw-desktop crate (added to the workspace in this PR). However, unlike the test, integration-tests, and e2e-tests jobs, the lint job doesn't install libgtk-3-dev and libwebkit2gtk-4.1-dev. The desktop crate's Dioxus dependency with desktop feature requires these libraries to compile, so clippy will always fail on this workspace member. While continue-on-error: true masks the failure, it means clippy results for all crates (not just desktop) are silently lost.

(Refers to lines 188-204)

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,12 @@ jobs:
- uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
- name: Install Linux system dependencies for desktop GUI
if: runner.os == 'Linux' && matrix.use_cross == false
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev


- name: Install cross
if: matrix.use_cross
Expand All @@ -96,7 +102,8 @@ jobs:
if: runner.os != 'Windows'
run: |
if [ "${{ matrix.use_cross }}" = "true" ]; then
cross check --target ${{ matrix.target }} ${{ matrix.features }}
# Cross-compilation: build only core packages (exclude desktop client)
cross check --target ${{ matrix.target }} ${{ matrix.features }} --package rustyclaw-core --package rustyclaw --package rustyclaw-tui
else
cargo check --target ${{ matrix.target }} ${{ matrix.features }}
fi
Expand All @@ -111,13 +118,18 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install Linux system dependencies for desktop GUI
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev

- uses: Swatinem/rust-cache@v2

- name: Run unit tests (default features)
run: cargo test --lib --bins
run: cargo test --lib --bins --package rustyclaw-core --package rustyclaw --package rustyclaw-tui

- name: Run unit tests (no default features)
run: cargo test --lib --bins --no-default-features
run: cargo test --lib --bins --no-default-features --package rustyclaw-core --package rustyclaw --package rustyclaw-tui

- name: Run doc tests
run: cargo test --doc
Expand All @@ -129,6 +141,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install Linux system dependencies for desktop GUI
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libxdo-dev
- uses: Swatinem/rust-cache@v2

- name: Build debug binary
Expand All @@ -147,6 +163,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install Linux system dependencies for desktop GUI
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libxdo-dev
- uses: Swatinem/rust-cache@v2

- name: Build release binary
Expand Down
Loading
Loading