|
8 | 8 | CARGO_NET_RETRY: 10 |
9 | 9 | RUST_BACKTRACE: short |
10 | 10 | RUSTUP_MAX_RETRIES: 10 |
| 11 | + # It's really `--all-features`, but not adding `persistence`, we expect the |
| 12 | + # persistence feature to go away again in the future (but if we add it |
| 13 | + # unconditionally it changes the code that's run significantly) |
| 14 | + ALMOST_ALL_FEATURES: --features "with-serde with-csv with-nexmark" |
11 | 15 |
|
12 | 16 | jobs: |
13 | 17 | tests: |
|
82 | 86 | uses: actions-rs/cargo@v1 |
83 | 87 | with: |
84 | 88 | command: test |
85 | | - args: --all-features --target ${{ matrix.target }} |
| 89 | + args: ${{ env.ALMOST_ALL_FEATURES }} --target ${{ matrix.target }} |
86 | 90 |
|
87 | 91 | # miri: |
88 | 92 | # name: Miri |
@@ -116,7 +120,7 @@ jobs: |
116 | 120 | # MIRIFLAGS: "-Zmiri-tag-raw-pointers -Zmiri-disable-isolation -Zmiri-preemption-rate=0" |
117 | 121 | # with: |
118 | 122 | # command: miri |
119 | | - # args: test --all-features |
| 123 | + # args: test ${{ env.ALMOST_ALL_FEATURES }} |
120 | 124 |
|
121 | 125 | test-sanitizers: |
122 | 126 | name: Sanitizer Tests |
@@ -181,13 +185,18 @@ jobs: |
181 | 185 | RUSTDOCFLAGS: "-Z sanitizer=${{ matrix.sanitizer }}" |
182 | 186 | RUSTFLAGS: "-Z sanitizer=${{ matrix.sanitizer }}" |
183 | 187 | ASAN_OPTIONS: detect_stack_use_after_return=1,detect_leaks=1 |
| 188 | + # Ensure the C++ code (rocksdb etc.) also gets compiled with the correct sanitizer arguments |
| 189 | + CC: "clang" |
| 190 | + CCFLAGS: "-fsanitize=${{ matrix.sanitizer }}" |
| 191 | + CXX: "clang++" |
| 192 | + CXXFLAGS: "-fsanitize=${{ matrix.sanitizer }}" |
| 193 | + ASAN_SYMBOLIZER_PATH: "/usr/bin/llvm-symbolizer-14" |
184 | 194 | # Backtraces sometimes mess with sanitizers |
185 | 195 | RUST_BACKTRACE: 0 |
186 | 196 | with: |
187 | 197 | command: test |
188 | | - # leak sanitizer is crashing on exchange tests and is very slow on |
189 | | - # many of the proptests. |
190 | | - args: --all-features --target ${{ matrix.target }} -Z build-std -- --skip 'exchange' --skip 'proptest' |
| 198 | + # leak sanitizer is crashing on exchange tests. |
| 199 | + args: ${{ env.ALMOST_ALL_FEATURES }} --target ${{ matrix.target }} -Z build-std -- --skip 'exchange' --skip 'proptest' --skip 'persistent' |
191 | 200 |
|
192 | 201 | clippy: |
193 | 202 | name: Clippy |
|
0 commit comments