redirects, middleware, Transport, set/capture error status (#4751)

* wip: redirect

* redirect example

* fix file upload not in a form

* wip

* deny missing cfgs

* wip: add router fallback but it's not working

* fix suspense bug after rebuilds that queued work

* more cleanup

* add test for error codes

* add helpful comment

* bring back middleware annotation

* fix cfg

* add server feature

* fix doctest

* just disable liveview test for now

* fix liveview

* dont send init

* cache more playwright!

* add more pkgs to cache
This commit is contained in:
Jonathan Kelley authored and GitHub committed 2025-10-10 21:43:57 -07:00
1 parent 8a81475ba8
commit 9243ef4128
35 files changed
+935 -800

No files matched your search

+3 -1
View File
@@ -640,7 +640,7 @@ impl VirtualDom {
#[instrument(skip(self), level = "trace", name = "VirtualDom::wait_for_suspense")]
pub async fn wait_for_suspense(&mut self) {
loop {
if !self.suspended_tasks_remaining() {
if !self.suspended_tasks_remaining() && !self.has_dirty_scopes() {
break;
}
@@ -736,9 +736,11 @@ impl VirtualDom {
}
}
}
// Queue any new events
self.queue_events();
work_done += 1;
// Once we have polled a few tasks, we manually yield to the scheduler to give it a chance to run other pending work
if work_done > 32 {
yield_now().await;