@@ -2,30 +2,40 @@ language: rust
2
2
dist : xenial
3
3
cache :
4
4
cargo : false
5
- os :
6
- - linux
7
- - osx
8
- - windows
9
5
rust :
10
6
- nightly
11
7
install :
12
8
- rustup component add rustfmt
13
9
# Required for Racer autoconfiguration
14
10
- rustup component add rust-src
15
11
- rustup component add rust-analysis
12
+ matrix :
13
+ fast_finish : true
14
+ include :
15
+ - os : linux
16
+ - os : osx
17
+ - os : windows
18
+ - env : CLIPPY=true
19
+ if : commit_message =~ /(?i:^update.*\b(clippy)\b)/
16
20
script :
17
- # Since the rls-* subcrates use crates.io-based dependencies of themselves it
18
- # makes sense to test them in isolation rather than just RLS itself
19
- - (cd rls-analysis && cargo test -v && cargo fmt -- --check)
20
- - (cd rls-blacklist && cargo test -v && cargo fmt -- --check)
21
- - (cd rls-data && cargo test -v && cargo fmt -- --check)
22
- - (cd rls-rustc && cargo test -v && cargo fmt -- --check)
23
- - (cd rls-span && cargo test -v && cargo fmt -- --check)
24
- - (cd rls-vfs && cargo test -v && cargo fmt -- --check)
25
- - cargo fmt -- --check
26
- - cargo build -v
27
- - cargo test -v
28
- - cargo test test_tooltip_std -- --ignored
21
+ - |
22
+ if [ ${CLIPPY} = true ]; then
23
+ cargo build -v --features "clippy"
24
+ cargo test -v --features "clippy"
25
+ else
26
+ # Since the rls-* subcrates use crates.io-based dependencies of themselves it
27
+ # makes sense to test them in isolation rather than just RLS itself
28
+ (cd rls-analysis && cargo test -v && cargo fmt -- --check)
29
+ (cd rls-blacklist && cargo test -v && cargo fmt -- --check)
30
+ (cd rls-data && cargo test -v && cargo fmt -- --check)
31
+ (cd rls-rustc && cargo test -v && cargo fmt -- --check)
32
+ (cd rls-span && cargo test -v && cargo fmt -- --check)
33
+ (cd rls-vfs && cargo test -v && cargo fmt -- --check)
34
+ cargo fmt -- --check
35
+ cargo build -v
36
+ cargo test -v
37
+ cargo test test_tooltip_std -- --ignored
38
+ fi
29
39
30
40
env :
31
41
global :
0 commit comments