|
1 | 1 | ######################
|
2 | 2 | #
|
3 | 3 | # public tasks:
|
4 |
| -# * pr-flow |
5 |
| -# * lint |
6 |
| -# * lint-release |
7 |
| -# * tests |
| 4 | +# * checks-flow |
| 5 | +# * lint |
| 6 | +# * lint-release |
| 7 | +# * format |
| 8 | +# * test-flow |
| 9 | +# * test |
| 10 | +# * doc-test |
| 11 | +# * website-test |
8 | 12 | #
|
| 13 | +# packages/yew also contains `clippy-feature-soundness` to ensure everything is fine |
9 | 14 | # Run `cargo make --list-all-steps` for more details.
|
10 | 15 | #
|
11 | 16 | ######################
|
12 | 17 | [config]
|
13 | 18 | min_version = "0.32.4"
|
| 19 | +skip_core_tasks = true |
14 | 20 | default_to_workspace = false
|
15 | 21 |
|
16 | 22 | [env]
|
17 | 23 | CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
|
18 | 24 | CARGO_MAKE_CLIPPY_ARGS = "-- --deny=warnings"
|
| 25 | +CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = [ |
| 26 | + "examples/*", |
| 27 | + "tools/*", |
| 28 | +] |
19 | 29 |
|
20 | 30 | [config.modify_core_tasks]
|
21 | 31 | private = true
|
22 | 32 | namespace = "core"
|
23 | 33 |
|
24 |
| -[tasks.pr-flow] |
25 |
| -toolchain = "stable" |
26 |
| -category = "Checks" |
27 |
| -description = "Lint and test" |
28 |
| -run_task = { name = ["lint", "lint-release", "tests"], fork = true } |
| 34 | +# checks |
29 | 35 |
|
30 | 36 | [tasks.lint]
|
31 | 37 | category = "Checks"
|
32 |
| -description = "Check formatting and run Clippy" |
33 |
| -toolchain = "nightly" |
34 |
| -run_task = { name = ["lint-flow"], fork = true } |
35 |
| - |
36 |
| -[tasks.tests] |
37 |
| -category = "Testing" |
38 |
| -description = "Run all tests" |
39 |
| -dependencies = ["tests-setup"] |
40 |
| -env = { CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = ["**/examples/*", "**/packages/changelog"] } |
41 |
| -run_task = { name = ["test-flow", "doc-test-flow", "ssr-test", "website-test"], fork = true } |
42 |
| - |
43 |
| -[tasks.lint-flow] |
44 |
| -private = true |
45 |
| -workspace = true |
46 |
| -dependencies = ["core::check-format-flow", "core::clippy-flow"] |
| 38 | +description = "Runs clippy" |
| 39 | +command = "cargo" |
| 40 | +args = ["clippy", "--", "--deny=warnings"] |
47 | 41 |
|
48 | 42 | # Needed, because we have some code differences between debug and release builds
|
49 | 43 | [tasks.lint-release]
|
50 | 44 | category = "Checks"
|
51 |
| -workspace = true |
52 | 45 | command = "cargo"
|
53 | 46 | args = ["clippy", "--all-targets", "--release", "--", "--deny=warnings"]
|
54 | 47 |
|
55 |
| -[tasks.tests-setup] |
56 |
| -private = true |
57 |
| -script_runner = "@duckscript" |
58 |
| -script = [ |
59 |
| - """ |
60 |
| - test_flags = array --headless --firefox |
61 |
| - yew_test_features = set wasm_test |
62 |
| -
|
63 |
| - yew_test_flags = array_join ${test_flags} " " |
64 |
| - echo "running tests with flags: ${yew_test_flags} and features: ${yew_test_features}" |
65 |
| -
|
66 |
| - set_env YEW_TEST_FLAGS ${yew_test_flags} |
67 |
| - set_env YEW_TEST_FEATURES ${yew_test_features} |
68 |
| - """, |
69 |
| -] |
| 48 | +[tasks.format] |
| 49 | +category = "Checks" |
| 50 | +toolchain = "nightly" |
| 51 | +env = { CARGO_MAKE_RUST_CHANNEL = "nightly" } |
70 | 52 |
|
71 |
| -[tasks.test-flow] |
72 |
| -private = true |
73 |
| -workspace = true |
74 |
| -dependencies = ["test"] |
| 53 | + |
| 54 | +[tasks.checks-flow] |
| 55 | +category = "Checks" |
| 56 | +description = "Runs clippy in debug and release mode and format all the code" |
| 57 | +run_task = { name = ["lint", "lint-release", "format"], fork = true } |
| 58 | + |
| 59 | +# Tests |
75 | 60 |
|
76 | 61 | [tasks.test]
|
77 |
| -private = true |
78 | 62 | command = "cargo"
|
79 | 63 | args = ["test", "--all-targets"]
|
80 |
| - |
81 |
| -[tasks.doc-test-flow] |
82 |
| -private = true |
83 | 64 | workspace = true
|
84 |
| -dependencies = ["doc-test"] |
85 | 65 |
|
86 | 66 | [tasks.doc-test]
|
87 |
| -private = true |
88 | 67 | command = "cargo"
|
89 |
| -args = ["test", "--doc"] |
| 68 | +args = ["test", "--doc", "--all-features"] |
| 69 | +workspace = true |
90 | 70 |
|
91 | 71 | [tasks.website-test]
|
92 | 72 | command = "cargo"
|
93 | 73 | args = ["test", "-p", "website-test"]
|
94 | 74 |
|
| 75 | +[tasks.test-flow] |
| 76 | +category = "Testing" |
| 77 | +description = "Run all tests" |
| 78 | +run_task = { name = ["test", "doc-test", "website-test"], fork = true, parallel = true } |
| 79 | + |
| 80 | +# misc |
| 81 | + |
95 | 82 | [tasks.generate-change-log]
|
96 | 83 | category = "Maintainer processes"
|
97 | 84 | toolchain = "stable"
|
98 | 85 | command = "cargo"
|
99 |
| -args = ["run","-p","changelog", "--release", "${@}"] |
| 86 | +args = ["run", "-p", "changelog", "--release", "${@}"] |
100 | 87 |
|
101 |
| -[tasks.ssr-test] |
102 |
| -env = { CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS = ["**/packages/yew"] } |
103 |
| -private = true |
104 |
| -workspace = true |
| 88 | +[tasks.default] |
| 89 | +#run_task = { name = ["checks-flow", "test-flow"], fork = true } |
| 90 | +dependencies = ["checks-flow", "test-flow"] |
0 commit comments