11name : cargo
22
3- on :
3+ on :
44 push :
55 branches :
66 - main
@@ -22,72 +22,68 @@ jobs:
2222 uses : fkirc/skip-duplicate-actions@v5
2323 with :
2424 # All of these options are optional, so you can remove them if you are happy with the defaults
25- concurrent_skipping : ' same_content_newer'
26- skip_after_successful_duplicate : ' true'
25+ concurrent_skipping : " same_content_newer"
26+ skip_after_successful_duplicate : " true"
2727 paths_ignore : ' ["**/README.md"]'
2828 do_not_skip : ' ["pull_request", "workflow_dispatch", "schedule"]'
2929
3030 build :
31-
3231 name : Build on Ubuntu
3332 needs : pre_job
3433 if : needs.pre_job.outputs.should_skip != 'true'
3534 runs-on : ubuntu-latest
3635
3736 steps :
38- - uses : actions/checkout@v4
39- - name : Prepare environment
40- run : |
41- sudo apt-get update
42- sudo apt-get install clang
43- sudo apt-get install libclang1
44- sudo apt-get install libeccodes-dev
45- rustup update stable
46- cargo install cargo-criterion
47- cargo clean
48- - name : Build with cargo
49- run : |
50- cargo build --release --features "experimental_index, message_ndarray"
51- cargo clean
52- - name : Test with cargo
53- run : |
54- cargo test --no-default-features
55- cargo test --features "message_ndarray"
56- cargo test --features "experimental_index"
57- cargo test --features "experimental_index, message_ndarray"
58- cargo clean
59- - name : Benchmark with criterion
60- run : |
61- cargo criterion
62- cargo clean
37+ - uses : actions/checkout@v4
38+ - name : Prepare environment
39+ run : |
40+ sudo apt-get update
41+ sudo apt-get install clang
42+ sudo apt-get install libclang1
43+ sudo apt-get install libeccodes-dev
44+ rustup update stable
45+ cargo install cargo-criterion
46+ cargo clean
47+ - name : Check release build
48+ run : |
49+ cargo build --release --features "ndarray"
50+ - name : Check with clippy
51+ run : |
52+ cargo clippy --features "ndarray" -- -D warnings
53+ - name : Check tests
54+ run : |
55+ cargo test --no-default-features
56+ cargo test --features "ndarray"
57+ - name : Benchmark with criterion
58+ run : |
59+ cargo criterion
60+ cargo clean
6361
6462 build-macos :
65-
6663 name : Build on MacOS
6764 needs : pre_job
6865 if : needs.pre_job.outputs.should_skip != 'true'
6966 runs-on : macos-latest
7067
7168 steps :
72- - uses : actions/checkout@v4
73- - name : Prepare environment
74- run : |
75- brew install eccodes
76- rustup update stable
77- cargo install cargo-criterion
78- cargo clean
79- - name : Build with cargo
80- run : |
81- cargo build --release --features "experimental_index, message_ndarray"
82- cargo clean
83- - name : Test with cargo
84- run : |
85- cargo test --no-default-features
86- cargo test --features "message_ndarray"
87- cargo test --features "experimental_index"
88- cargo test --features "experimental_index, message_ndarray"
89- cargo clean
90- - name : Benchmark with criterion
91- run : |
92- cargo criterion
93- cargo clean
69+ - uses : actions/checkout@v4
70+ - name : Prepare environment
71+ run : |
72+ brew install eccodes
73+ rustup update stable
74+ cargo install cargo-criterion
75+ cargo clean
76+ - name : Check release build
77+ run : |
78+ cargo build --release --features --features "ndarray"
79+ - name : Check with clippy
80+ run : |
81+ cargo clippy --features "ndarray" -- -D warnings
82+ - name : Check tests
83+ run : |
84+ cargo test --no-default-features
85+ cargo test --features "ndarray"
86+ - name : Benchmark with criterion
87+ run : |
88+ cargo criterion
89+ cargo clean
0 commit comments