diff --git a/packages/router/.gitignore b/packages/router/.gitignore index 849ddff3b..8cf5c8dd1 100644 --- a/packages/router/.gitignore +++ b/packages/router/.gitignore @@ -1 +1,2 @@ dist/ +static \ No newline at end of file diff --git a/packages/router/Cargo.toml b/packages/router/Cargo.toml index 740867fed..1941c6e67 100644 --- a/packages/router/Cargo.toml +++ b/packages/router/Cargo.toml @@ -36,7 +36,8 @@ web = ["gloo", "web-sys", "wasm-bindgen", "gloo-utils", "js-sys"] [dev-dependencies] dioxus = { path = "../dioxus" } dioxus-ssr = { path = "../ssr" } -criterion = "0.3" +dioxus-router = { path = ".", features = ["ssr"] } +criterion = { verison = "0.5", features = ["async_tokio", "html_reports"] } [[bench]] name = "incremental" diff --git a/packages/router/benches/incremental.rs b/packages/router/benches/incremental.rs index 5706bfd3a..0694e3636 100644 --- a/packages/router/benches/incremental.rs +++ b/packages/router/benches/incremental.rs @@ -6,7 +6,7 @@ use dioxus::prelude::*; use dioxus_router::prelude::*; use criterion::{black_box, criterion_group, criterion_main, Criterion}; -use dioxus_router::incremental::{DefaultRenderer, IncrementalRenderer}; + use dioxus_ssr::Renderer; pub fn criterion_benchmark(c: &mut Criterion) { @@ -31,43 +31,53 @@ pub fn criterion_benchmark(c: &mut Criterion) { .build(); b.iter(|| { - for id in 0..100 { - for id in 0..10 { - renderer - .render(Route::Post { id }, &mut std::io::sink()) - .unwrap(); + tokio::runtime::Runtime::new().unwrap().block_on(async { + for id in 0..1000 { + render_route( + &mut renderer, + Route::Post { id }, + &mut tokio::io::sink(), + |_| {}, + ) + .await + .unwrap(); } - } + }) }) }); c.bench_function("build 1000 routes no memory cache", |b| { - let mut renderer = IncrementalRenderer::builder(DefaultRenderer { - before_body: r#" - -
- - -