-
Notifications
You must be signed in to change notification settings - Fork 0
/
Taskfile.yml
126 lines (108 loc) · 3.03 KB
/
Taskfile.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
version: "3"
env:
TARGET: aarch64-apple-darwin
tasks:
default:
cmds:
- task: check-tests
- task: check-loom
- task: clippy-tests
- task: test-address-sanitizer
- task: test-loom
doc:
cmds:
- cargo +nightly doc -p stack-queue --features diesel-associations --features redis-args --open
env:
RUSTDOCFLAGS: --cfg docsrs
bench:
env:
RUSTFLAGS: -C target-cpu=native
cmds:
- cargo bench --profile release -p bencher
bench-oneshot:
env:
RUSTFLAGS: -C target-cpu=native
FILTER: Task/(?:receive|Tokio::sync::oneshot)
cmds:
- cargo bench --profile release -p bencher -- $FILTER
bench-slim:
env:
RUSTFLAGS: -C target-cpu=native
FILTER: Batching/(?:crossbeam|TaskQueue|BackgroundQueue)/16
cmds:
- cargo bench --profile release -p bencher -- $FILTER
generate-bench-table:
env:
RUSTFLAGS: -C target-cpu=native
FILTER: Batching/(?:crossbeam|flume|TaskQueue|tokio::mpsc)/16
cmds:
- cargo criterion --message-format=json -p bencher -- $FILTER | criterion-table
flamegraph:
env:
RUSTFLAGS: -C target-cpu=native
CARGO_PROFILE_BENCH_DEBUG: true
cmds:
- cargo flamegraph --bench benchmarks --root -p bencher -- stack_queue --bench
test-miri:
cmds:
- cargo miri test -Z build-std -p stack-queue --target $TARGET -- --nocapture
sources:
- crates/stack-queue/**/*.rs
env:
MIRIFLAGS: -Zmiri-backtrace=full
clippy-tests:
cmds:
- cargo clippy -p stack-queue --tests
sources:
- crates/stack-queue/**/*.rs
check:
cmds:
- cargo check -p stack-queue --features redis-args --features diesel-associations
sources:
- crates/stack-queue/**/*.rs
check-tests:
cmds:
- cargo check -p stack-queue --tests
sources:
- crates/stack-queue/**/*.rs
check-loom:
cmds:
- cargo check -p stack-queue --tests
sources:
- crates/stack-queue/**/*.rs
env:
RUSTFLAGS: --cfg loom
test-loom:
cmds:
- cargo test -Z build-std -p stack-queue --target $TARGET -- --nocapture
sources:
- crates/stack-queue/**/*.rs
env:
RUSTFLAGS: --cfg loom
LOOM_MAX_PREEMPTIONS: 10
test-sanitizer:
cmds:
- task: test-address-sanitizer
- task: test-thread-sanitizer
- task: test-leak-sanitizer
test-address-sanitizer:
cmds:
- cargo test -Z build-std -p stack-queue --target $TARGET -- --nocapture
sources:
- crates/stack-queue/**/*.rs
env:
RUSTFLAGS: -C target-cpu=native -Z sanitizer=address
test-thread-sanitizer:
cmds:
- cargo test -Z build-std -p stack-queue --target $TARGET -- --nocapture
sources:
- crates/stack-queue/**/*.rs
env:
RUSTFLAGS: -C target-cpu=native -Z sanitizer=thread
test-leak-sanitizer:
cmds:
- cargo test -Z build-std -p stack-queue --target $TARGET -- --nocapture
sources:
- crates/stack-queue/**/*.rs
env:
RUSTFLAGS: -C target-cpu=native -Z sanitizer=leak