14
14
- trying
15
15
16
16
env :
17
- GDEXT_FEATURES : ' '
18
- # GDEXT_FEATURES: '--features crate/feature'
19
- # GDEXT_CRATE_ARGS: '-p godot-codegen -p godot-ffi -p godot-core -p godot-macros -p godot'
20
-
21
17
# LSan options: https://github.com/google/sanitizers/wiki/AddressSanitizerLeakSanitizer
22
18
# * report_objects: list individual leaked objects when running LeakSanitizer
23
19
LSAN_OPTIONS : report_objects=1
60
56
61
57
- name : " Check clippy"
62
58
run : |
63
- cargo clippy --all-targets $GDEXT_FEATURES $ {{ matrix.rust-extra-args }} -- \
59
+ cargo clippy --all-targets ${{ matrix.rust-extra-args }} -- \
64
60
-D clippy::suspicious -D clippy::style -D clippy::complexity -D clippy::perf \
65
61
-D clippy::dbg_macro -D clippy::todo -D clippy::unimplemented -D warnings
66
62
71
67
strategy :
72
68
fail-fast : false # cancel all jobs as soon as one fails?
73
69
matrix :
70
+ name : ["macos", "windows", "linux"]
71
+ feature : ["default", "threads"]
74
72
# Order this way because macOS typically has the longest duration, followed by Windows, so it benefits total workflow execution time.
75
73
# Additionally, the 'linux (msrv *)' special case will then be listed next to the other 'linux' jobs.
76
74
# Note: Windows uses '--target x86_64-pc-windows-msvc' by default as Cargo argument.
@@ -111,10 +109,10 @@ jobs:
111
109
run : cargo +nightly update -Z minimal-versions
112
110
113
111
- name : " Compile tests"
114
- run : cargo test $GDEXT_FEATURES --no-run ${{ matrix.rust-extra-args }}
112
+ run : cargo test --features "${{ matrix.feature }}" --no-run ${{ matrix.rust-extra-args }}
115
113
116
114
- name : " Test"
117
- run : cargo test $GDEXT_FEATURES ${{ matrix.rust-extra-args }}
115
+ run : cargo test --features "${{ matrix.feature }}" ${{ matrix.rust-extra-args }}
118
116
119
117
120
118
godot-itest :
@@ -125,6 +123,8 @@ jobs:
125
123
strategy :
126
124
fail-fast : false # cancel all jobs as soon as one fails?
127
125
matrix :
126
+ name : ["macos", "windows", "linux"]
127
+ feature : ["default", "threads"]
128
128
# Order this way because macOS typically has the longest duration, followed by Windows, so it benefits total workflow execution time.
129
129
# Additionally, the 'linux (msrv *)' special case will then be listed next to the other 'linux' jobs.
130
130
# Note: Windows uses '--target x86_64-pc-windows-msvc' by default as Cargo argument.
@@ -206,7 +206,7 @@ jobs:
206
206
artifact-name : godot-${{ matrix.artifact-name || matrix.name }}
207
207
godot-binary : ${{ matrix.godot-binary }}
208
208
godot-args : ${{ matrix.godot-args }}
209
- rust-extra-args : ${{ matrix.rust-extra-args }}
209
+ rust-extra-args : --features "${{ matrix.feature }}" ${{ matrix.rust-extra-args }}
210
210
rust-toolchain : ${{ matrix.rust-toolchain || 'stable' }}
211
211
rust-env-rustflags : ${{ matrix.rust-env-rustflags }}
212
212
with-llvm : ${{ matrix.with-llvm }}
0 commit comments