aboutsummaryrefslogtreecommitdiff
path: root/goodfile
diff options
context:
space:
mode:
Diffstat (limited to 'goodfile')
-rw-r--r--goodfile35
1 files changed, 35 insertions, 0 deletions
diff --git a/goodfile b/goodfile
new file mode 100644
index 0000000..92ebdf0
--- /dev/null
+++ b/goodfile
@@ -0,0 +1,35 @@
+Build.dependencies({"git", "make", "rustc", "cargo", "rustup"})
+
+Step.start("crate")
+Step.push("build")
+Build.run({"cargo", "build"})
+-- and now that some code is conditional on target arch, at least try to build
+-- for other architectures even if we might not be able to run on them.
+Build.run({"rustup", "target", "add", "wasm32-wasi"})
+Build.run({"cargo", "build", "--no-default-features", "--target", "wasm32-wasi"})
+
+Step.advance("test")
+-- TODO: set `-D warnings` here and below...
+Build.run({"cargo", "test"}, {name="test default features"})
+
+-- `cargo test` ends up running doc tests. great! but yaxpeax-arch's docs reference items in std only.
+-- so for other feature combinations, skip doc tests. do this by passing `--tests` explicitly,
+-- which disables the automagic "run everything" settings.
+Build.run({"cargo", "test", "--no-default-features", "--tests"}, {name="test no features"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std"}, {name="test std only"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "colors"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "address-parse"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "alloc"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "color-new"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,address-parse"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,address-parse,alloc"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde,colors,address-parse"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "use-serde,colors,address-parse,alloc"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors,address-parse"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,colors,address-parse,alloc"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde,colors"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "std,use-serde,colors,alloc"}, {name="test feature combinations"})
+Build.run({"cargo", "test", "--no-default-features", "--tests", "--features", "color-new,alloc"}, {name="test feature combinations"})