-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathjustfile
101 lines (84 loc) · 2.95 KB
/
justfile
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
# List the just recipe list
list:
just --list
# Bake the README.md from the template
readme:
cargo readme > README.md
format:
cargo fmt --all
build:
cargo build --all
clippy:
cargo clippy --all
test:
cargo test --all --features all
example NAME="setup":
cargo run --example {{NAME}}
demo NAME="todo-app":
cd ./demos/{{NAME}} && cargo run
guide NAME:
cd ./site/rust/guide_{{NAME}} && cargo run
# Mandatory checks to run before pushing changes to repository
checks:
just format
just build
just clippy
just test
just readme
# Print the documentation coverage for a crate in the workspace
doc-coverage crate="raui-core":
cargo +nightly rustdoc -p {{crate}} -- -Z unstable-options --show-coverage
clean:
find . -name target -type d -exec rm -r {} +
just remove-lockfiles
remove-lockfiles:
find . -name Cargo.lock -type f -exec rm {} +
list-outdated:
cargo outdated -R -w
# Run the Rust doctests in the website docs
website-doc-tests:
cargo build --features all -p raui --target-dir target/doctests
@set -e; \
for file in $(find site/content/ -name '*.md'); do \
echo "Testing: $file"; \
rustdoc \
--edition 2018 \
--extern raui \
--crate-name docs-test \
$file \
--test \
-L target/doctests/debug/deps; \
done
website-live-dev:
cd site && zola serve
update:
cargo update --manifest-path ./raui-derive/Cargo.toml --aggressive
cargo update --manifest-path ./raui-core/Cargo.toml --aggressive
cargo update --manifest-path ./raui-material/Cargo.toml --aggressive
cargo update --manifest-path ./raui-retained/Cargo.toml --aggressive
cargo update --manifest-path ./raui-immediate/Cargo.toml --aggressive
cargo update --manifest-path ./raui-immediate-widgets/Cargo.toml --aggressive
cargo update --manifest-path ./raui-json-renderer/Cargo.toml --aggressive
cargo update --manifest-path ./raui-tesselate-renderer/Cargo.toml --aggressive
cargo update --manifest-path ./raui-app/Cargo.toml --aggressive
cargo update --manifest-path ./Cargo.toml --aggressive
publish:
cargo publish --no-verify --manifest-path ./raui-derive/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-core/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-material/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-retained/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-immediate/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-immediate-widgets/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-json-renderer/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-tesselate-renderer/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./raui-app/Cargo.toml
sleep 1
cargo publish --no-verify --manifest-path ./Cargo.toml