Fixed and updated presubmit checks.
Added rasterizer to testing and checking and removed rive-rs from
clippy checks. Also fixed a lot of clippy errors.
Change-Id: I1443a8156382a03acd03f78e56f7623008b4e079
Reviewed-on: https://fuchsia-review.googlesource.com/c/forma/+/740102
Reviewed-by: Pierre Labatut <plabatut@google.com>
diff --git a/Cargo.toml b/Cargo.toml
index 92c8d95..d2a0083 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -11,7 +11,6 @@
"gpu/conveyor-sort",
"gpu/painter",
"gpu/renderer",
- "rive-rs",
"surpass",
]
members = [
diff --git a/demo/src/demos/svg.rs b/demo/src/demos/svg.rs
index d6eda9c..df4807e 100644
--- a/demo/src/demos/svg.rs
+++ b/demo/src/demos/svg.rs
@@ -125,7 +125,7 @@
attrs.get("style").and_then(|style| {
StyleParser::from(style.as_ref()).find_map(|pair| {
pair.ok().and_then(|pair| {
- (pair.0 == "mix-blend-mode").then(|| match pair.1 {
+ (pair.0 == "mix-blend-mode").then_some(match pair.1 {
"normal" => BlendMode::Over,
"multiply" => BlendMode::Multiply,
"screen" => BlendMode::Screen,
diff --git a/e2e_tests/tests/test_env.rs b/e2e_tests/tests/test_env.rs
index 0c03ce1..b31fbfd 100644
--- a/e2e_tests/tests/test_env.rs
+++ b/e2e_tests/tests/test_env.rs
@@ -299,9 +299,9 @@
let gpu_expected = expected_image_path(test_name, RendererType::Gpu);
report.add_result(
test_name,
- cpu_expected.exists().then(|| cpu_expected),
+ cpu_expected.exists().then_some(cpu_expected),
cpu_actual,
- gpu_expected.exists().then(|| gpu_expected),
+ gpu_expected.exists().then_some(gpu_expected),
gpu_actual,
tolerance,
status,
diff --git a/gpu/rasterizer/src/lib.rs b/gpu/rasterizer/src/lib.rs
index 95046ad..ce35ec5 100644
--- a/gpu/rasterizer/src/lib.rs
+++ b/gpu/rasterizer/src/lib.rs
@@ -200,11 +200,18 @@
let context = crate::init(&device);
let segments_padded_count = lines.segments_count();
+ let size = (segments_padded_count * std::mem::size_of::<u64>()) as wgpu::BufferAddress;
let segments_buffer = device.create_buffer(&wgpu::BufferDescriptor {
label: None,
- size: (segments_padded_count * std::mem::size_of::<u64>()) as wgpu::BufferAddress,
- usage: wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::MAP_READ,
+ size,
+ usage: wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_SRC,
+ mapped_at_creation: false,
+ });
+ let staging_buffer = device.create_buffer(&wgpu::BufferDescriptor {
+ label: None,
+ size,
+ usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST,
mapped_at_creation: false,
});
@@ -218,10 +225,13 @@
None,
);
+ encoder.copy_buffer_to_buffer(&segments_buffer, 0, &staging_buffer, 0, size);
+
queue.submit(Some(encoder.finish()));
device.poll(wgpu::Maintain::Wait);
+
let mut actual_segments = {
- let buffer_slice = segments_buffer.slice(..);
+ let buffer_slice = staging_buffer.slice(..);
buffer_slice.map_async(wgpu::MapMode::Read, |_| ());
device.poll(wgpu::Maintain::Wait);
@@ -233,7 +243,8 @@
assert!(after.is_empty());
actual_segments.to_vec()
};
- segments_buffer.unmap();
+
+ staging_buffer.unmap();
actual_segments.sort();
return actual_segments;
diff --git a/presubmit.sh b/presubmit.sh
index e1497f0..8a767a8 100755
--- a/presubmit.sh
+++ b/presubmit.sh
@@ -13,6 +13,8 @@
echo "Checking pristine..."
RUSTFLAGS="-D warnings" cargo check -q -p pristine
echo "Checking renderer..."
+RUSTFLAGS="-D warnings" cargo check -q -p rasterizer
+echo "Checking rasterizer..."
RUSTFLAGS="-D warnings" cargo check -q -p renderer
echo "Checking web..."
(
@@ -23,6 +25,8 @@
cargo test -q -p conveyor-sort
echo "Testing painter..."
cargo test -q -p painter
+echo "Testing rasterizer..."
+cargo test -q -p rasterizer
echo "Testing renderer..."
cargo test -q -p renderer
echo "Checking formatting..."
@@ -32,6 +36,6 @@
echo "Running forma doc tests..."
cargo test -q --doc -p forma
echo "Running clippy..."
-cargo clippy -q --all-targets --all-features -- -D warnings
+cargo clippy -q --all-targets --all-features --no-deps -- -D warnings
echo
echo "Pre-submit passed successfully."