Enfoce no dbg! and todo! in Rust code via clippy lints in the CI job

This commit is contained in:
Kirill Bulatov 2024-01-10 23:23:52 +02:00
parent 02ef6fc973
commit 7b3e7ee3cc
6 changed files with 40 additions and 32 deletions

View file

@ -1,15 +0,0 @@
name: 'Check formatting'
description: 'Checks code formatting use cargo fmt'
runs:
using: "composite"
steps:
- name: Install Rust
shell: bash -euxo pipefail {0}
run: |
rustup set profile minimal
rustup update stable
- name: cargo fmt
shell: bash -euxo pipefail {0}
run: cargo fmt --all -- --check

24
.github/actions/check_style/action.yml vendored Normal file
View file

@ -0,0 +1,24 @@
name: "Check formatting"
description: "Checks code formatting use cargo fmt"
runs:
using: "composite"
steps:
- name: Install Rust
shell: bash -euxo pipefail {0}
run: |
rustup set profile minimal
rustup update stable
rustup component add clippy
- name: cargo fmt
shell: bash -euxo pipefail {0}
run: cargo fmt --all -- --check
- name: cargo clippy
shell: bash -euxo pipefail {0}
# clippy.toml is not currently supporting specifying allowed lints
# so specify those here, and disable the rest until Zed's workspace
# will have more fixes & suppression for the standard lint set
run: |
cargo clippy --workspace --all-targets --all-features -- -A clippy::all -D clippy::dbg_macro -D clippy::todo

View file

@ -22,8 +22,8 @@ env:
RUST_BACKTRACE: 1
jobs:
rustfmt:
name: Check formatting
style:
name: Check formatting and Clippy lints
runs-on:
- self-hosted
- test
@ -33,19 +33,20 @@ jobs:
with:
clean: false
submodules: "recursive"
fetch-depth: 0
- name: Set up default .cargo/config.toml
run: cp ./.cargo/ci-config.toml ~/.cargo/config.toml
- name: Run rustfmt
uses: ./.github/actions/check_formatting
- name: Run style checks
uses: ./.github/actions/check_style
tests:
name: Run tests
runs-on:
- self-hosted
- test
needs: rustfmt
needs: style
steps:
- name: Checkout repo
uses: actions/checkout@v3

View file

@ -14,8 +14,8 @@ env:
RUST_BACKTRACE: 1
jobs:
rustfmt:
name: Check formatting
style:
name: Check formatting and Clippy lints
runs-on:
- self-hosted
- test
@ -25,16 +25,17 @@ jobs:
with:
clean: false
submodules: "recursive"
fetch-depth: 0
- name: Run rustfmt
uses: ./.github/actions/check_formatting
- name: Run style checks
uses: ./.github/actions/check_style
tests:
name: Run tests
runs-on:
- self-hosted
- test
needs: rustfmt
needs: style
steps:
- name: Checkout repo
uses: actions/checkout@v3

View file

@ -104,12 +104,10 @@ async fn test_channel_guest_promotion(cx_a: &mut TestAppContext, cx_b: &mut Test
});
assert!(project_b.read_with(cx_b, |project, _| project.is_read_only()));
assert!(editor_b.update(cx_b, |e, cx| e.read_only(cx)));
assert!(dbg!(
room_b
.update(cx_b, |room, cx| room.share_microphone(cx))
.await
)
.is_err());
assert!(room_b
.update(cx_b, |room, cx| room.share_microphone(cx))
.await
.is_err());
// B is promoted
active_call_a

View file

@ -111,7 +111,6 @@ mod test {
let mut cx1 = VisualTestContext::from_window(cx.window, &cx);
let editor1 = cx.editor.clone();
dbg!(editor1.entity_id());
let buffer = cx.new_model(|_| Buffer::new(0, 0, "a = 1\nb = 2\n"));
let (editor2, cx2) = cx.add_window_view(|cx| Editor::for_buffer(buffer, None, cx));